#! /bin/bash # # Service operations for a JMRI test release # Argument is release version number, e.g. 4.5.8 # - Download release files from Jenkins and unpack # - Display the checksums # - Display sample text for releaselist file # - Display sample text for JMRI release note # The script can't know the full name of the individual files, as they contain the # Git SHA of the commit. # if files present, then use them macfile=release/JMRI.${1}+*.dmg linfile=release/JMRI.${1}+*.tgz winfile=release/JMRI.${1}+*.exe if [ -r $macfile ] && [ -r $linfile ] && [ -r $winfile ]; then echo "found files, skipping curl" else # Download release from Jenkins and unpack if ! curl -o release.zip "https://builds.jmri.org/jenkins/job/testreleases/job/$1/lastSuccessfulBuild/artifact/*zip*/archive.zip"; then exit fi rm -f release/JMRI.${1}* unzip -j -d release release.zip fi cd release # Decide command to create checksums if [ -x /usr/bin/hdiutil ] then SYSTEM=MACOSX else SYSTEM=LINUX fi if [ "$SYSTEM" = "MACOSX" ] then SHA="shasum -a 256" else SHA="sha256sum" fi # Create and display the checksums $SHA JMRI* # Display sample text for releaselist file echo echo "releaselist:" echo '----------------------------------------------------------------------------------' echo " ${1}:" echo " tgz: "\""https://github.com/JMRI/JMRI/releases/download/v${1}/`ls *.tgz`"\" echo " dmg: "\""https://github.com/JMRI/JMRI/releases/download/v${1}/`ls *.dmg`"\" echo " exe: "\""https://github.com/JMRI/JMRI/releases/download/v${1}/`ls *.exe`"\" echo '----------------------------------------------------------------------------------' echo echo # Display sample text for JMRI release note echo "release note:" echo '----------------------------------------------------------------------------------' echo '