[ https://issues.apache.org/jira/browse/CASSANDRA-13487?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Stefan Podkowinski updated CASSANDRA-13487: ------------------------------------------- Fix Version/s: 4.x 3.11.x 3.0.x 2.2.x Status: Patch Available (was: Open) I've now added some script-foo to detect the target version for the build, based on the branch or tag that is used to trigger the build. Building tags will now create packages with regular release versions. Building branches will create snapshot releases, which should work fine when triggered periodically by Jenkins. > Generate snapshot packages through Jenkins > ------------------------------------------ > > Key: CASSANDRA-13487 > URL: https://issues.apache.org/jira/browse/CASSANDRA-13487 > Project: Cassandra > Issue Type: New Feature > Components: Build > Reporter: Stefan Podkowinski > Assignee: Stefan Podkowinski > Fix For: 2.2.x, 3.0.x, 3.11.x, 4.x > > Attachments: 13487.patch > > > Creating packages through the new docker based build scripts now work pretty > much independent from any local environment, as long as docker is available, > e.g. also on Jenkins. Having daily snapshots available for deb/rpm artifacts > would enable us to provide users dev-releases for testing and validating > fixes. > I've created a branch for the Jenkins integration, which can be found here: > https://github.com/spodkowinski/cassandra-builds/tree/jenkins_debrpm > The major issue I'm currently struggling with is the handling of the actual > version value. We need to find a way to have Jenkins recognize the correct > version for the branch being build. Also we must create $version-SNAPSHOT > packages, as builds are not official releases and we should not have any > packages for versions that aren't published yet. > The Debian build process will use the version defined in > {{debian/changelog}}. Adding a -SNAPSHOT suffix for the version should work, > but this has to be handled manually and care must be taken to change the > value back again for a regular release. > With RPMs, the version must be set for {{cassandra.spec}}, which is currently > done by running {noformat}rpmbuild --define="version ${CASSANDRA_VERSION}" > -ba ./redhat/cassandra.spec{noformat}, where the version is passed as a > parameter by {{build-scripts/cassandra-rpm-packaging.sh}}. Maybe we could > grep the version from build.xml here? > So I wonder if there any way we can keep track of the version in a single > place, such as build.xml or CHANGES. Afterwards we also need to enable a > SNAPSHOT mode, maybe by setting a Jenkins environment value. > /cc [~mshuler] -- This message was sent by Atlassian JIRA (v6.3.15#6346) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org