chiark / gitweb /
gitlab-ci: add test runs on Ubuntu, Debian/testing, Fedora
[fdroidserver.git] / .gitlab-ci.yml
1
2 test:
3   image: registry.gitlab.com/fdroid/ci-images-server:latest
4   script:
5     - pip3 install -e .
6     - cd tests
7     - ./complete-ci-tests
8
9 # Test that the parsing of the .txt format didn't change from last
10 # released version. Ensure that the official tags are included when
11 # running these tests on forks as well.
12 metadata_v0:
13   image: registry.gitlab.com/fdroid/ci-images-server:latest
14   script:
15     - git fetch https://gitlab.com/fdroid/fdroidserver 0.8
16     - cd tests
17     - export GITCOMMIT=`git describe`
18     - git checkout 0.8  # bump after release
19     - cd ..
20     - git clone --depth 1 https://gitlab.com/fdroid/fdroiddata
21     - cd fdroiddata
22     - ../tests/dump_internal_metadata_format.py
23     - cd ..
24     - git reset --hard
25     - git checkout $GITCOMMIT
26     - cd fdroiddata
27     - ../tests/dump_internal_metadata_format.py
28     - diff -uw metadata/dump_*
29
30 debian_testing:
31   image: debian:testing
32   only:
33     - master@fdroid/fdroidserver
34   script:
35     - apt update -y
36     - apt dist-upgrade -y
37     - apt-get install -y --no-install-recommends
38         aapt adb android-platform-tools-base android-sdk-common fdroidserver
39         git gnupg python3-setuptools zipalign
40     - export ANDROID_HOME=/usr/lib/android-sdk
41     - export LANG=C.UTF-8
42     - cd tests
43     - rm -f install.TestCase  # fails frequently and is unimportant
44     - ./run-tests
45
46 ubuntu_lts:
47   image: ubuntu:latest
48   only:
49     - master@fdroid/fdroidserver
50   script:
51     - apt-key adv --keyserver hkp://pool.sks-keyservers.net --recv-key 9AAC253193B65D4DF1D0A13EEC4632C79C5E0151
52     - export RELEASE=`sed -n 's,^deb [^ ][^ ]* \([a-z]*\).*,\1,p' /etc/apt/sources.list | head -1`
53     - echo "deb http://ppa.launchpad.net/fdroid/fdroidserver/ubuntu $RELEASE main" >> /etc/apt/sources.list
54     - apt update -y
55     - apt dist-upgrade -y
56     - apt-get install -y --no-install-recommends
57         aapt adb android-platform-tools-base android-sdk-common fdroidserver
58         git gnupg python3-setuptools unzip wget zipalign
59     - export ANDROID_HOME=/usr/lib/android-sdk
60     # xenial's aapt is too old
61     - wget --no-verbose https://dl.google.com/android/repository/build-tools_r27.0.1-linux.zip
62     - unzip -q build-tools_r27.0.1-linux.zip
63     - rm build-tools_r27.0.1-linux.zip
64     - mv android-8.1.0 $ANDROID_HOME/build-tools/27.0.1
65     - export LANG=C.UTF-8
66     - cd tests
67     - ./run-tests
68
69 fedora_latest:
70   image: fedora:latest
71   only:
72     - master@fdroid/fdroidserver
73   script:
74     - dnf -y update
75     - dnf -y install git gnupg java-1.8.0-openjdk-devel python3 python3-pip rsync unzip wget
76     - pip3 install -e .
77     - wget --no-verbose -O tools.zip https://dl.google.com/android/repository/tools_r25.2.4-linux.zip
78     - unzip -q tools.zip
79     - rm tools.zip
80     - export ANDROID_HOME=~/android-sdk
81     - mkdir $ANDROID_HOME
82     - mv tools $ANDROID_HOME/
83     - mkdir -p $ANDROID_HOME/licenses/
84     - printf "\n8933bad161af4178b1185d1a37fbf41ea5269c55\nd56f5187479451eabf01fb78af6dfcb131a6481e" > $ANDROID_HOME/licenses/android-sdk-license
85     - printf "\n84831b9409646a918e30573bab4c9c91346d8abd" > $ANDROID_HOME/licenses/android-sdk-preview-license
86     - printf "\n79120722343a6f314e0719f863036c702b0e6b2a\n84831b9409646a918e30573bab4c9c91346d8abd" > $ANDROID_HOME/licenses/android-sdk-preview-license-old
87     - mkdir ~/.android
88     - touch ~/.android/repositories.cfg
89     - echo y | $ANDROID_HOME/tools/bin/sdkmanager "platform-tools"
90     - echo y | $ANDROID_HOME/tools/bin/sdkmanager "build-tools;25.0.2"
91     - cd tests
92     - ./run-tests