you need to use the Project ServerInterface (PSI) to programaticly to Check in projects and then Publish them.
The downside is the check in. This may catch some PMs with projects off line for work in progress in some trouble.
The PSI interface can be done by any of the usual suspects, PCubed (my company) included.
At the risk of losing business I generally think this process should be a functional requirement of the PMs job. But then I dont really know your need.