How to initilize Postgres Pool in lazy_static

I've seen this example but it doesn't actually work.
https://stackoverflow.com/questions/63150183/how-do-i-keep-a-global-postgres-connection

I've tried with bb8 and r2d2 and nothing seems to work. bb8 requires initializing the Pool with async which means it won't work with lazy_static. I'm leaving this question vague on details because I would like suggestions on the best way to do this overall.

You can use futures::block_on() to run async code in a non-async context.

Using block_on in a lazy_static is generally a bad idea because the initialization is going to run inside the async context even though the function is sync. How about using the tokio::sync::OnceCell type instead of lazy_static?