How do base commits get released?

Ryan Schmidt ryandesign at macports.org
Sat Nov 3 05:52:55 UTC 2018



On Nov 2, 2018, at 17:06, Joshua Root wrote:

> On 2018-11-3 02:09 , George Plymale II wrote:
>> Thanks for explaining all that, Ryan! I really appreciate having some
>> better insight into the release process. Makes a lot more sense now and
>> I see that it's more work than I expected.
>> 
>> Ryan Schmidt writes:
>> 
>>> It would be good if we could make more frequent releases to get fixes out there, even if they're smaller or not super critical. One reason we don't do this is because our release process involves a great deal of manual labor. I hope to automate more of the process using our buildbot, but we're not there yet.
>> 
>> I'm curious; what parts could be easily automated? The whole release
>> process sounds a bit tedious as it is currently. It'd be nice to know
>> what could possibly be improved by members of the community.
> 
> It really isn't that manual or tedious. Most of the time I spend
> building a release is waiting for 10 VMs to load up and then run 'port
> pkg MacPorts'. One script syncs, builds, and copies the pkg to a central
> location with the correct name.

Right: You've automated it to some extent on your own infrastructure, but if you were for some reason unavailable to do a release and someone else had to do it, it would be more tedious. This automation could be moved into the buildbot where we already have such VMs running. We already automatically build each commit of base for testing purposes. We could extend that and also build an installer of each commit and store it on a staging server where we or anyone could test it. Then once we've decided we have all the commits we want in a release, the release manager could just download the package from the staging server, sign it, and release it.


> The manual parts are ensuring that we have all the commits we want
> cherry-picked,

Yes, that we can't automate.


> tagging the release, signing the packages, and uploading
> the release files to GitHub.

We could automate this; many projects do.


> There are also release-adjacent tasks like news posts.

We could automate this too.



More information about the macports-dev mailing list