- Alpha - git branch: dev
- Beta - git branch: beta
- Stable - git branch: master
The alpha channel is automatically released for every successful push to dev.
- If there is a pending Native Extension server change, publish the stage server, which updates https://build-stage.defold.com.
- Collect release notes using
sripts/releasenotes_git.pyand post on forum.defold.com
-
Merge
editor-devintodev$ git checkout editor-dev $ git pull $ git checkout dev $ git pull $ git merge editor-dev $ git push -
Merge
devintobeta$ git checkout beta $ git pull $ git merge dev $ git pushBeta beta channel is automatically released for every successful push to beta.
-
Collect release notes using
python scripts/releasenotes_git.pyand post on forum.defold.com and add the "BETA" tag to the headline
-
Switch to master branch, merge from beta:
$ git checkout master $ git pull $ git merge beta -
Push master!
$ git pushThis will trigger a build of the engines and editors for stable. Make a note of the release sha1 (the latest commit to the master branch on GitHub)
-
Fetch editor via:
http://d.defold.com/archive/editor-alpha/`STABLE-SHA1`/editor-alpha/editor2/Defold-x86_64-darwin.dmg
http://d.defold.com/editor-alpha/editor2/`STABLE-SHA1`/editor-alpha/editor2/Defold-x86_64-win32.zip
http://d.defold.com/archive/editor-alpha/`STABLE-SHA1`/editor-alpha/editor2/Defold-x86_64-linux.zip
-
Tag the release in git:
$ git checkout master $ git tag -a X.Y.Z (same as version produced by the bump)Use tag message: Release X.Y.Z Add
-fto force update the tag (in the case you need to amend an existing release for some reason).$ git push origin --tagsThis will push the tags to GitHub, which is then used later in the release step. Add
-fto force update the tags.
-
If everything is OK, time to release stable.
-
If there is a pending Native Extension server change, publish the production server, which updates https://build.defold.com
-
Next, release the stable engine/editor:
$ git checkout master $ ./scripts/build.py release --channel=stableImportant: Make sure the SHA1 and channel is correct!
-
Merge
masterintoeditor-dev:$ git checkout editor-dev $ git pull $ git merge master $ git push
This will trigger a build of the engines and editors for editor-alpha.
-
When the
editor-devis built, all channels have been updated. -
Verify release by updating an old editor, OSX, Win and Linux.
-
Generate new API documentation and other documentation changes. From the
defold/defold.github.iorepo:$ cd defold.github.io $ git checkout master $ git pull $ ./update.py --download refdoc $ git commit -am "Updated reference documentation to 1.2.xxx" $ git push -
Merge
masterintodev:$ cd defold $ git checkout dev $ git pull $ git merge master -
Bump version:
$ ./scripts/build.py bump $ git diff $ git add VERSION $ git commit -m "Bumped version to 1.2.xx" $ git push -
Repost the releasenotes on the forum and remove the "BETA" part from the headline
-
Upload release artifacts to GitHub:
$ cd defold $ git checkout master $ ./scripts/build.py --github-token=YOUR_GITHUB_TOKEN release_to_github