chiark / gitweb /
build: fix --no-refresh
[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     - sed -i -e '/LiberapayID/d'
29           metadata/dump_*/*.yaml
30     - diff -uw metadata/dump_*
31
32 debian_testing:
33   image: debian:testing
34   only:
35     - master@fdroid/fdroidserver
36   script:
37     - apt update -y
38     - apt dist-upgrade -y
39     - apt-get install -y --no-install-recommends
40         aapt adb android-platform-tools-base android-sdk-common fdroidserver
41         git gnupg python3-setuptools zipalign
42     - export ANDROID_HOME=/usr/lib/android-sdk
43     - export LANG=C.UTF-8
44     - cd tests
45     - rm -f install.TestCase  # fails frequently and is unimportant
46     - ./run-tests
47
48 ubuntu_lts:
49   image: ubuntu:latest
50   only:
51     - master@fdroid/fdroidserver
52   script:
53     - apt-key adv --keyserver hkp://pool.sks-keyservers.net --recv-key 9AAC253193B65D4DF1D0A13EEC4632C79C5E0151
54     - export RELEASE=`sed -n 's,^deb [^ ][^ ]* \([a-z]*\).*,\1,p' /etc/apt/sources.list | head -1`
55     - echo "deb http://ppa.launchpad.net/fdroid/fdroidserver/ubuntu $RELEASE main" >> /etc/apt/sources.list
56     - apt update -y
57     - apt dist-upgrade -y
58     - apt-get install -y --no-install-recommends
59         aapt adb android-platform-tools-base android-sdk-common fdroidserver
60         git gnupg python3-setuptools unzip wget zipalign
61     - export ANDROID_HOME=/usr/lib/android-sdk
62     # xenial's aapt is too old
63     - wget --no-verbose https://dl.google.com/android/repository/build-tools_r27.0.1-linux.zip
64     - unzip -q build-tools_r27.0.1-linux.zip
65     - rm build-tools_r27.0.1-linux.zip
66     - mv android-8.1.0 $ANDROID_HOME/build-tools/27.0.1
67     - export LANG=C.UTF-8
68     - cd tests
69     - ./run-tests
70
71 pip_install:
72   image: archlinux/base
73   only:
74     - master@fdroid/fdroidserver
75   script:
76     - pacman --sync --sysupgrade --refresh --noconfirm grep python-pip python-virtualenv tar
77     # setup venv to act as release build machine
78     - python -m venv sdist-env
79     - . sdist-env/bin/activate
80     - ./setup.py compile_catalog sdist
81     - deactivate
82     - tar tzf dist/fdroidserver-*.tar.gz | grep locale/de/LC_MESSAGES/fdroidserver.mo
83     # back to bare machine to act as user's install machine
84     - pip install dist/fdroidserver-*.tar.gz
85     - test -e /usr/share/locale/de/LC_MESSAGES/fdroidserver.mo
86     - fdroid
87     - fdroid readmeta
88     - fdroid update --help
89
90 fedora_latest:
91   image: fedora:latest
92   only:
93     - master@fdroid/fdroidserver
94   script:
95     - dnf -y update
96     - dnf -y install git gnupg java-1.8.0-openjdk-devel python3 python3-babel
97                      python3-pip rsync unzip wget
98     - ./setup.py compile_catalog sdist
99     - useradd -m -c "test account" --password "fakepassword"  testuser
100     - su testuser --login --command "cd `pwd`; pip3 install --user dist/fdroidserver-*.tar.gz"
101     - test -e ~testuser/.local/share/locale/de/LC_MESSAGES/fdroidserver.mo
102     - wget --no-verbose -O tools.zip https://dl.google.com/android/repository/tools_r25.2.4-linux.zip
103     - unzip -q tools.zip
104     - rm tools.zip
105     - export ANDROID_HOME=`pwd`/android-sdk
106     - mkdir $ANDROID_HOME
107     - mv tools $ANDROID_HOME/
108     - mkdir -p $ANDROID_HOME/licenses/
109     - printf "\n8933bad161af4178b1185d1a37fbf41ea5269c55\nd56f5187479451eabf01fb78af6dfcb131a6481e" > $ANDROID_HOME/licenses/android-sdk-license
110     - printf "\n84831b9409646a918e30573bab4c9c91346d8abd" > $ANDROID_HOME/licenses/android-sdk-preview-license
111     - printf "\n79120722343a6f314e0719f863036c702b0e6b2a\n84831b9409646a918e30573bab4c9c91346d8abd" > $ANDROID_HOME/licenses/android-sdk-preview-license-old
112     - mkdir ~/.android
113     - touch ~/.android/repositories.cfg
114     - echo y | $ANDROID_HOME/tools/bin/sdkmanager "platform-tools"
115     - echo y | $ANDROID_HOME/tools/bin/sdkmanager "build-tools;25.0.2"
116     - chown -R testuser .
117     - cd tests
118     - su testuser --login --command
119         "cd `pwd`; export ANDROID_HOME=$ANDROID_HOME; fdroid=~testuser/.local/bin/fdroid ./run-tests"