chiark / gitweb /
Merge branch 'syntaxfix' into 'master'
[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 pip_install:
70   image: archlinux/base
71   only:
72     - master@fdroid/fdroidserver
73   script:
74     - pacman --sync --sysupgrade --refresh --noconfirm grep python-pip python-virtualenv tar
75     # setup venv to act as release build machine
76     - python -m venv sdist-env
77     - . sdist-env/bin/activate
78     - ./setup.py compile_catalog sdist
79     - deactivate
80     - tar tzf dist/fdroidserver-*.tar.gz | grep locale/de/LC_MESSAGES/fdroidserver.mo
81     # back to bare machine to act as user's install machine
82     - pip install dist/fdroidserver-*.tar.gz
83     - test -e /usr/share/locale/de/LC_MESSAGES/fdroidserver.mo
84     - fdroid
85     - fdroid readmeta
86     - fdroid update --help
87
88 fedora_latest:
89   image: fedora:latest
90   only:
91     - master@fdroid/fdroidserver
92   script:
93     - dnf -y update
94     - dnf -y install git gnupg java-1.8.0-openjdk-devel python3 python3-babel
95                      python3-pip rsync unzip wget
96     - ./setup.py compile_catalog sdist
97     - useradd -m -c "test account" --password "fakepassword"  testuser
98     - su testuser --login --command "cd `pwd`; pip3 install --user dist/fdroidserver-*.tar.gz"
99     - test -e ~testuser/.local/share/locale/de/LC_MESSAGES/fdroidserver.mo
100     - wget --no-verbose -O tools.zip https://dl.google.com/android/repository/tools_r25.2.4-linux.zip
101     - unzip -q tools.zip
102     - rm tools.zip
103     - export ANDROID_HOME=`pwd`/android-sdk
104     - mkdir $ANDROID_HOME
105     - mv tools $ANDROID_HOME/
106     - mkdir -p $ANDROID_HOME/licenses/
107     - printf "\n8933bad161af4178b1185d1a37fbf41ea5269c55\nd56f5187479451eabf01fb78af6dfcb131a6481e" > $ANDROID_HOME/licenses/android-sdk-license
108     - printf "\n84831b9409646a918e30573bab4c9c91346d8abd" > $ANDROID_HOME/licenses/android-sdk-preview-license
109     - printf "\n79120722343a6f314e0719f863036c702b0e6b2a\n84831b9409646a918e30573bab4c9c91346d8abd" > $ANDROID_HOME/licenses/android-sdk-preview-license-old
110     - mkdir ~/.android
111     - touch ~/.android/repositories.cfg
112     - echo y | $ANDROID_HOME/tools/bin/sdkmanager "platform-tools"
113     - echo y | $ANDROID_HOME/tools/bin/sdkmanager "build-tools;25.0.2"
114     - chown -R testuser .
115     - cd tests
116     - su testuser --login --command
117         "cd `pwd`; export ANDROID_HOME=$ANDROID_HOME; fdroid=~testuser/.local/bin/fdroid ./run-tests"