mirror of
https://github.com/sudoxnym/fdroiddata.git
synced 2026-07-14 02:01:42 +00:00
gitlab.ci: use official buildserver image for builds
fdroidservers#119 fdroidserver!1069
This commit is contained in:
parent
54c8331517
commit
52c19f6046
1 changed files with 29 additions and 47 deletions
|
|
@ -209,7 +209,7 @@ checkupdates_runner:
|
||||||
- 'grep -v "INFO: Processing" /tmp/out || true'
|
- 'grep -v "INFO: Processing" /tmp/out || true'
|
||||||
|
|
||||||
fdroid build:
|
fdroid build:
|
||||||
image: registry.gitlab.com/fdroid/ci-images-client:latest
|
image: registry.gitlab.com/fdroid/fdroidserver:buildserver
|
||||||
artifacts:
|
artifacts:
|
||||||
name: "${CI_PROJECT_PATH}_${CI_JOB_STAGE}_${CI_COMMIT_REF_NAME}_${CI_COMMIT_SHA}"
|
name: "${CI_PROJECT_PATH}_${CI_JOB_STAGE}_${CI_COMMIT_REF_NAME}_${CI_COMMIT_SHA}"
|
||||||
paths:
|
paths:
|
||||||
|
|
@ -244,48 +244,37 @@ fdroid build:
|
||||||
- test -n "$(printf "$CHANGED" | tr -d '[:space:]')"
|
- test -n "$(printf "$CHANGED" | tr -d '[:space:]')"
|
||||||
|| { echo "no packages need processing, exiting"; exit 0; }
|
|| { echo "no packages need processing, exiting"; exit 0; }
|
||||||
|
|
||||||
- test -d fdroidserver || mkdir fdroidserver
|
- apt-get update
|
||||||
|
- apt-get dist-upgrade
|
||||||
|
|
||||||
|
- source /etc/profile.d/bsenv.sh
|
||||||
|
|
||||||
|
# TODO remove sdkmanager install once it is included in the buildserver image
|
||||||
|
- git clone --depth=1 --branch=0.5.2 https://gitlab.com/fdroid/sdkmanager.git
|
||||||
|
- git -C sdkmanager checkout -B master 59374827baed7020c9761d9c8f51dcf9b490ba28
|
||||||
|
- pip3 install -e sdkmanager
|
||||||
|
- rm -rf $ANDROID_HOME/tools # TODO remove once sdkmanager can upgrade installed packages
|
||||||
|
- sdkmanager "tools" "platform-tools" "build-tools;31.0.0"
|
||||||
|
|
||||||
|
- test -d $fdroidserver || mkdir $fdroidserver
|
||||||
- git ls-remote https://gitlab.com/fdroid/fdroidserver.git master
|
- git ls-remote https://gitlab.com/fdroid/fdroidserver.git master
|
||||||
- curl --silent https://gitlab.com/fdroid/fdroidserver/-/archive/master/fdroidserver-master.tar.gz
|
- curl --silent https://gitlab.com/fdroid/fdroidserver/-/archive/master/fdroidserver-master.tar.gz
|
||||||
| tar -xz --directory=fdroidserver --strip-components=1
|
| tar -xz --directory=$fdroidserver --strip-components=1
|
||||||
|
|
||||||
- adduser --disabled-password --gecos "" vagrant
|
- for d in logs tmp unsigned $home_vagrant/build $home_vagrant/.android; do
|
||||||
- test -d /etc/sudoers.d || mkdir /etc/sudoers.d
|
|
||||||
- echo "vagrant ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/vagrant
|
|
||||||
|
|
||||||
- export VAGRANT_HOME=/home/vagrant
|
|
||||||
- ln -s $CI_PROJECT_DIR/fdroidserver $VAGRANT_HOME/fdroidserver
|
|
||||||
- cp -r $HOME/.android $VAGRANT_HOME/.android
|
|
||||||
- for d in build logs tmp unsigned $ANDROID_HOME $VAGRANT_HOME/.android; do
|
|
||||||
test -d $d || mkdir $d;
|
test -d $d || mkdir $d;
|
||||||
chown -R vagrant $d;
|
chown -R vagrant $d;
|
||||||
done
|
done
|
||||||
- mv $CI_PROJECT_DIR/build $VAGRANT_HOME/
|
- ln -s $home_vagrant/build $CI_PROJECT_DIR/build
|
||||||
- ln -s $VAGRANT_HOME/build $CI_PROJECT_DIR/build
|
|
||||||
|
|
||||||
- bash fdroidserver/buildserver/setup-env-vars $ANDROID_HOME
|
- export GRADLE_USER_HOME=$home_vagrant/.gradle
|
||||||
- bash fdroidserver/buildserver/provision-gradle
|
|
||||||
- bash fdroidserver/buildserver/provision-apt-get-install http://deb.debian.org/debian
|
|
||||||
- source /etc/profile.d/bsenv.sh
|
|
||||||
- apt-get dist-upgrade
|
|
||||||
|
|
||||||
# install fdroidserver from git, with deps from Debian, until fdroidserver
|
|
||||||
# is stable enough to include all the things needed here
|
|
||||||
- apt-get install -t stretch-backports
|
|
||||||
fdroidserver
|
|
||||||
python3-asn1crypto
|
|
||||||
python3-ruamel.yaml
|
|
||||||
yamllint
|
|
||||||
- apt-get purge fdroidserver
|
|
||||||
|
|
||||||
- export GRADLE_USER_HOME=$VAGRANT_HOME/.gradle
|
|
||||||
# each `fdroid build --on-server` run expects sudo, then uninstalls it
|
# each `fdroid build --on-server` run expects sudo, then uninstalls it
|
||||||
- export fdroid="sudo --preserve-env --user vagrant
|
- export fdroid="sudo --preserve-env --user vagrant
|
||||||
env PATH=$VAGRANT_HOME/fdroidserver:$PATH
|
env PATH=$fdroidserver:$PATH
|
||||||
env PYTHONPATH=$VAGRANT_HOME/fdroidserver:$VAGRANT_HOME/fdroidserver/examples
|
env PYTHONPATH=$fdroidserver:$fdroidserver/examples
|
||||||
env PYTHONUNBUFFERED=true
|
env PYTHONUNBUFFERED=true
|
||||||
env TERM=$TERM
|
env TERM=$TERM
|
||||||
env HOME=$VAGRANT_HOME
|
env HOME=$home_vagrant
|
||||||
fdroid"
|
fdroid"
|
||||||
|
|
||||||
# use fdroidserver test keystore as placeholder since `fdroid publish` requires it
|
# use fdroidserver test keystore as placeholder since `fdroid publish` requires it
|
||||||
|
|
@ -293,14 +282,14 @@ fdroid build:
|
||||||
- printf 'keystorepass\x3a r9aquRHYoI8+dYz6jKrLntQ5/NJNASFBacJh7Jv2BlI=\n' >> config.yml
|
- printf 'keystorepass\x3a r9aquRHYoI8+dYz6jKrLntQ5/NJNASFBacJh7Jv2BlI=\n' >> config.yml
|
||||||
- printf 'keypass\x3a r9aquRHYoI8+dYz6jKrLntQ5/NJNASFBacJh7Jv2BlI=\n' >> config.yml
|
- printf 'keypass\x3a r9aquRHYoI8+dYz6jKrLntQ5/NJNASFBacJh7Jv2BlI=\n' >> config.yml
|
||||||
- printf 'keydname\x3a "CN=Birdman, OU=Cell, O=Alcatraz, L=Alcatraz, S=California, C=US"\n' >> config.yml
|
- printf 'keydname\x3a "CN=Birdman, OU=Cell, O=Alcatraz, L=Alcatraz, S=California, C=US"\n' >> config.yml
|
||||||
- keystore=$CI_PROJECT_DIR/fdroidserver/tests/keystore.jks
|
- keystore=$fdroidserver/tests/keystore.jks
|
||||||
- printf "keystore\x3a $keystore\n" >> config.yml
|
- printf "keystore\x3a $keystore\n" >> config.yml
|
||||||
- chown vagrant $keystore
|
- chown vagrant $keystore
|
||||||
|
|
||||||
- for build in `./tools/find-changed-builds.py`; do
|
- for build in `./tools/find-changed-builds.py`; do
|
||||||
set -x;
|
set -x;
|
||||||
apt-get install sudo;
|
apt-get install sudo;
|
||||||
chown -R vagrant $VAGRANT_HOME;
|
chown -R vagrant $home_vagrant;
|
||||||
$fdroid fetchsrclibs $build --verbose;
|
$fdroid fetchsrclibs $build --verbose;
|
||||||
$fdroid build --verbose --test --scan-binary --on-server --no-tarball $build;
|
$fdroid build --verbose --test --scan-binary --on-server --no-tarball $build;
|
||||||
rm -rf "build/${build%:*}";
|
rm -rf "build/${build%:*}";
|
||||||
|
|
@ -323,7 +312,7 @@ fdroid build:
|
||||||
# This job has to be called 'pages' because it deploys the JSON API
|
# This job has to be called 'pages' because it deploys the JSON API
|
||||||
# to GitLab Pages.
|
# to GitLab Pages.
|
||||||
pages:
|
pages:
|
||||||
image: registry.gitlab.com/fdroid/ci-images-client:latest
|
image: registry.gitlab.com/fdroid/fdroidserver:buildserver
|
||||||
only:
|
only:
|
||||||
refs:
|
refs:
|
||||||
- branches
|
- branches
|
||||||
|
|
@ -345,20 +334,13 @@ pages:
|
||||||
script:
|
script:
|
||||||
- apt-get update
|
- apt-get update
|
||||||
- apt-get dist-upgrade
|
- apt-get dist-upgrade
|
||||||
# install fdroidserver from git, with deps from Debian, until fdroidserver
|
|
||||||
# is stable enough to include all the things needed here
|
- test -d $fdroidserver || mkdir $fdroidserver
|
||||||
- apt-get install -t stretch-backports
|
|
||||||
fdroidserver
|
|
||||||
python3-asn1crypto
|
|
||||||
python3-ruamel.yaml
|
|
||||||
python3-venv
|
|
||||||
- apt-get purge fdroidserver
|
|
||||||
- test -d fdroidserver || mkdir fdroidserver
|
|
||||||
- git ls-remote https://gitlab.com/fdroid/fdroidserver.git master
|
- git ls-remote https://gitlab.com/fdroid/fdroidserver.git master
|
||||||
- curl --silent https://gitlab.com/fdroid/fdroidserver/-/archive/master/fdroidserver-master.tar.gz
|
- curl --silent https://gitlab.com/fdroid/fdroidserver/-/archive/master/fdroidserver-master.tar.gz
|
||||||
| tar -xz --directory=$CI_PROJECT_DIR/fdroidserver --strip-components=1
|
| tar -xz --directory=$fdroidserver --strip-components=1
|
||||||
- export PATH="$CI_PROJECT_DIR/fdroidserver:$PATH"
|
- export PATH="$fdroidserver:$PATH"
|
||||||
- export PYTHONPATH="$CI_PROJECT_DIR/fdroidserver:$CI_PROJECT_DIR/fdroidserver/examples"
|
- export PYTHONPATH="$fdroidserver:$fdroidserver/examples"
|
||||||
- export PYTHONUNBUFFERED=true
|
- export PYTHONUNBUFFERED=true
|
||||||
|
|
||||||
- export GRADLE_USER_HOME=$PWD/.gradle
|
- export GRADLE_USER_HOME=$PWD/.gradle
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue