diff --git a/travis/compile_all.py b/travis/compile_all.py index 6e739f2..620df52 100755 --- a/travis/compile_all.py +++ b/travis/compile_all.py @@ -16,7 +16,8 @@ def home(): BASE_DIR = home()/"BUILD_{}".format(PLATFORM) NIGHTLY_ARCHIVES_DIR = home()/'NIGHTLY_ARCHIVES' -RELEASE_ARCHIVES_DIR = home()/'RELEASE_ARCHIVES' +RELEASE_KIWIX_ARCHIVES_DIR = home()/'RELEASE_KIWIX_ARCHIVES' +RELEASE_ZIM_ARCHIVES_DIR = home()/'RELEASE_ZIM_ARCHIVES' DIST_KIWIX_ARCHIVES_DIR = home()/'DIST_KIWIX_ARCHIVES' DIST_ZIM_ARCHIVES_DIR = home()/'DIST_ZIM_ARCHIVES' SSH_KEY = Path(environ['TRAVIS_BUILD_DIR'])/'travis'/'travisci_builder_id_key' @@ -26,7 +27,7 @@ VERSIONS = { 'kiwix-tools': '0.3.0', 'libzim': '3.0.0', 'zim-tools': '0.0.1', - 'zimwriterfs': '1.0' + 'zimwriterfs': '1.1' } # We have build everything. Now create archives for public deployement. @@ -74,12 +75,16 @@ def make_archive(project, platform): file_to_archives = ['{}.exe'.format(f) for f in file_to_archives] if make_release: postfix = VERSIONS[project] - archive_dir = RELEASE_ARCHIVES_DIR + if project in ('kiwix-lib', 'kiwix-tools'): + archive_dir = RELEASE_KIWIX_ARCHIVES_DIR/project + else: + archive_dir = RELEASE_ZIM_ARCHIVES_DIR/project else: postfix = _date archive_dir = NIGHTLY_ARCHIVES_DIR archive_name = "{}_{}-{}".format(project, platform, postfix) archive = archive_dir/'{}.tar.gz'.format(archive_name) + archive_dir.mkdir(parents=True) base_bin_dir = BASE_DIR/'INSTALL'/'bin' with tarfile.open(str(archive), 'w:gz') as arch: for f in file_to_archives: @@ -91,7 +96,11 @@ def scp(what, where): subprocess.check_call(command) -for p in (NIGHTLY_ARCHIVES_DIR, RELEASE_ARCHIVES_DIR, DIST_KIWIX_ARCHIVES_DIR, DIST_ZIM_ARCHIVES_DIR): +for p in (NIGHTLY_ARCHIVES_DIR, + RELEASE_KIWIX_ARCHIVES_DIR, + RELEASE_ZIM_ARCHIVES_DIR, + DIST_KIWIX_ARCHIVES_DIR, + DIST_ZIM_ARCHIVES_DIR): try: p.mkdir(parents=True) except FileExistsError: @@ -170,9 +179,12 @@ if make_release and PLATFORM == 'native_dyn': else: out_dir = DIST_ZIM_ARCHIVES_DIR - if target in ('kiwix-lib', 'kiwix-tools', 'libzim'): + if target in ('kiwix-lib', 'kiwix-tools', 'libzim', 'zim-tools'): shutil.copy(str(BASE_DIR/target/'meson-dist'/'{}-{}.tar.xz'.format(target, VERSIONS[target])), str(out_dir)) + if target in ('zimwriterfs',): + shutil.copy(str(BASE_DIR/target/'{}-{}.tar.gz'.format(target, VERSIONS[target])), + str(out_dir)) elif PLATFORM == 'native_static': for target in ('kiwix-tools', 'zim-tools', 'zimwriterfs'): make_archive(target, 'linux64') diff --git a/travis/deploy.sh b/travis/deploy.sh index 2306dc6..a7e1fd2 100755 --- a/travis/deploy.sh +++ b/travis/deploy.sh @@ -3,7 +3,8 @@ set -e NIGHTLY_ARCHIVES_DIR=${HOME}/NIGHTLY_ARCHIVES -RELEASE_ARCHIVES_DIR=${HOME}/RELEASE_ARCHIVES +RELEASE_KIWIX_ARCHIVES_DIR=${HOME}/RELEASE_KIWIX_ARCHIVES +RELEASE_ZIM_ARCHIVES_DIR=${HOME}/RELEASE_ZIM_ARCHIVES DIST_KIWIX_ARCHIVES_DIR=${HOME}/DIST_KIWIX_ARCHIVES DIST_ZIM_ARCHIVES_DIR=${HOME}/DIST_ZIM_ARCHIVES SSH_KEY=travis/travisci_builder_id_key @@ -19,12 +20,28 @@ then fi elif [[ "x$TRAVIS_TAG" != "x" ]] then - RELEASE_ARCHIVES=$(find $RELEASE_ARCHIVES_DIR -type f) + RELEASE_ARCHIVES=$(find $RELEASE_KIWIX_ARCHIVES_DIR -type f) if [[ "x$RELEASE_ARCHIVES" != "x" ]] then - scp -vrp -i ${SSH_KEY} \ - ${RELEASE_ARCHIVES} \ - nightlybot@download.kiwix.org:/var/www/download.kiwix.org/release + for archive in $RELEASE_ARCHIVES + do + subdir=$(basename $(dirname $archive)) + scp -vrp -i ${SSH_KEY} \ + ${archive} \ + nightlybot@download.kiwix.org:/var/www/download.kiwix.org/release/${subdir} + done + fi + + RELEASE_ARCHIVES=$(find $RELEASE_ZIM_ARCHIVES_DIR -type f) + if [[ "x$RELEASE_ARCHIVES" != "x" ]] + then + for archive in $RELEASE_ARCHIVES + do + subdir=$(basename $(dirname $archive)) + scp -vrp -i ${SSH_KEY} \ + ${archive} \ + nightlybot@download.openzim.org:/var/www/download.openzim.org/release/${subdir} + done fi DIST_KIWIX_ARCHIVES=$(find $DIST_KIWIX_ARCHIVES_DIR -type f)