mirror of
https://gitlab.com/fdroid/fdroidserver.git
synced 2024-11-19 21:30:10 +01:00
05abbfbabd
A full run of the test suite takes quite a bit of time. This removes one of the 3 runs from the main 'tests' job, and puts it into the Fedora job. That test run is mostly to make sure the setup.py and source tarball are correctly, so that doesn't affect merge requests very often. This also tests `pip install --user`, which was not really being tested before.
118 lines
4.5 KiB
YAML
118 lines
4.5 KiB
YAML
|
|
test:
|
|
image: registry.gitlab.com/fdroid/ci-images-server:latest
|
|
script:
|
|
- pip3 install -e .
|
|
- cd tests
|
|
- ./complete-ci-tests
|
|
|
|
# Test that the parsing of the .txt format didn't change from last
|
|
# released version. Ensure that the official tags are included when
|
|
# running these tests on forks as well.
|
|
metadata_v0:
|
|
image: registry.gitlab.com/fdroid/ci-images-server:latest
|
|
script:
|
|
- git fetch https://gitlab.com/fdroid/fdroidserver 0.8
|
|
- cd tests
|
|
- export GITCOMMIT=`git describe`
|
|
- git checkout 0.8 # bump after release
|
|
- cd ..
|
|
- git clone --depth 1 https://gitlab.com/fdroid/fdroiddata
|
|
- cd fdroiddata
|
|
- ../tests/dump_internal_metadata_format.py
|
|
- cd ..
|
|
- git reset --hard
|
|
- git checkout $GITCOMMIT
|
|
- cd fdroiddata
|
|
- ../tests/dump_internal_metadata_format.py
|
|
- diff -uw metadata/dump_*
|
|
|
|
debian_testing:
|
|
image: debian:testing
|
|
only:
|
|
- master@fdroid/fdroidserver
|
|
script:
|
|
- apt update -y
|
|
- apt dist-upgrade -y
|
|
- apt-get install -y --no-install-recommends
|
|
aapt adb android-platform-tools-base android-sdk-common fdroidserver
|
|
git gnupg python3-setuptools zipalign
|
|
- export ANDROID_HOME=/usr/lib/android-sdk
|
|
- export LANG=C.UTF-8
|
|
- cd tests
|
|
- rm -f install.TestCase # fails frequently and is unimportant
|
|
- ./run-tests
|
|
|
|
ubuntu_lts:
|
|
image: ubuntu:latest
|
|
only:
|
|
- master@fdroid/fdroidserver
|
|
script:
|
|
- apt-key adv --keyserver hkp://pool.sks-keyservers.net --recv-key 9AAC253193B65D4DF1D0A13EEC4632C79C5E0151
|
|
- 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 update -y
|
|
- apt dist-upgrade -y
|
|
- apt-get install -y --no-install-recommends
|
|
aapt adb android-platform-tools-base android-sdk-common fdroidserver
|
|
git gnupg python3-setuptools unzip wget zipalign
|
|
- export ANDROID_HOME=/usr/lib/android-sdk
|
|
# xenial's aapt is too old
|
|
- wget --no-verbose https://dl.google.com/android/repository/build-tools_r27.0.1-linux.zip
|
|
- unzip -q build-tools_r27.0.1-linux.zip
|
|
- rm build-tools_r27.0.1-linux.zip
|
|
- mv android-8.1.0 $ANDROID_HOME/build-tools/27.0.1
|
|
- export LANG=C.UTF-8
|
|
- cd tests
|
|
- ./run-tests
|
|
|
|
pip_install:
|
|
image: archlinux/base
|
|
only:
|
|
- master@fdroid/fdroidserver
|
|
script:
|
|
- pacman --sync --sysupgrade --refresh --noconfirm grep python-pip python-virtualenv tar
|
|
# setup venv to act as release build machine
|
|
- python -m venv sdist-env
|
|
- . sdist-env/bin/activate
|
|
- ./setup.py compile_catalog sdist
|
|
- deactivate
|
|
- tar tzf dist/fdroidserver-*.tar.gz | grep locale/de/LC_MESSAGES/fdroidserver.mo
|
|
# back to bare machine to act as user's install machine
|
|
- pip install dist/fdroidserver-*.tar.gz
|
|
- test -e /usr/share/locale/de/LC_MESSAGES/fdroidserver.mo
|
|
- fdroid
|
|
- fdroid readmeta
|
|
- fdroid update --help
|
|
|
|
fedora_latest:
|
|
image: fedora:latest
|
|
only:
|
|
- master@fdroid/fdroidserver
|
|
script:
|
|
- dnf -y update
|
|
- dnf -y install git gnupg java-1.8.0-openjdk-devel python3 python3-babel
|
|
python3-pip rsync unzip wget
|
|
- ./setup.py compile_catalog sdist
|
|
- useradd -m -c "test account" --password "fakepassword" testuser
|
|
- su testuser --login --command "cd `pwd`; pip3 install --user dist/fdroidserver-*.tar.gz"
|
|
- test -e ~testuser/.local/share/locale/de/LC_MESSAGES/fdroidserver.mo
|
|
- wget --no-verbose -O tools.zip https://dl.google.com/android/repository/tools_r25.2.4-linux.zip
|
|
- unzip -q tools.zip
|
|
- rm tools.zip
|
|
- export ANDROID_HOME=`pwd`/android-sdk
|
|
- mkdir $ANDROID_HOME
|
|
- mv tools $ANDROID_HOME/
|
|
- mkdir -p $ANDROID_HOME/licenses/
|
|
- printf "\n8933bad161af4178b1185d1a37fbf41ea5269c55\nd56f5187479451eabf01fb78af6dfcb131a6481e" > $ANDROID_HOME/licenses/android-sdk-license
|
|
- printf "\n84831b9409646a918e30573bab4c9c91346d8abd" > $ANDROID_HOME/licenses/android-sdk-preview-license
|
|
- printf "\n79120722343a6f314e0719f863036c702b0e6b2a\n84831b9409646a918e30573bab4c9c91346d8abd" > $ANDROID_HOME/licenses/android-sdk-preview-license-old
|
|
- mkdir ~/.android
|
|
- touch ~/.android/repositories.cfg
|
|
- echo y | $ANDROID_HOME/tools/bin/sdkmanager "platform-tools"
|
|
- echo y | $ANDROID_HOME/tools/bin/sdkmanager "build-tools;25.0.2"
|
|
- chown -R testuser .
|
|
- cd tests
|
|
- su testuser --login --command
|
|
"cd `pwd`; export ANDROID_HOME=$ANDROID_HOME; fdroid=~testuser/.local/bin/fdroid ./run-tests"
|