initial commit

This commit is contained in:
2026-09-04 14:02:15 -04:00
commit ab192231d8
10 changed files with 310 additions and 0 deletions
Executable
+35
View File
@@ -0,0 +1,35 @@
#!/bin/bash
set -e
[[ -v ${CONTAINERD_REGISTRY_HOST} ]] || CONTAINERD_REGISTRY_HOST=docker.inteligr8.com
[[ -v ${CONTAINERD_IMAGE_NAMESPACE} ]] || CONTAINERD_IMAGE_NAMESPACE=inteligr8/
[[ -v ${CONTAINERD_IMAGE_NAME} ]] || CONTAINERD_IMAGE_NAME=base-runner
[[ -v ${CONTAINERD_CMD} ]] || CONTAINERD_CMD=buildah
[[ -v ${CONTAINERD_BUILD_FORMAT} ]] || CONTAINERD_BUILD_FORMAT=docker
[[ -v ${DEBIAN_VERSION} ]] || DEBIAN_VERSION=13
if [[ -v ${CONTAINERD_DEBUG} ]]; then
SKOPEO_OPTS="${SKOPEO_OPTS} --debug"
CONTAINERD_CMD_OPTS="${CONTAINERD_CMD_OPTS} --log-level=debug"
fi
GIT_COMMIT_SHORT_SHA=$(git rev-parse --short HEAD)
CONTAINERD_IMAGE_REMOTE_NAME=${CONTAINERD_REGISTRY_HOST}/${CONTAINERD_IMAGE_NAMESPACE}${CONTAINERD_IMAGE_NAME}
set +e
skopeo ${SKOPEO_OPTS} inspect docker://${CONTAINERD_IMAGE_REMOTE_NAME}:sha${GIT_COMMIT_SHORT_SHA}
SKOPEO_INSPECT_RC=$?
set -e
if [[ "${INSPECT_RC}" == "0" ]]; then
echo "Container image already built; skipping rebuild"
else
echo "Building container image"
${CONTAINERD_CMD} ${CONTAINERD_CMD_OPTS} build \
--format=${CONTAINERD_BUILD_FORMAT} \
${CONTAINERD_BUILD_OPTS} \
--build-arg DEBIAN_VERSION=${DEBIAN_VERSION} \
--build-arg CONTAINERD_REGISTRY_HOST=${CONTAINERD_REGISTRY_HOST} \
--build-arg CONTAINERD_IMAGE_NAMESPACE=${CONTAINERD_IMAGE_NAMESPACE} \
--tag ${CONTAINERD_IMAGE_REMOTE_NAME}:sha${GIT_COMMIT_SHORT_SHA}
fi
+17
View File
@@ -0,0 +1,17 @@
#!/bin/bash
set -e
[[ -v ${CONTAINERD_REGISTRY_HOST} ]] || CONTAINERD_REGISTRY_HOST=docker.inteligr8.com
[[ -v ${CONTAINERD_CMD} ]] || CONTAINERD_CMD=buildah
if [[ -v ${CONTAINERD_DEBUG} ]]; then
CONTAINERD_CMD_OPTS="${CONTAINERD_CMD_OPTS} --log-level=debug"
fi
if [[ -v ${CONTAINERD_REGISTRY_USERNAME} && -v ${CONTAINERD_REGISTRY_PASSWORD} ]]; then
echo "Authenticating with container registry"
echo "${CONTAINERD_REGISTRY_PASSWORD}" | ${CONTAINERD_CMD} ${CONTAINERD_CMD_OPTS} login \
${CONTAINERD_REGISTRY_HOST} \
-u ${CONTAINERD_REGISTRY_USERNAME} \
--password-stdin
fi
+19
View File
@@ -0,0 +1,19 @@
#!/bin/bash
set -e
[[ -v ${CONTAINERD_REGISTRY_HOST} ]] || CONTAINERD_REGISTRY_HOST=docker.inteligr8.com
[[ -v ${CONTAINERD_IMAGE_NAMESPACE} ]] || CONTAINERD_IMAGE_NAMESPACE=inteligr8/
[[ -v ${CONTAINERD_IMAGE_NAME} ]] || CONTAINERD_IMAGE_NAME=base-runner
[[ -v ${CONTAINERD_CMD} ]] || CONTAINERD_CMD=buildah
if [[ -v ${CONTAINERD_DEBUG} ]]; then
CONTAINERD_CMD_OPTS="${CONTAINERD_CMD_OPTS} --log-level=debug"
fi
GIT_COMMIT_SHORT_SHA=$(git rev-parse --short HEAD)
CONTAINERD_IMAGE_REMOTE_NAME=${CONTAINERD_REGISTRY_HOST}/${CONTAINERD_IMAGE_NAMESPACE}${CONTAINERD_IMAGE_NAME}
echo "Pushing container image to registry with commit SHA: ${GIT_COMMIT_SHORT_SHA}"
${CONTAINERD_CMD} ${CONTAINERD_CMD_OPTS} push \
${CONTAINERD_PUSH_OPTS} \
${CONTAINERD_IMAGE_REMOTE_NAME}:sha${GIT_COMMIT_SHORT_SHA}
+32
View File
@@ -0,0 +1,32 @@
#!/bin/bash
set -e
[[ -v ${CONTAINERD_REGISTRY_HOST} ]] || CONTAINERD_REGISTRY_HOST=docker.inteligr8.com
[[ -v ${CONTAINERD_IMAGE_NAMESPACE} ]] || CONTAINERD_IMAGE_NAMESPACE=inteligr8/
[[ -v ${CONTAINERD_IMAGE_NAME} ]] || CONTAINERD_IMAGE_NAME=base-runner
[[ -v ${CONTAINERD_CMD} ]] || CONTAINERD_CMD=buildah
if [[ -v ${CONTAINERD_DEBUG} ]]; then
CONTAINERD_CMD_OPTS="${CONTAINERD_CMD_OPTS} --log-level=debug"
fi
if [[ ! -z $1 ]]; then
CONTAINERD_IMAGE_TAG=$1
elif [[ ! -z ${VERSION} ]]; then
CONTAINERD_IMAGE_TAG=${VERSION}
fi
GIT_COMMIT_SHORT_SHA=$(git rev-parse --short HEAD)
CONTAINERD_IMAGE_REMOTE_NAME=${CONTAINERD_REGISTRY_HOST}/${CONTAINERD_IMAGE_NAMESPACE}${CONTAINERD_IMAGE_NAME}
echo "Synchronizing container image from registry for SHA: ${GIT_COMMIT_SHORT_SHA}"
${CONTAINERD_CMD} ${CONTAINERD_CMD_OPTS} pull \
${CONTAINERD_IMAGE_REMOTE_NAME}:sha${GIT_COMMIT_SHORT_SHA}
${CONTAINERD_CMD} ${CONTAINERD_CMD_OPTS} tag \
${CONTAINERD_IMAGE_REMOTE_NAME}:sha${GIT_COMMIT_SHORT_SHA}
${CONTAINERD_IMAGE_REMOTE_NAME}:${CONTAINERD_IMAGE_TAG}
echo "Tagging container image to registry with version: ${CONTAINERD_IMAGE_TAG}"
${CONTAINERD_CMD} ${CONTAINERD_CMD_OPTS} push \
${CONTAINERD_PUSH_OPTS} \
${CONTAINERD_IMAGE_REMOTE_NAME}:${CONTAINERD_IMAGE_TAG}