From 576558adcf00dbf40ed599b9cb11b720bef47b78 Mon Sep 17 00:00:00 2001 From: Julien Dessaux Date: Fri, 20 Sep 2024 23:14:07 +0200 Subject: Reworked ODS job to handle the necessary git-crypt unlock --- ods/ods-deploy.yaml | 20 -------------------- ods/ods.sh | 26 ++++++++++++++++++++++++++ ods/ods.yaml | 22 ++++++++++++++++++++++ 3 files changed, 48 insertions(+), 20 deletions(-) delete mode 100644 ods/ods-deploy.yaml create mode 100644 ods/ods.sh create mode 100644 ods/ods.yaml (limited to 'ods') diff --git a/ods/ods-deploy.yaml b/ods/ods-deploy.yaml deleted file mode 100644 index 5e96344..0000000 --- a/ods/ods-deploy.yaml +++ /dev/null @@ -1,20 +0,0 @@ -name: "ods-deploy" -steps: - - label: "git clone" - script: - path: "../common/git-clone.sh" - arguments: - - "https://git.adyxax.org/adyxax/ods" - - label: "build" - script: - path: "../common/make.sh" - arguments: - - "container-build" - - label: "deploy" - script: - path: "../common/make.sh" - arguments: - - "deploy" - - label: "clean" - script: - path: "../common/clean.sh" diff --git a/ods/ods.sh b/ods/ods.sh new file mode 100644 index 0000000..a71e02e --- /dev/null +++ b/ods/ods.sh @@ -0,0 +1,26 @@ +#!/usr/bin/env bash +set -euo pipefail + +WORKDIR="/tmp/${EVENTLINE_JOB_NAME}" + +cleanup() { + rm -rf "${WORKDIR}" +} + +trap cleanup EXIT + +cd "${WORKDIR}" +git-crypt unlock "${EVENTLINE_DIR}/identities/gpg/private_key" + +podman run --rm -ti -v "${WORKDIR}:/mnt" \ + --entrypoint "/bin/sh" \ + localhost/ods:latest \ + /bin/cp /usr/local/bin/ods /mnt/ + +SSHKEY="${EVENTLINE_DIR}/identities/ssh/private_key" +SSHOPTS="-i ${SSHKEY} -o StrictHostKeyChecking=accept-new" + +rsync -e "ssh ${SSHOPTS}" "${WORKDIR}/ods" root@ods.adyxax.org:/srv/ods/ +ssh root@ods.adyxax.org "systemctl restart ods" + +trap - EXIT diff --git a/ods/ods.yaml b/ods/ods.yaml new file mode 100644 index 0000000..5ed5ca8 --- /dev/null +++ b/ods/ods.yaml @@ -0,0 +1,22 @@ +identities: + - "gpg" + - "ssh" +name: "ods" +steps: + - label: "git clone" + script: + path: "../common/git-clone.sh" + arguments: + - "https://git.adyxax.org/adyxax/ods" + - label: "build and deploy" + script: + path: "./ods.sh" + - label: "clean" + script: + path: "../common/clean.sh" +runner: + identity: "ssh" + name: "ssh" + parameters: + host: "lore.adyxax.org" + user: "root" -- cgit v1.2.3