Currently we can have this package issue actions post issue/renew.
Is there a way to have this issue actions before the cert is issued/renewed?
Not currently. What did you have in mind?
The acme.sh script does has the pre-hook argument. In my case I have to use DNS-Manual and it would be helpful to be able to stop HAProxy, start nginx on port 80, renew my cert, stop nginx, then start HAProxy. It would also give more flexible options with DNS-Manual.
HAProxy wouldn't have anything to do with DNS-Manual. Maybe you mean standalone mode? Nothing else would conflict with HAProxy.
If you want to use ACME and HAProxy there are much better ways to integrate them, like https://forum.netgate.com/post/677786 -- that uses webroot instead of standalone and requires no special actions once it's setup.