We've needed new roofs for years. We got bids, but by the time that the HOA could meet, the bids already were too old. We voted to charge everyone based off the cost of the bids + 10%. We had owners that didn't pay or owners that paid too late. Our bids expired again and then we had some safety issues that we had to handle. So now we didn't have enough money for the roofs again, but likewise people wanted other stuff done.
It took nearly 5 years for us to finally get new roofs. Covid happened and prices went up again, but thankfully we had enough to cover stuff. Actually, only some of the roofs are currently done. 6 buildings: 3 done/3 not. <50 units total. I cannot imagine how much more complicated it would be with a bunch of units.