Release a Release Candidate version of Asqatasun

This is the documentation for releasing a new version Release Candidate for Asqatasun. As an end user, you won't need it, it is just for developers.

1) Prepare CHANGELOG.md:

2) Update README.md (THE readme from top directory):

3) Upgrade version strings in code with bump_asqatasun.sh:

/!\ Please be sure to be:

  1. on the develop branch before launching the following script (not in a feature branch)
  2. inside the top directory of Asqatasun sources (eg /home/johndoe/my-sources/Asqatasun)
./engine/asqatasun-resources/src/main/resources/release/bump_asqatasun.sh \
    --source . \
    --from-version X.Y.Z-SNAPSHOT \
    --to-version X.Y.Z-rc.1 \
    --automerge \
    --commit \
    --tag \
    --push

4) Build local Docker image with locally build Asqatasun

When --source is specified, get into that source directory and:

./docker/build_and_run-with-docker.sh -l -s "${PWD}" -d docker/SNAPSHOT-local --skip-build-test

else when using clone in /tmp:

cd /tmp/Asqatasun   # Directory used to clone Github repos
./docker/build_and_run-with-docker.sh -l -s /tmp/Asqatasun -d docker/SNAPSHOT-local --skip-build-test

5) For develop branch, switch back release strings to "-SNAPSHOT"

From the top of Asqatasun source directory, do:

./engine/asqatasun-resources/src/main/resources/release/bump_asqatasun.sh \
    --from-version X.Y.Z-rc.1 \
    --to-version X.Y.Z-SNAPSHOT \
    --source-dir . \
    --back-to-snapshot \
    --commit
git push origin develop

6) In Github:

7) Update Download.asqatasun.org

...so that "latest" points to the last release.

8) In Asqatasun Docker hub:

9) Write a message in the forum

10) Send an email to close people to ask them if they want to play with the RC.

11) Run the functional tests

12) Prepare communication

13) If no blocker is found, proceed to next step, else iterate and increment RC number.