From e53c147dfa2d39ccc46058e47acd716a810687e0 Mon Sep 17 00:00:00 2001 From: "Dustin C. Hatch" Date: Tue, 10 Jan 2023 21:16:20 -0600 Subject: [PATCH] ci: Begin CI Pipeline For now, we're only building aarch64 binaries. The screens I intend to deploy this on are both Raspberry Pis, and I don't yet have a way to produce multi-arch container images to provide the build environment. --- ci/Jenkinsfile | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++ ci/build.sh | 5 +++++ 2 files changed, 64 insertions(+) create mode 100644 ci/Jenkinsfile create mode 100644 ci/build.sh diff --git a/ci/Jenkinsfile b/ci/Jenkinsfile new file mode 100644 index 0000000..8d9af59 --- /dev/null +++ b/ci/Jenkinsfile @@ -0,0 +1,59 @@ +// vim: set sw=4 ts=4 sts=4 et : +pipeline { + agent none + + stages { + stage('Build') { + parallel { +/* + stage('Build x86_64') { + agent { + kubernetes { + containerTemplate { + name 'build' + image 'git.pyrocufflink.net/containerimages/build/browserhud' + command 'cat' + ttyEnabled true + } + nodeSelector 'kubernetes.io/arch=amd64' + defaultContainer 'build' + } + } + steps { + sh '. ci/build.sh' + } + post { + success { + archiveArtifacts 'x86_64/mqttmarionette' + } + } + } +*/ + + stage('Build aarch64') { + agent { + kubernetes { + containerTemplate { + name 'build' + image 'git.pyrocufflink.net/containerimages/build/browserhud' + command 'cat' + ttyEnabled true + } + nodeSelector 'kubernetes.io/arch=arm64' + defaultContainer 'build' + } + } + steps { + sh '. ci/build.sh' + } + post { + success { + archiveArtifacts 'aarch64/mqttmarionette' + } + } + } + } + } + } + +} diff --git a/ci/build.sh b/ci/build.sh new file mode 100644 index 0000000..186096d --- /dev/null +++ b/ci/build.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +cargo build --release + +ln -sr target/release $(uname -m)