2018-12-03 08:35:39 +00:00
|
|
|
#!/bin/bash
|
|
|
|
set -euo pipefail
|
|
|
|
|
|
|
|
source ${HOME}/bin/script_framework.sh
|
|
|
|
|
|
|
|
REPO_DIR=${REPO_DIR:-/home/luzifer/tmp/archrepo}
|
|
|
|
|
|
|
|
URL=${1:-}
|
|
|
|
[ -z "${URL}" ] && fail "No repo URL given as CLI argument"
|
|
|
|
|
|
|
|
# Create working dir
|
|
|
|
TMPDIR="/tmp/aur2repo_$$"
|
|
|
|
mkdir -p "${TMPDIR}/cfg"
|
|
|
|
|
|
|
|
# Ensure cleanup on script exit
|
|
|
|
function cleanup() {
|
|
|
|
rm -rf "${TMPDIR}"
|
|
|
|
}
|
|
|
|
trap cleanup EXIT
|
|
|
|
|
|
|
|
step "Fetching signing key"
|
|
|
|
vault read --field=key secret/jenkins/arch-signing >"${TMPDIR}/cfg/signing.asc"
|
|
|
|
|
|
|
|
step "Re-fetching Docker image"
|
|
|
|
docker pull luzifer/arch-repo-builder
|
|
|
|
|
|
|
|
step "Building git URL"
|
|
|
|
docker run --rm -ti \
|
|
|
|
-v "${TMPDIR}/src:/src" \
|
|
|
|
-v "${TMPDIR}/cfg:/config" \
|
|
|
|
-v "${REPO_DIR}:/repo" \
|
|
|
|
luzifer/arch-repo-builder \
|
|
|
|
"${URL}"
|
|
|
|
|
|
|
|
step "Synchronizing repository changes"
|
2019-10-19 17:00:23 +00:00
|
|
|
cd "${REPO_DIR}"
|
|
|
|
make upload
|