workflow: rules: - if: $CI_COMMIT_BRANCH == "master" stages: - fetch - build - upload default: image: alpine:edge cache: key: repodest paths: [repodest/] before_script: # setup ssh - apk add openssh-keygen - mkdir $HOME/.ssh - chmod 600 $PRIVATE_KEY - echo "repo.ptrc.gay ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGTcxqAgqWGqVDH5lscsXVp6eWxFblarg+YA1EPxjUvm" > $HOME/.ssh/known_hosts - echo "IdentityFile $PRIVATE_KEY" > $HOME/.ssh/config # setup abuild - confdir=/home/buildozer/.abuild - keyname=alpine@ptrcnull.me-60610fa4.rsa - mkdir -p $confdir - cp $PACKAGER_PRIVKEY $confdir/$keyname - chown 600 $confdir/$keyname - echo "PACKAGER_PRIVKEY=$confdir/$keyname" > $confdir/abuild.conf - ssh-keygen -e -m pkcs8 -f $confdir/$keyname > $confdir/$keyname.pub # add our own key to trusted keys - cp ptrcports-keys/*.pub /etc/apk/keys/ - chown -R 1000:1000 /home/buildozer - mkdir -p repodest fetch: stage: fetch script: - apk add openssh-client rsync - rsync --archive --update --hard-links --delete --delete-after --delay-updates buildozer@repo.ptrc.gay:repodest/ repodest/ build-x86_64: &build stage: build resource_group: build script: - apk add lua-aports alpine-sdk s6 - adduser -D buildozer - adduser buildozer abuild - chown -R buildozer:buildozer * - s6-setuidgid buildozer env HOME=/home/buildozer buildrepo --aports $PWD/.. --destdir $PWD/repodest --purge ptrcports build-aarch64: <<: *build image: arm64v8/alpine:edge # build-armhf: # <<: *build # image: arm32v6/alpine:edge # build-armv7: # <<: *build # image: arm32v7/alpine:edge # build-ppc64le: # <<: *build # image: ppc64le/alpine:edge # build-riscv64: # <<: *build # image: riscv64/alpine:edge # build-s390x: # <<: *build # image: s390x/alpine:edge # build-x86: # <<: *build # image: i386/alpine:edge upload: stage: upload script: - apk add openssh-client rsync - rsync --archive --update --hard-links --delete --delete-after --delay-updates repodest/ buildozer@repo.ptrc.gay:repodest/