...
This is done using maven, on an appropriate windows machine in . You need to run the idp-msi fileand the idp-bom projects only.
Code Block |
---|
mvn clean install -frf :idp-msi |
Note |
---|
Make sure that the bom project runs - this will run the “m2 enforcer”. |
Sign and deploy the msi file
...
Clone and checkout the correct branch:
Code Block git clone -b 12-windows git@git.shibboleth.net:java-idp-jetty-base cd java-idp-jetty-base
Merge (not rebase) forward to the latest changes on the
12
branchCode Block git merge 12
Update the pom to reflect the jettty and procrun versions
Code Block |
---|
<version>12.0.98.0-SNAPSHOT</version> <properties> <jetty.version>12.0.9<8</jetty.version> <procrun.version>1.3.4</procrun.version> ... |
Review the
12
version ofsrc\main\resourcs\jetty-base\start.d\idp.ini
and make any required changes tosrc\main\resourcs\jetty-base\start.d.dist\idp-system.ini
Commit the changes.
Building the Jetty Installer
First set the revision (4th digit) of the installer version in the property file. This is usually 0, but if another version of the installer for the same Jetty version is required it should be adjusted:
...
Set revision to zero (f needed)
Code Block <jetty.revision>0</jetty.revision>
Checkout and Test Build
Code Block |
---|
cd %GIT_REPO%
git clone git@git.shibboleth.net:java-idp-jetty-base
cd java-idp-jetty-base
git checkout -b 12-windows origin/12-windows
mvn clean install -Dmaven.repo.local=%MAVEN_REPO% |
Smoke Test the Installer
...
test build and smoke test
Commit the changes.
Building the Jetty Installer
Set up tag point (and tag if possible)
Edit pom.xml to remove SNAPSHOT from versions.
Tag :(this may be deferred if running on a GPG deficient build machine)
Code Block |
---|
SET JETTY_TAG=12.0.8.30-WINDOWS git add -A git commit -m "Update files to be tagged for release" git tag -s -m "Tag %JETTY_TAG%" %JETTY_TAG% |
...
Code Block |
---|
<version>12.0.8.3-SNAPSHOT</version> <jetty.version>12.0.8</jetty.version> <jetty.revision>3<revision>0</jetty.revision> |
Commit
Code Block |
---|
git add -A git commit -m "Bump version after release" |
Build the release version
Code Block |
---|
git checkout %JETTY_TAG% (or HEAD~1)
mvn -Dmaven.repo.local=%MAVEN_REPO% clean install |
Test the released version
Commit the Work
(this assumed that the build was done on a GPG-deficient machine)
Push the work done above (on the build machine)
Move msi to GPG machine
Checkout to the build point and tag
Code Block git pull 12-windows git checkout 12-windows~1 # CHECK at correct point git tag -s -m "Tag %JETTY_TAG%" %JETTY_TAG%
Clean git reposuitory and move the test msi file into target
Push to nexus using the
gpg:sign-and-deploy-file
plugin:
Code Block |
---|
ssh -L 1581:127.0.0.1:1581 -N build.shibboleth.net -f REM or use Putty set JETTY_VERSION=12.0.8 set JETTY_REVISION=30 set VERSION=%JETTY_VERSION%.%JETTY_REVISION% set NEXUS_URL=http://127.0.0.1:1581/nexus/content/repositories/releases set REPO_ID=release SET CL1=mvn -Dmaven.repo.local=%MAVEN_REPO% gpg:sign-and-deploy-file -Durl=%NEXUS_URL% -DrepositoryId=%REPO_ID% SET CL2=-Dfile=target/shibboleth-jetty-base-x64-%VERSION%.msi -DgroupId=net.shibboleth.idp -DartifactId=idp-jetty-base-windows SET CL3=-Dversion=%VERSION% -DgeneratePom=false -Dclassifier=msi Set SIGN_AND_DEPLOY=%CL1% %CL2% %CL3% %SIGN_AND_DEPLOY% |
...