From a0d2553797fc12290249b5077b1bb1c1092e20b5 Mon Sep 17 00:00:00 2001 From: Drew DeVault Date: Tue, 29 Jan 2019 15:30:03 -0500 Subject: Update builds to use pkgkit --- .builds/alpine.yml | 72 ++++++++++++++------------------------------------- .builds/archlinux.yml | 48 ++++++++++------------------------ 2 files changed, 33 insertions(+), 87 deletions(-) diff --git a/.builds/alpine.yml b/.builds/alpine.yml index e5c07c2..719a59e 100644 --- a/.builds/alpine.yml +++ b/.builds/alpine.yml @@ -6,71 +6,39 @@ repositories: alpine@sr.ht.rsa.pub packages: - rsync - - xz sources: - https://git.sr.ht/~sircmpwn/man.sr.ht - https://git.sr.ht/~sircmpwn/sr.ht-apkbuilds environment: project: man.sr.ht - repo_server: deploy@mirror.sr.ht - repo_path: /var/www/mirror.sr.ht/alpine/sr.ht/x86_64 - master: man.sr.ht + remote: deploy@mirror.sr.ht + remote_path: /var/www/mirror.sr.ht/alpine + master: deploy@man.sr.ht secrets: - fa00a8d3-7b63-42d5-8060-3bb31c3e3018 # ssh deploy key - d0adc1d4-af78-4852-920f-1134392f5d10 # package signing key tasks: - archive: | cd ${project} - pkgver=$(git describe --abbrev=0) - if ! git describe --exact-match HEAD - then - cdate=$(git show -s -1 --format='%ci' HEAD) - cdate=$(echo "$cdate" | cut -d' ' -f1 | sed -e 's/-//g') - pkgver="${pkgver}_git${cdate}" - fi + pkgver=$(~/sr.ht-apkbuilds/pkgkit pkgver) echo "pkgver=$pkgver" >> ~/.buildenv - git archive --prefix=${project}-$pkgver/ HEAD | xz \ - > ~/sr.ht-apkbuilds/sr.ht/${project}/${project}-$pkgver.tar.xz + git archive \ + -o ~/sr.ht-apkbuilds/sr.ht/${project}/${project}-$pkgver.tar.gz \ + --prefix=${project}-$pkgver/ HEAD + - pkgkit: | + cd sr.ht-apkbuilds + ./pkgkit add-repo -s sr.ht ~/.abuild/alpine@sr.ht.rsa + cd sr.ht/$project + sed -e 's?::https://git.sr.ht/.*archive.*??g' -i APKBUILD - package: | - cd sr.ht-apkbuilds/sr.ht/${project} - echo 'PACKAGER_PRIVKEY="/home/build/.abuild/alpine@sr.ht.rsa"' >> \ - ~/.abuild/abuild.conf - prev_pkgver=$(apk search -x ${project} | cut -d '-' -f3-) - prev_pkgrel=$(printf "%s" "$prev_pkgver" | cut -d'-' -f2 | cut -c2-) - prev_pkgver=$(printf "%s" "$prev_pkgver" | cut -d'-' -f1) - if [ "$prev_pkgver" = "$pkgver" ] - then - pkgrel=$(($prev_pkgrel + 1)) - else - pkgrel=1 - fi - sed -e "s/pkgver=.*/pkgver=$pkgver/" -i APKBUILD - sed -e "s/pkgrel=.*/pkgrel=$pkgrel/" -i APKBUILD - sed -e "s?http://git.sr.ht/.*/snapshot/??g" -i APKBUILD - cat APKBUILD - echo "pkgrel=$pkgrel" >> ~/.buildenv - abuild checksum - abuild -r - cd ~/${project} + cd sr.ht-apkbuilds + ./pkgkit build -cuv "$pkgver" "$project" + cd ~/$project git describe --exact-match HEAD || complete-build - publish: | - cd ~/packages/sr.ht/x86_64 - sshopts="-o StrictHostKeyChecking=no" - set -u - ssh $sshopts $repo_server rm -f $repo_path/${project}'*.apk' - rsync --blocking-io \ - -rPe "ssh $sshopts" *.apk $repo_server:$repo_path/ - ssh $sshopts $repo_server find $repo_path -type f -name '*.apk' -print0 | - ssh $sshopts $repo_server xargs -0 apk index \ - --rewrite-arch x86_64 \ - -x $repo_path/APKINDEX.tar.gz \ - -o $repo_path/APKINDEX.unsigned.tar.gz - rsync --blocking-io -rPe "ssh $sshopts" \ - $repo_server:$repo_path/APKINDEX.unsigned.tar.gz APKINDEX.tar.gz - abuild-sign -k ~/.abuild/alpine@sr.ht.rsa APKINDEX.tar.gz - rsync --blocking-io -rPe "ssh $sshopts" \ - APKINDEX.tar.gz $repo_server:$repo_path/ + cd sr.ht-apkbuilds + echo "StrictHostKeyChecking=no" >> ~/.ssh/config + ./pkgkit upload "$remote" "$remote_path" "$project" - deploy: | - sshopts="-o StrictHostKeyChecking=no" - ssh $sshopts deploy@$master doas apk upgrade -U - ssh $sshopts deploy@$master doas service man.sr.ht restart + ssh $master doas apk upgrade -U + ssh $master doas service $project restart diff --git a/.builds/archlinux.yml b/.builds/archlinux.yml index 3909b10..69e3dd9 100644 --- a/.builds/archlinux.yml +++ b/.builds/archlinux.yml @@ -2,53 +2,31 @@ image: archlinux repositories: sr.ht: https://mirror.sr.ht/archlinux/sr.ht/#1ED4E14494433AE3FD302CAB74B4BCCEA60D0437 packages: - - sassc - - python-setuptools - - python-srht - - python-pygit2 - - python-celery - - python-redis - - python-flask-login - rsync - pacman-contrib sources: - https://git.sr.ht/~sircmpwn/man.sr.ht - https://git.sr.ht/~sircmpwn/sr.ht-pkgbuilds environment: - repo_server: deploy@mirror.sr.ht - repo_path: /var/www/mirror.sr.ht/archlinux/sr.ht/ + project: man.sr.ht + remote: deploy@mirror.sr.ht + remote_path: /var/www/mirror.sr.ht/archlinux secrets: - fa00a8d3-7b63-42d5-8060-3bb31c3e3018 # ssh deploy key - 3e65a1a8-a20f-4f6b-a452-df2ac398bc1e # package signing key tasks: - - build: | - cd man.sr.ht - ./setup.py build - archive: | - cd man.sr.ht + cd ${project} pkgver=$(git describe | sed -e 's/-/_/g') echo "pkgver=$pkgver" >> ~/.buildenv - git archive -o ~/sr.ht-pkgbuilds/man.sr.ht/man.sr.ht-$pkgver.tar.xz \ - --prefix=man.sr.ht-$pkgver/ HEAD + git archive -o ~/sr.ht-pkgbuilds/$project/$project-$pkgver.tar.gz \ + --prefix=$project-$pkgver/ HEAD - package: | - cd sr.ht-pkgbuilds/man.sr.ht - pkgrel=$(pacman -Si man.sr.ht | grep Version | cut -d'-' -f2) - pkgrel=$(expr $pkgrel + 1) - sed -e "s/pkgver=.*/pkgver=$pkgver/" -i PKGBUILD - sed -e "s/pkgrel=.*/pkgrel=$pkgrel/" -i PKGBUILD - echo "pkgrel=$pkgrel" >> ~/.buildenv - updpkgsums - makepkg --config ../makepkg.conf -s --noconfirm - cd ~/man.sr.ht + cd sr.ht-pkgbuilds + ./pkgkit build -cuv "$pkgver" $project + cd ~/$project git describe --exact-match HEAD || complete-build - - deploy: | - cd sr.ht-pkgbuilds/man.sr.ht - sshopts="-o StrictHostKeyChecking=no" # TODO: remove this when builds run on a tty - rsync --blocking-io \ - --rsh="ssh $sshopts" -rP *.pkg.tar.xz{,.sig} $repo_server:$repo_path/ - ssh $sshopts $repo_server repo-add -n -R \ - $repo_path/sr.ht.db.tar.gz \ - $repo_path/man.sr.ht-$pkgver-$pkgrel-any.pkg.tar.xz - ssh $sshopts $repo_server repo-add -n -R \ - $repo_path/sr.ht.db.tar.gz \ - $repo_path/man.sr.ht-images-$pkgver-$pkgrel-any.pkg.tar.xz + - publish: | + cd sr.ht-pkgbuilds + echo "StrictHostKeyChecking=no" >> ~/.ssh/config + ./pkgkit upload "$remote" "$remote_path" sr.ht $project -- cgit v1.2.3