-
Notifications
You must be signed in to change notification settings - Fork 117
Task List For Royale Releases
yishayw edited this page Apr 17, 2021
·
6 revisions
The token:
-
$releaseversion
represents the current release. -
$rc
represents the current release candidate number. - 'mavenfoldernumber' represents the name of the staging repo folder on https://repository.apache.org
- Determine if compiler-jburg-types or compiler-build-tools needs to be released. If not skip to step 15.
- In royale-compiler/compiler-jburg-types and/or compiler-build-tools, run
mvn release:prepare -Dtag=org.apache.royale.compiler-build-tools-$releaseversion-rc$rc
- Then run:
mvn release:perform
- Using SVN, clone https://dist.apache.org/repos/dist/dev/royale
- create a compiler-build-tools/$releaseversion/$rc and/or compiler-jburg-types/$releaseversion/$rc folder
- Log into https://repository.apache.org/#stagingRepositories. Find the repository which was just created and click the "Close" button at the top of the screen. This will make the artifacts available for download.
- Copy the files source package and jar and checksum and signature files from the staging repo to that folder. The URLs to download will look like: https://repository.apache.org/service/local/repositories/orgapacheroyale-$mavenfoldernumber/content/org/apache/royale/compiler/compiler-build-tools/$releaseversion/compiler-build-tools-$releaseversion-source-release.zip
- Add the ApproveXXX.xml file from the repo.
- Commit the files.
- Send an email with the subject [DISCUSS] Discuss Release Apache Royale Compiler Build Tools (note that the word Discuss is both in brackets and outside of brackets so that Gmail and other email clients separate the threads).
- Send an email with the subject [VOTE] Release Apache Royale Compiler Build Tools.
- When the vote passes: Hit the "release" button at https://repository.apache.org
- Run
svn mv dev/royale/compiler-build-tools/$releaseversion$rc release/royale/compiler-build-tools/$releaseversion
- Commit 'svn commit`.
- In royale-compiler run
mvn -P option-with-swf release:branch -DautoVersionSubmodules=true -DbranchName=release/$releaseversion
git checkout release/$releaseversion
mvn -P option-with-swf release:prepare -DautoVersionSubmodules=true -Dtag=org.apache.royale.compiler-$releaseversion-rc$rc
mvn release:perform
- In royale-typedefs run
mvn -P option-with-swf release:branch -DautoVersionSubmodules=true -DbranchName=release/$releaseversion
git checkout release/$releaseversion
mvn -P option-with-swf release:prepare -DautoVersionSubmodules=true -Dtag=org.apache.royale.typedefs-$releaseversion-rc$rc
mvn release:perform
- In royale-asjs run
mvn -P with-distribution,with-examples,with-manualtests,option-with-swf release:branch -DautoVersionSubmodules=true -DbranchName=release/$releaseversion
git checkout release/$releaseversion
mvn -P with-distribution,with-examples,with-manualtests,option-with-swf release:prepare -DautoVersionSubmodules=true -Dtag=org.apache.royale.asjs-$releaseversion-rc$rc
mvn release:perform
- Download the royale-compiler source package from: https://repository.apache.org/service/local/repositories/orgapacheroyale-$mavenfoldernumber/content/org/apache/royale/compiler/royale-compiler-parent/$releaseversion/royale-compiler-parent-$releaseversion-source-release.zip
- Unzip into a royale-compiler folder
- Download the royale-typedefs source package from: https://repository.apache.org/service/local/repositories/orgapacheroyale-$mavenfoldernumber/content/org/apache/royale/typedefs/royale-typedefs-parent/$releaseversion/royale-typedefs-parent-$releaseversion-source-release.zip
- Unzip into a royale-typedefs folder
- Download the royale-asjs source package from: https://repository.apache.org/service/local/repositories/orgapacheroyale-$mavenfoldernumber/content/org/apache/royale/framework/royale-framework-parent/$releaseversion/royale-framework-parent-$releaseversion-source-release.zip
- Unzip into a royale-asjs folder
- In the royale-asjs folder
ant release
- Using SVN, clone or update https://dist.apache.org/repos/dist/dev/royale
- create a $releaseversion/$rc folder
- Copy the royale-asjs/out folder
- Copy the Readme
- Copy the ApproveRoyale.xml file
- Commit
- Send an email with the subject [DISCUSS] Discuss Release Apache Royale $releaseversion RC$rc (note that the word Discuss is both in brackets and outside of brackets so that Gmail and other email clients separate the threads).
- Send an email with the subject [VOTE] Release Apache Royale $releaseversion RC$rc.
- When the vote passes: Hit the "release" button at https://repository.apache.org
- Run
svn mv dev/royale/$releaseversion/rc release/royale/$releaseversion
- Commit 'svn commit`.
- In royale-compiler:
git checkout release/$releaseversion
- 'git tag -a apache-royale-$releaseversion -m "Official release of apache-royale-$releaseversion"
- 'git push --tags'
- In royale-typedefs:
git checkout release/$releaseversion
- 'git tag -a apache-royale-$releaseversion -m "Official release of apache-royale-$releaseversion"
- 'git push --tags'
- In royale-asjs:
git checkout release/$releaseversion
- 'git tag -a apache-royale-$releaseversion -m "Official release of apache-royale-$releaseversion"
- 'git push --tags'
- In royale-compiler:
git checkout master
git pull --rebase
git merge apache-royale-$releaseversion
git push --all
- In royale-typedefs:
git checkout master
git pull --rebase
git merge apache-royale-$releaseversion
git push --all
- In royale-asjs:
git checkout master
git pull --rebase
git merge apache-royale-$releaseversion
git push --all
- Still in royale-asjs:
git checkout release/$releaseversion
cd npm\release-scripts
npm install
node publish.js --type=js-only --pathToTarball=$svnreleasefolder/royale/$releaseversion/binaries/apache-royale-$releaseversion-bin-js.tar.gz --username=apache-royale-owner --password=<password from private@
node publish.js --type=js-swf --pathToTarball=$svnreleasefolder/royale/$releaseversion/binaries/apache-royale-$releaseversion-bin-js-swf.tar.gz --username=apache-royale-owner --password=<password from private@
- Still in royale-asjs: update versions in build.properties to expected next release version
- Update versions in package.json
- Update versions in npm/js-only/package.json
- Update versions in npm/js-swf/package.json
- Replace version number in royale/CordovaCameraExample/CordovaCameraExample-app.xml
- Replace version number in royale/DesktopMap/DesktopMap-app.xml
- Replace version number in royale/MapSearch/MapSearch-app.xml
- Replace version number in royale/MobileMap/MobileMap-app.xml
- Replace version number in royale/MobileStocks/MobileStocks-app.xml
- Replace version number in royale/StorageExample/StorageExample-app.xml
- Update version number in -swf-debugfile-alias=/org/apache/royale/$releaseversion in pom.xml
- Check the version for royale.compiler.version in pom.xml is to $nextreleaseversion-SNAPSHOT
- Check the version for royale.typedefs.version in pom.xml is to $nextreleaseversion-SNAPSHOT
- Check the version for royale.framework.version in archetypes/pom.xml is to $nextreleaseversion-SNAPSHOT
- Check the version for royale.framework.version in examples/pom.xml is to $nextreleaseversion-SNAPSHOT
- Check the version for royale.framework.version in manualtests/pom.xml is to $nextreleaseversion-SNAPSHOT
git add .
git commit -m "update version to $newreleaseversion"
- In royale-compiler: update versions in build.properties to expected next release version
git add .
git commit -m "update version to $newreleaseversion"
- In royale-typedefs: update versions in build.properties to expected next release version
- Check the version for royale.compiler.version in pom.xml is to $nextreleaseversion-SNAPSHOT
git add .
git commit -m "update version to $newreleaseversion"
- In royale-asjs:
git checkout develop
git pull --rebase
git merge release/$releaseversion
git push --all
- In royale-typedefs:
git checkout develop
git pull --rebase
git merge release/$releaseversion
git push --all
- In royale-typedefs:
git checkout develop
git pull --rebase
git merge release/$releaseversion
git push --all
Apache®, Apache Royale, Royale™, and the Royale logo are either registered trademarks or trademarks of the Apache Software Foundation in the United States and/or other countries.