#!/bin/bash set -Eeuo pipefail if [[ "$UID" -ne 0 ]]; then echo "This command must be run as root!" exit 1 fi if [ "$#" -ne 1 ]; then echo "Usage: $0 " exit 1 fi TARGET_IMAGE="$1" OCI_REGISTRY="${TARGET_IMAGE%%/*}" SCRIPT_DIR="$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )" PROJECT_DIR="$(dirname "$SCRIPT_DIR")" if [ ! -f "$PROJECT_DIR/signing-key.pass" ]; then openssl rand -base64 30 > "$PROJECT_DIR/signing-key.pass" chmod 600 "$PROJECT_DIR/signing-key.pass" fi if [ ! -f "$PROJECT_DIR/signing-key.pub" ]; then skopeo generate-sigstore-key --output-prefix "$PROJECT_DIR/signing-key" --passphrase-file "$PROJECT_DIR/signing-key.pass" fi if [ ! -f "/etc/containers/registries.d/${OCI_REGISTRY}.yaml" ]; then tee "/etc/containers/registries.d/${OCI_REGISTRY}.yaml" > /dev/null <