commit
0a768a2aac
|
@ -38,7 +38,7 @@ script:
|
|||
else
|
||||
docker build -t kiwix/build -f travis/Dockerfile .
|
||||
fi
|
||||
docker run -e PLATFORM -e NIGHTLY_DATE -e TRAVIS_EVENT_TYPE -e TRAVIS_BUILD_DIR -e DESKTOP_ONLY -e TRAVIS_TAG --device /dev/fuse --cap-add ALL --privileged kiwix/build
|
||||
docker run -e PLATFORM -e NIGHTLY_DATE -e TRAVIS_EVENT_TYPE -e DESKTOP_ONLY -e TRAVIS_TAG --device /dev/fuse --cap-add ALL --privileged kiwix/build
|
||||
else
|
||||
if [[ $TRAVIS_OS_NAME = "linux" ]]
|
||||
then
|
||||
|
@ -152,3 +152,9 @@ notifications:
|
|||
- "chat.freenode.net#kiwix"
|
||||
on_success: change
|
||||
on_failure: always
|
||||
email:
|
||||
recipients:
|
||||
- contact@kiwix.org
|
||||
- mgautier@kymeria.fr
|
||||
on_success: change
|
||||
on_failure: always
|
||||
|
|
|
@ -2,11 +2,20 @@ set -e
|
|||
|
||||
NIGHTLY_DATE=$(date +%Y-%m-%d)
|
||||
NIGHTLY_KIWIX_ARCHIVES_DIR=/c/projects/NIGHTLY_KIWIX_ARCHIVES/${NIGHTLY_DATE}
|
||||
RELEASE_KIWIX_ARCHIVES_DIR=/c/projects/RELEASE_KIWIX_ARCHIVES
|
||||
SSH_KEY=C:\\projects\\kiwix-build\\appveyor\\nightlybot_id_key
|
||||
|
||||
#if [[ "$APPVEYOR_SCHEDULED_BUILD" = "True" ]]
|
||||
#then
|
||||
if [[ "$APPVEYOR_SCHEDULED_BUILD" = "True" ]]
|
||||
then
|
||||
scp -vrp -i ${SSH_KEY} -o StrictHostKeyChecking=no \
|
||||
${NIGHTLY_KIWIX_ARCHIVES_DIR} \
|
||||
ci@download.kiwix.org:/data/download/nightly
|
||||
#fi
|
||||
fi
|
||||
|
||||
if [[ "$APPVEYOR_REPO_TAG" = "true" ]]
|
||||
then
|
||||
RELEASE_ARCHIVES=$(find $RELEASE_KIWIX_ARCHIVES_DIR -type f)
|
||||
scp -vrp -i ${SSH_KEY} -o StrictHostKeyChecking=no \
|
||||
${RELEASE_ARCHIVES} \
|
||||
ci@download.kiwix.org:/data/download/release/kiwix-desktop
|
||||
fi
|
||||
|
|
|
@ -1,13 +1,21 @@
|
|||
|
||||
set -e
|
||||
|
||||
NIGHTLY_DATE=$(date +%Y-%m-%d)
|
||||
NIGHTLY_KIWIX_ARCHIVES_DIR=/c/projects/NIGHTLY_KIWIX_ARCHIVES/${NIGHTLY_DATE}
|
||||
KIWIX_ARCH_NAME=kiwix-desktop_$NIGHTLY_DATE.zip
|
||||
KIWIX_DIR=kiwix-desktop_$NIGHTLY_DATE
|
||||
if [[ "$APPVEYOR_REPO_TAG" = "false" ]]
|
||||
then
|
||||
NIGHTLY_DATE=$(date +%Y-%m-%d)
|
||||
KIWIX_ARCHIVES_DIR=/c/projects/NIGHTLY_KIWIX_ARCHIVES/${NIGHTLY_DATE}
|
||||
KIWIX_DIR=kiwix-desktop_windows_x64_$NIGHTLY_DATE
|
||||
else
|
||||
KIWIX_DESKTOP_VERSION=2.0-beta3
|
||||
KIWIX_ARCHIVES_DIR=/c/projects/RELEASE_KIWIX_ARCHIVES
|
||||
KIWIX_DIR=kiwix-desktop_windows_x64_${KIWIX_DESKTOP_VERSION}
|
||||
fi
|
||||
|
||||
KIWIX_ARCH_NAME=${KIWIX_DIR}.zip
|
||||
|
||||
mkdir $KIWIX_DIR
|
||||
mkdir -p NIGHTLY_KIWIX_ARCHIVES_DIR
|
||||
mkdir -p KIWIX_ARCHIVES_DIR
|
||||
|
||||
cp /c/projects/kiwix-build/kiwix-desktop/Release/kiwix-desktop.exe $KIWIX_DIR
|
||||
/c/Qt/5.11/msvc2017_64/bin/windeployqt --compiler-runtime $KIWIX_DIR
|
||||
|
@ -17,4 +25,4 @@ cp $MINGW64_EXTRA_DIR/bin/*.dll $KIWIX_DIR
|
|||
|
||||
/c/Program\ Files\ \(x86\)/Windows\ Kits/10/bin/x64/signtool.exe sign -f appveyor/kiwix.pfx -p $win_certificate_password -t http://timestamp.verisign.com/scripts/timestamp.dll -d "Kiwix-desktop application" $KIWIX_DIR/kiwix-desktop.exe
|
||||
|
||||
7z a -tzip $NIGHTLY_KIWIX_ARCHIVES_DIR/$KIWIX_ARCH_NAME $KIWIX_DIR
|
||||
7z a -tzip $KIWIX_ARCHIVES_DIR/$KIWIX_ARCH_NAME $KIWIX_DIR
|
||||
|
|
|
@ -6,7 +6,7 @@ main_project_versions = {
|
|||
'libzim': '4.0.5',
|
||||
'zim-tools': '1.0.0',
|
||||
'zimwriterfs': '1.2',
|
||||
'kiwix-desktop': '2.0-beta3'
|
||||
'kiwix-desktop': '2.0-beta3' # Also need to be change in appveyor/package_kiwix-desktop.sh
|
||||
}
|
||||
|
||||
# This dictionnary specify what we need to build at each release process.
|
||||
|
|
|
@ -72,7 +72,7 @@ COPY . kiwix-build/
|
|||
RUN sudo chown -R travis:travis /home/travis/kiwix-build
|
||||
RUN pip3 install --user -e kiwix-build
|
||||
|
||||
ENV TRAVISCI_SSH_KEY /home/travis/kiwix-build/travis/travisci_builder_id_key
|
||||
ENV TRAVIS_BUILD_DIR /home/travis/kiwix-build
|
||||
ENV TRAVIS_OS_NAME linux_artful
|
||||
|
||||
CMD kiwix-build/travis/compile_all.py && kiwix-build/travis/deploy.sh
|
||||
|
|
|
@ -57,7 +57,7 @@ COPY . kiwix-build/
|
|||
RUN sudo chown -R travis:travis /home/travis/kiwix-build
|
||||
RUN pip3 install --user -e kiwix-build
|
||||
|
||||
ENV TRAVISCI_SSH_KEY /home/travis/kiwix-build/travis/travisci_builder_id_key
|
||||
ENV TRAVIS_BUILD_DIR /home/travis/kiwix-build
|
||||
ENV TRAVIS_OS_NAME linux_artful
|
||||
|
||||
CMD kiwix-build/travis/compile_all.py && kiwix-build/travis/deploy.sh
|
||||
|
|
|
@ -21,6 +21,7 @@ PLATFORM = environ['PLATFORM']
|
|||
TRAVIS_OS_NAME = environ['TRAVIS_OS_NAME']
|
||||
HOME = Path(os.path.expanduser('~'))
|
||||
NIGHTLY_DATE = environ['NIGHTLY_DATE']
|
||||
KBUILD_SOURCE_DIR = Path(environ['TRAVIS_BUILD_DIR'])
|
||||
KIWIX_DESKTOP_ONLY = environ.get('DESKTOP_ONLY') == '1'
|
||||
|
||||
BASE_DIR = HOME/"BUILD_{}".format(PLATFORM)
|
||||
|
@ -33,10 +34,7 @@ NIGHTLY_ZIM_ARCHIVES_DIR = HOME/'NIGHTLY_ZIM_ARCHIVES'/NIGHTLY_DATE
|
|||
RELEASE_ZIM_ARCHIVES_DIR = HOME/'RELEASE_ZIM_ARCHIVES'
|
||||
DIST_KIWIX_ARCHIVES_DIR = HOME/'DIST_KIWIX_ARCHIVES'
|
||||
DIST_ZIM_ARCHIVES_DIR = HOME/'DIST_ZIM_ARCHIVES'
|
||||
if 'TRAVISCI_SSH_KEY' in environ:
|
||||
SSH_KEY = Path(environ['TRAVISCI_SSH_KEY'])
|
||||
else:
|
||||
SSH_KEY = Path(environ['TRAVIS_BUILD_DIR'])/'travis'/'travisci_builder_id_key'
|
||||
SSH_KEY = KBUILD_SOURCE_DIR/'travis'/'travisci_builder_id_key'
|
||||
|
||||
BIN_EXT = '.exe' if PLATFORM.startswith('win-') else ''
|
||||
|
||||
|
@ -54,6 +52,8 @@ EXPORT_FILES = {
|
|||
'include/zim/**/*.h'))
|
||||
}
|
||||
|
||||
FLATPAK_GIT_REMOTE = 'git@github.com:flathub/org.kiwix.desktop.git'
|
||||
|
||||
_date = date.today().isoformat()
|
||||
|
||||
def print_message(message, *args, **kwargs):
|
||||
|
@ -244,6 +244,29 @@ def make_deps_archive(target, full=False):
|
|||
return relative_path/archive_name
|
||||
|
||||
|
||||
def update_flathub_git():
|
||||
env = dict(os.environ)
|
||||
env['GIT_SSH_COMMAND'] = 'ssh -o StrictHostKeyChecking=no -i {}'.format(SSH_KEY)
|
||||
env['GIT_AUTHOR_NAME'] = env['GIT_COMMITTER_NAME'] = "KiwixBot"
|
||||
env['GIT_AUTHOR_EMAIL'] = env['GIT_COMMITTER_EMAIL'] = "kiwixbot@kymeria.fr"
|
||||
command = ['git', 'clone', FLATPAK_GIT_REMOTE]
|
||||
subprocess.check_call(command, env=env, cwd=str(HOME))
|
||||
shutil.copy(str(BASE_DIR/'org.kiwix.desktop.json'),
|
||||
str(HOME/'org.kiwix.desktop'))
|
||||
patch_dir = KBUILD_SOURCE_DIR/'kiwixbuild'/'patches'
|
||||
for dep in ('libaria2', 'mustache', 'pugixml', 'xapian'):
|
||||
for f in patch_dir.glob('{}_*.patch'.format(dep)):
|
||||
shutil.copy(str(f), str(HOME/'org.kiwix.desktop'/'patches'))
|
||||
command = ['git', 'add', '-A', '.']
|
||||
subprocess.check_call(command, env=env, cwd=str(HOME/'org.kiwix.desktop'))
|
||||
command = ['git', 'commit', '-m',
|
||||
'Update to version {}'.format(main_project_versions['kiwix-desktop'])]
|
||||
subprocess.check_call(command, env=env, cwd=str(HOME/'org.kiwix.desktop'))
|
||||
command = ['git', 'push']
|
||||
subprocess.check_call(command, env=env, cwd=str(HOME/'org.kiwix.desktop'))
|
||||
|
||||
|
||||
|
||||
def scp(what, where):
|
||||
print_message("Copy {} to {}", what, where)
|
||||
command = ['scp', '-o', 'StrictHostKeyChecking=no',
|
||||
|
@ -398,7 +421,6 @@ for target in TARGETS:
|
|||
make_release=True,
|
||||
make_dist=True)
|
||||
|
||||
|
||||
# We have build everything. Now create archives for public deployement.
|
||||
if make_release and PLATFORM == 'native_dyn':
|
||||
for target in TARGETS:
|
||||
|
@ -435,6 +457,8 @@ elif PLATFORM == 'armhf_static':
|
|||
make_archive('kiwix-tools', 'linux-armhf')
|
||||
elif PLATFORM == 'i586_static':
|
||||
make_archive('kiwix-tools', 'linux-i586')
|
||||
elif make_release and PLATFORM == 'flatpak':
|
||||
update_flathub_git()
|
||||
elif PLATFORM.startswith('android') and 'kiwix-android' in TARGETS:
|
||||
APK_NAME = "kiwix-{}".format(PLATFORM)
|
||||
source_debug_dir = HOME/'BUILD_android'/'kiwix-android'/'app'/'build'/'outputs'/'apk'/'kiwix'/'debug'
|
||||
|
|
Loading…
Reference in New Issue