diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 46ce6d56..96fc53a9 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -37,44 +37,57 @@ metadata_v0: metadata/dump_*/*.yaml - diff -uw metadata/dump_* +.apt-template: &apt-template + variables: + DEBIAN_FRONTEND: noninteractive + LANG: C.UTF-8 + before_script: + - echo Etc/UTC > /etc/timezone + - echo 'APT::Install-Recommends "0";' + 'APT::Install-Suggests "0";' + 'APT::Acquire::Retries "20";' + 'APT::Get::Assume-Yes "true";' + 'Dpkg::Use-Pty "0";' + 'quiet "1";' + >> /etc/apt/apt.conf.d/99gitlab + - apt-get update + - apt-get dist-upgrade + debian_testing: image: debian:testing + <<: *apt-template only: - master@fdroid/fdroidserver script: - - apt-get -qy update - - apt-get -qy dist-upgrade - - apt-get -qy install --no-install-recommends - fdroidserver git gnupg python3-defusedxml python3-setuptools - - sed -i -e 's,testing,sid,g' -e 's,testing,sid,g' /etc/apt/sources.list - - apt-get -qy update - - apt-get install -y --no-install-recommends aapt androguard android-platform-tools-base zipalign + - apt-get install + aapt + androguard + fdroidserver + git + gnupg + python3-defusedxml + python3-setuptools + zipalign - python3 -c 'import fdroidserver' - python3 -c 'import androguard' - - export ANDROID_HOME=/usr/lib/android-sdk - - export LANG=C.UTF-8 - cd tests - ./run-tests # test using LTS set up with the PPA, including Recommends ubuntu_lts_ppa: image: ubuntu:latest + <<: *apt-template only: - master@fdroid/fdroidserver - variables: - ANDROID_HOME: /usr/lib/android-sdk - DEBIAN_FRONTEND: noninteractive - LANG: C.UTF-8 script: - - echo Etc/UTC > /etc/timezone - - apt-get -qy update - - apt-get -qy install gnupg + - export ANDROID_HOME=/usr/lib/android-sdk + - apt-get install gnupg - while ! apt-key adv --keyserver hkp://pool.sks-keyservers.net --recv-key 9AAC253193B65D4DF1D0A13EEC4632C79C5E0151; do sleep 15; done - export RELEASE=`sed -n 's,^deb [^ ][^ ]* \([a-z]*\).*,\1,p' /etc/apt/sources.list | head -1` - echo "deb http://ppa.launchpad.net/fdroid/fdroidserver/ubuntu $RELEASE main" >> /etc/apt/sources.list - - apt-get -qy update - - apt-get -qy dist-upgrade - - apt-get -qy install --install-recommends binfmt-support fdroidserver git python3-defusedxml python3-setuptools + - apt-get update + - apt-get dist-upgrade + - apt-get install --install-recommends binfmt-support fdroidserver git python3-defusedxml python3-setuptools - grep binfmt /proc/modules || apt -qy purge apksigner - cd tests - ./run-tests @@ -83,16 +96,11 @@ ubuntu_lts_ppa: # apksigner is recommended, but requires binfmt support in the kernel ubuntu_xenial_pip: image: ubuntu:xenial + <<: *apt-template only: - master@fdroid/fdroidserver - variables: - DEBIAN_FRONTEND: noninteractive - LANG: C.UTF-8 script: - - echo Etc/UTC > /etc/timezone - - apt-get -qy update - - apt-get -qy dist-upgrade - - apt-get -qy install --no-install-recommends git default-jdk-headless python3-pip python3-venv rsync zipalign + - apt-get install git default-jdk-headless python3-pip python3-venv rsync zipalign - rm -rf env - pyvenv env - . env/bin/activate diff --git a/.travis.yml b/.travis.yml index c9cb33eb..0a10bcb0 100644 --- a/.travis.yml +++ b/.travis.yml @@ -46,8 +46,8 @@ install: - brew uninstall java --force || true - brew cask uninstall java --force || true - brew tap adoptopenjdk/openjdk - - brew cask install adoptopenjdk8 - - brew cask install android-sdk + - travis_retry brew cask install adoptopenjdk8 + - travis_retry brew cask install android-sdk - export AAPT_VERSION=`sed -n "s,^MINIMUM_AAPT_VERSION\s*=\s*['\"]\(.*\)[['\"],\1,p" fdroidserver/common.py` - mkdir -p "$ANDROID_HOME/licenses" @@ -82,7 +82,12 @@ install: # The OSX tests seem to run slower, they often timeout. So only run # the test suite with the installed version of fdroid. +# +# macOS sticks with bash 3.x because of licenses, so avoid use new bash syntax script: + - /bin/bash --version + - /bin/bash -n gradlew-fdroid tests/run-tests + - ./tests/run-tests after_failure: diff --git a/README.md b/README.md index 1b0a1c02..00ddb3bc 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ | CI Builds | fdroidserver | buildserver | fdroid build --all | publishing tools | |--------------------------|:-------------:|:-----------:|:------------------:|:----------------:| | GNU/Linux | [![fdroidserver status on GNU/Linux](https://gitlab.com/fdroid/fdroidserver/badges/master/build.svg)](https://gitlab.com/fdroid/fdroidserver/builds) | [![buildserver status](https://jenkins.debian.net/job/reproducible_setup_fdroid_build_environment/badge/icon)](https://jenkins.debian.net/job/reproducible_setup_fdroid_build_environment) | [![fdroid build all status](https://jenkins.debian.net/job/reproducible_fdroid_build_apps/badge/icon)](https://jenkins.debian.net/job/reproducible_fdroid_build_apps/) | [![fdroid test status](https://jenkins.debian.net/job/reproducible_fdroid_test/badge/icon)](https://jenkins.debian.net/job/reproducible_fdroid_test/) | -| macOS | [![fdroidserver status on macOS](https://travis-ci.org/fdroidtravis/fdroidserver.svg?branch=master)](https://travis-ci.org/fdroidtravis/fdroidserver) | | | | +| macOS | [![fdroidserver status on macOS](https://travis-ci.org/f-droid/fdroidserver.svg?branch=master)](https://travis-ci.org/f-droid/fdroidserver) | | | | # F-Droid Server