Do not overwrite release build archives.

We new release of a project is made, projects dependending of it are
rebuild and republish to keep the binaries up-to-date.

To avoid overwrite the already build archives and silent the fact that
new archives are available, we need to have a extra build version.

`release_versions[project]` has to be set each time a dependency of
`project` is bump but the project version has not changed.

If the `project` version changes, the `release_versions[project]`
has to be cleared.

If we don't want to release this version again, remove project from
`release_versions`.

See kiwix/kiwix-tools#222
This commit is contained in:
Matthieu Gautier
2018-09-03 14:18:56 +02:00
parent d4b393727e
commit 07e8b36efb
2 changed files with 37 additions and 2 deletions

View File

@ -1,3 +1,4 @@
# This file reference all the versions of the depedencies we use in kiwix-build.
main_project_versions = {
'kiwix-lib': '2.0.2',
@ -8,6 +9,23 @@ main_project_versions = {
'kiwix-desktop': '2.0-alpha2'
}
# This dictionnary specify what we need to build at each release process.
# - Values are integer or None
# - If a project is not in the dict (or None), the project is not released.
# - If release_versions[project] == 0, this is the first time the project is
# build for this release, so publish src and build archives.
# - If release_versions[project] > 0, release only the build archive with a
# build postfix.
# To change this dictionnary, use the following algorithm:
# - If project version change, set release_versions[project] = 0
# - Else
# - If project depedencies have not change, remove project from release_versions
# - Else, increment the value. If no value was present, see in
# http://download.kiwikorg/releases what to set.
release_versions = {
}
# This is the "version" of the whole base_deps_versions dict.
# Change this when you change base_deps_versions.