diff options
| author | Leonardo Bishop <me@leonardobishop.net> | 2025-10-14 16:57:11 +0100 |
|---|---|---|
| committer | Leonardo Bishop <me@leonardobishop.net> | 2025-10-14 16:57:11 +0100 |
| commit | 7311c9a235deca9090faaaae6a03d37e960430f4 (patch) | |
| tree | 81ea4319264fa226135731c6f45798a6941c8547 | |
| -rw-r--r-- | Jenkinsfile | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 0000000..56911d9 --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,39 @@ +pipeline { + agent any + + stages { + stage('Clone package source') { + steps { + sh 'echo "Repo: ${env.GIT_URL}"' + sh 'git clone ${env.GIT_URL} src' + } + } + + stage('Build in chroot') { + steps { + sh ''' + docker run --rm -i \ + -v $PWD/src:/home/builder/pkg \ + -v $PWD/builds:/home/builder/builds \ + archlinux:latest bash -c " + pacman -Syu --noconfirm base-devel git sudo devtools && \ + useradd -m builder && \ + echo 'builder ALL=(ALL) NOPASSWD: ALL' > /etc/sudoers.d/builder && \ + chown -R builder:builder /home/builder/pkg /home/builder/builds && \ + su builder -c ' + cd /home/builder/pkg && \ + extra-x86_64-build -- -c + ' + " + ''' + } + } + } + + post { + always { + archiveArtifacts artifacts: 'builds/**/*.pkg.tar.zst', allowEmptyArchive: true + } + } +} + |
