mirror of
https://github.com/sudoxnym/fdroiddata.git
synced 2026-05-17 11:19:13 +00:00
Merge branch 'provision-ci-images-client' into 'master'
provision ci-images-client to work as a simplified buildserver See merge request fdroid/fdroiddata!6865
This commit is contained in:
commit
f76cbadc27
1 changed files with 53 additions and 62 deletions
115
.gitlab-ci.yml
115
.gitlab-ci.yml
|
|
@ -56,6 +56,59 @@ lint:
|
|||
- exit $EXITVALUE
|
||||
|
||||
|
||||
fdroid build:
|
||||
image: registry.gitlab.com/fdroid/ci-images-client:latest
|
||||
allow_failure: true
|
||||
artifacts:
|
||||
name: "${CI_PROJECT_PATH}_${CI_JOB_STAGE}_${CI_COMMIT_REF_NAME}_${CI_COMMIT_SHA}"
|
||||
paths:
|
||||
- unsigned/
|
||||
when: always
|
||||
expire_in: 1 month
|
||||
only:
|
||||
refs:
|
||||
- merge_requests
|
||||
changes:
|
||||
- metadata/*.yml
|
||||
cache:
|
||||
key: "$CI_JOB_NAME"
|
||||
paths:
|
||||
- .gradle
|
||||
script:
|
||||
- git fetch https://gitlab.com/fdroid/fdroiddata;
|
||||
- test -d build || mkdir build
|
||||
- for f in `git diff --name-only --diff-filter=d FETCH_HEAD...HEAD -- metadata/*.yml`; do
|
||||
git diff FETCH_HEAD...HEAD -- $f |grep -E '^\+ *(NoSourceSince|Disabled|disable):' && continue;
|
||||
appid=`echo $f | sed -n -e 's,^metadata/\([^/][^/]*\)\.yml,\1,p'`;
|
||||
export CHANGED="$CHANGED $appid";
|
||||
done;
|
||||
- test -n "$(printf "$CHANGED" | tr -d '[:space:]')"
|
||||
|| { echo "no packages need processing, exiting"; exit 0; }
|
||||
|
||||
- test -d fdroidserver || mkdir fdroidserver
|
||||
- curl --silent https://gitlab.com/fdroid/fdroidserver/repository/master/archive.tar.gz
|
||||
| tar -xz --directory=fdroidserver --strip-components=1
|
||||
- export PATH="`pwd`/fdroidserver:$PATH"
|
||||
- export PYTHONPATH="`pwd`/fdroidserver"
|
||||
- export PYTHONUNBUFFERED=true
|
||||
|
||||
- bash fdroidserver/buildserver/provision-apt-get-install http://deb.debian.org/debian
|
||||
- apt-get dist-upgrade
|
||||
- apt-get install sudo # TODO REMOVE ME once merged https://gitlab.com/fdroid/fdroidserver/-/merge_requests/753
|
||||
|
||||
# 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=$PWD/.gradle
|
||||
- fdroid build --verbose --on-server --latest --no-tarball --no-refresh $CHANGED
|
||||
|
||||
|
||||
pages:
|
||||
image: registry.gitlab.com/fdroid/ci-images-client:latest
|
||||
only:
|
||||
|
|
@ -122,65 +175,3 @@ check_git_repos:
|
|||
- test -d public || mkdir public
|
||||
- cp `git status | grep -Eo 'metadata/.*\.yml'` public/ || true
|
||||
- exit $EXITVALUE
|
||||
|
||||
fdroid-buildserver:
|
||||
tags:
|
||||
- fdroid
|
||||
- buildserver
|
||||
only:
|
||||
- DONOTRUN
|
||||
# - branches@beuc/fdroiddata
|
||||
# - branches@Bubu/fdroiddata
|
||||
# - branches@eighthave/fdroiddata
|
||||
# - branches@fdroid/fdroiddata
|
||||
# - branches@grote/fdroiddata
|
||||
# - branches@izzysoft/fdroiddata
|
||||
# - branches@schildbach/fdroiddata
|
||||
# - branches@uniqx/fdroiddata
|
||||
artifacts:
|
||||
name: "${CI_PROJECT_PATH}_${CI_JOB_STAGE}_${CI_COMMIT_REF_NAME}_${CI_COMMIT_SHA}"
|
||||
paths:
|
||||
- json
|
||||
- libscout-logs
|
||||
- logs
|
||||
- stats
|
||||
- unsigned
|
||||
expire_in: 1 week
|
||||
when: always
|
||||
cache:
|
||||
key: "$CI_JOB_NAME"
|
||||
paths:
|
||||
- build
|
||||
- unsigned
|
||||
script:
|
||||
- virsh -c qemu:///system destroy builder_default || true
|
||||
- virsh -c qemu:///system undefine builder_default
|
||||
--nvram --managed-save --remove-all-storage --snapshots-metadata || true
|
||||
- git -C $HOME/fdroidserver reset --hard
|
||||
- git -C $HOME/fdroidserver checkout -B master origin/master
|
||||
- export PATH="$HOME/fdroidserver:$PATH"
|
||||
- if [ "$CI_PROJECT_NAMESPACE" = "fdroid" ]; then
|
||||
export head=HEAD^^^;
|
||||
echo ORIG_HEAD `git diff --name-only --diff-filter=d ORIG_HEAD...HEAD
|
||||
| sed -n -e 's,^metadata/\([^/][^/]*\)\.yml,\1,p'`;
|
||||
else
|
||||
git fetch https://gitlab.com/fdroid/fdroiddata.git;
|
||||
export head=FETCH_HEAD;
|
||||
fi
|
||||
- export appids=`git diff --name-only --diff-filter=d $head...HEAD
|
||||
| sed -n -e 's,^metadata/\([^/][^/]*\)\.yml,\1,p'`
|
||||
- echo $appids | grep '\w' || exit 0
|
||||
- fdroid build --verbose --server --stop --no-tarball --latest $appids
|
||||
- find unsigned -maxdepth 0 -empty -exec exit 0 \;
|
||||
- cd ~/libscout
|
||||
- java -jar build/LibScout.jar -o match -a lib/android-23.jar -p profiles
|
||||
-j $CI_PROJECT_DIR/json
|
||||
-s $CI_PROJECT_DIR/stats
|
||||
-d $CI_PROJECT_DIR/libscout-logs
|
||||
$CI_PROJECT_DIR/unsigned
|
||||
- for f in $CI_PROJECT_DIR/libscout-logs/*.log; do printf "\n\n$f\n"; cut -b43-160 $f; done
|
||||
- for f in `find $CI_PROJECT_DIR/json -name \*.json`; do cat $f | python3 -m json.tool; done
|
||||
after_script:
|
||||
- test -d builder || exit 0
|
||||
- cd builder
|
||||
- vagrant destroy --force
|
||||
|
|
|
|||
Loading…
Reference in a new issue