commit
0a768a2aac
|
@ -38,7 +38,7 @@ script:
|
||||||
else
|
else
|
||||||
docker build -t kiwix/build -f travis/Dockerfile .
|
docker build -t kiwix/build -f travis/Dockerfile .
|
||||||
fi
|
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
|
else
|
||||||
if [[ $TRAVIS_OS_NAME = "linux" ]]
|
if [[ $TRAVIS_OS_NAME = "linux" ]]
|
||||||
then
|
then
|
||||||
|
@ -152,3 +152,9 @@ notifications:
|
||||||
- "chat.freenode.net#kiwix"
|
- "chat.freenode.net#kiwix"
|
||||||
on_success: change
|
on_success: change
|
||||||
on_failure: always
|
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_DATE=$(date +%Y-%m-%d)
|
||||||
NIGHTLY_KIWIX_ARCHIVES_DIR=/c/projects/NIGHTLY_KIWIX_ARCHIVES/${NIGHTLY_DATE}
|
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
|
SSH_KEY=C:\\projects\\kiwix-build\\appveyor\\nightlybot_id_key
|
||||||
|
|
||||||
#if [[ "$APPVEYOR_SCHEDULED_BUILD" = "True" ]]
|
if [[ "$APPVEYOR_SCHEDULED_BUILD" = "True" ]]
|
||||||
#then
|
then
|
||||||
scp -vrp -i ${SSH_KEY} -o StrictHostKeyChecking=no \
|
scp -vrp -i ${SSH_KEY} -o StrictHostKeyChecking=no \
|
||||||
${NIGHTLY_KIWIX_ARCHIVES_DIR} \
|
${NIGHTLY_KIWIX_ARCHIVES_DIR} \
|
||||||
ci@download.kiwix.org:/data/download/nightly
|
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
|
set -e
|
||||||
|
|
||||||
NIGHTLY_DATE=$(date +%Y-%m-%d)
|
if [[ "$APPVEYOR_REPO_TAG" = "false" ]]
|
||||||
NIGHTLY_KIWIX_ARCHIVES_DIR=/c/projects/NIGHTLY_KIWIX_ARCHIVES/${NIGHTLY_DATE}
|
then
|
||||||
KIWIX_ARCH_NAME=kiwix-desktop_$NIGHTLY_DATE.zip
|
NIGHTLY_DATE=$(date +%Y-%m-%d)
|
||||||
KIWIX_DIR=kiwix-desktop_$NIGHTLY_DATE
|
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 $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
|
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
|
/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
|
/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',
|
'libzim': '4.0.5',
|
||||||
'zim-tools': '1.0.0',
|
'zim-tools': '1.0.0',
|
||||||
'zimwriterfs': '1.2',
|
'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.
|
# 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 sudo chown -R travis:travis /home/travis/kiwix-build
|
||||||
RUN pip3 install --user -e 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
|
ENV TRAVIS_OS_NAME linux_artful
|
||||||
|
|
||||||
CMD kiwix-build/travis/compile_all.py && kiwix-build/travis/deploy.sh
|
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 sudo chown -R travis:travis /home/travis/kiwix-build
|
||||||
RUN pip3 install --user -e 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
|
ENV TRAVIS_OS_NAME linux_artful
|
||||||
|
|
||||||
CMD kiwix-build/travis/compile_all.py && kiwix-build/travis/deploy.sh
|
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']
|
TRAVIS_OS_NAME = environ['TRAVIS_OS_NAME']
|
||||||
HOME = Path(os.path.expanduser('~'))
|
HOME = Path(os.path.expanduser('~'))
|
||||||
NIGHTLY_DATE = environ['NIGHTLY_DATE']
|
NIGHTLY_DATE = environ['NIGHTLY_DATE']
|
||||||
|
KBUILD_SOURCE_DIR = Path(environ['TRAVIS_BUILD_DIR'])
|
||||||
KIWIX_DESKTOP_ONLY = environ.get('DESKTOP_ONLY') == '1'
|
KIWIX_DESKTOP_ONLY = environ.get('DESKTOP_ONLY') == '1'
|
||||||
|
|
||||||
BASE_DIR = HOME/"BUILD_{}".format(PLATFORM)
|
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'
|
RELEASE_ZIM_ARCHIVES_DIR = HOME/'RELEASE_ZIM_ARCHIVES'
|
||||||
DIST_KIWIX_ARCHIVES_DIR = HOME/'DIST_KIWIX_ARCHIVES'
|
DIST_KIWIX_ARCHIVES_DIR = HOME/'DIST_KIWIX_ARCHIVES'
|
||||||
DIST_ZIM_ARCHIVES_DIR = HOME/'DIST_ZIM_ARCHIVES'
|
DIST_ZIM_ARCHIVES_DIR = HOME/'DIST_ZIM_ARCHIVES'
|
||||||
if 'TRAVISCI_SSH_KEY' in environ:
|
SSH_KEY = KBUILD_SOURCE_DIR/'travis'/'travisci_builder_id_key'
|
||||||
SSH_KEY = Path(environ['TRAVISCI_SSH_KEY'])
|
|
||||||
else:
|
|
||||||
SSH_KEY = Path(environ['TRAVIS_BUILD_DIR'])/'travis'/'travisci_builder_id_key'
|
|
||||||
|
|
||||||
BIN_EXT = '.exe' if PLATFORM.startswith('win-') else ''
|
BIN_EXT = '.exe' if PLATFORM.startswith('win-') else ''
|
||||||
|
|
||||||
|
@ -54,6 +52,8 @@ EXPORT_FILES = {
|
||||||
'include/zim/**/*.h'))
|
'include/zim/**/*.h'))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
FLATPAK_GIT_REMOTE = 'git@github.com:flathub/org.kiwix.desktop.git'
|
||||||
|
|
||||||
_date = date.today().isoformat()
|
_date = date.today().isoformat()
|
||||||
|
|
||||||
def print_message(message, *args, **kwargs):
|
def print_message(message, *args, **kwargs):
|
||||||
|
@ -244,6 +244,29 @@ def make_deps_archive(target, full=False):
|
||||||
return relative_path/archive_name
|
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):
|
def scp(what, where):
|
||||||
print_message("Copy {} to {}", what, where)
|
print_message("Copy {} to {}", what, where)
|
||||||
command = ['scp', '-o', 'StrictHostKeyChecking=no',
|
command = ['scp', '-o', 'StrictHostKeyChecking=no',
|
||||||
|
@ -398,7 +421,6 @@ for target in TARGETS:
|
||||||
make_release=True,
|
make_release=True,
|
||||||
make_dist=True)
|
make_dist=True)
|
||||||
|
|
||||||
|
|
||||||
# We have build everything. Now create archives for public deployement.
|
# We have build everything. Now create archives for public deployement.
|
||||||
if make_release and PLATFORM == 'native_dyn':
|
if make_release and PLATFORM == 'native_dyn':
|
||||||
for target in TARGETS:
|
for target in TARGETS:
|
||||||
|
@ -435,6 +457,8 @@ elif PLATFORM == 'armhf_static':
|
||||||
make_archive('kiwix-tools', 'linux-armhf')
|
make_archive('kiwix-tools', 'linux-armhf')
|
||||||
elif PLATFORM == 'i586_static':
|
elif PLATFORM == 'i586_static':
|
||||||
make_archive('kiwix-tools', 'linux-i586')
|
make_archive('kiwix-tools', 'linux-i586')
|
||||||
|
elif make_release and PLATFORM == 'flatpak':
|
||||||
|
update_flathub_git()
|
||||||
elif PLATFORM.startswith('android') and 'kiwix-android' in TARGETS:
|
elif PLATFORM.startswith('android') and 'kiwix-android' in TARGETS:
|
||||||
APK_NAME = "kiwix-{}".format(PLATFORM)
|
APK_NAME = "kiwix-{}".format(PLATFORM)
|
||||||
source_debug_dir = HOME/'BUILD_android'/'kiwix-android'/'app'/'build'/'outputs'/'apk'/'kiwix'/'debug'
|
source_debug_dir = HOME/'BUILD_android'/'kiwix-android'/'app'/'build'/'outputs'/'apk'/'kiwix'/'debug'
|
||||||
|
|
Loading…
Reference in New Issue