We need to separate master (release) from develop (snapshot), both in our builds, and for updates. We don't have to use the "snapshot" terminology (though it is built-in if we want to).
Right now our snapshots are all at version 1.0.0, vs. 1.0.0-SNAPSHOT or 1.0.0.@build.number@. I almost added @build.number@ to the artifact version, but we'd eat up a lot of space with the JRE builds. If we use the built-in snapshot stuff we can automatically clean out any previous snapshots, otherwise we'd need to handle that ourselves so we don't use space like crazy.
I kind of like the "snapshot" nomenclature, as it's clear what it is, vs. just using a build qualifier, but there are pluses and minuses to every route.
The stable versions will be hosted in Amazon s3. Via downloads.ortussolutions.com/ortussolutions/commandbox
Are you still planning on having the box-repo.json in the S3 bucket, or will CommandBox still need to look at the json file on the integration server to get the last stable version before hitting S3?
Mirrored. Basically, S3 will always hold stable versions.
How do you plan on automating that? Will we write a process that reads the staging box-repo.json and pushes only the stable versions?
Honestly is there really a detriment to also serving the bleeding edge from S3 as well?