a
This commit is contained in:
parent
5de9ffb979
commit
bc68379c52
5 changed files with 54 additions and 31 deletions
|
@ -1,8 +1,5 @@
|
|||
#!/usr/bin/env bash
|
||||
set -eu;
|
||||
env | sort | grep PLUGIN
|
||||
echo $PLUGIN_AUTH | base64 -w0
|
||||
|
||||
|
||||
##
|
||||
## check input
|
||||
|
@ -25,9 +22,10 @@ SOURCE_DATE_EPOCH=${PLUGIN_SOURCE_DATE_EPOCH:-0}
|
|||
|
||||
if [[ -n "${PLUGIN_AUTH:-}" ]]; then
|
||||
DOCKER_CONFIG=${DOCKER_CONFIG:-$PWD}
|
||||
mkdir -p $DOCKER_CONFIG
|
||||
echo $PLUGIN_AUTH > $DOCKER_CONFIG/config.json
|
||||
echo Stored credentials at $DOCKER_CONFIG/config.json
|
||||
mkdir -p "$DOCKER_CONFIG"
|
||||
echo "$PLUGIN_AUTH" > "$DOCKER_CONFIG/config.json"
|
||||
echo Stored credentials at "$DOCKER_CONFIG/config.json"
|
||||
echo
|
||||
fi
|
||||
|
||||
##
|
||||
|
@ -46,17 +44,14 @@ if [[ "${PLUGIN_PLATFORM:-}" == "true" ]]; then
|
|||
COMMAND="$COMMAND --opt platform='$PLUGIN_PLATFORM'"
|
||||
fi
|
||||
# https://github.com/moby/buildkit/blob/master/README.md#output
|
||||
OUTPUT=""
|
||||
BUILDCTL_OUTPUT=""
|
||||
if [[ -n "${PLUGIN_NAME:-}" ]]; then
|
||||
OUTPUT="$OUTPUT --output type=image,\"name=$PLUGIN_NAME\",push=${PLUGIN_PUSH:-true},oci-mediatypes=true,oci-artifact=true,compression=estargz"
|
||||
OUTPUT="$OUTPUT,oci-mediatypes=true,oci-artifact=true,compression=estargz,compression-level=9"
|
||||
OUTPUT="$OUTPUT,rewrite-timestamp=true"
|
||||
export IFS=";"
|
||||
for PLUGIN_ANNOTATION_ITEM in "${PLUGIN_ANNOTATION:-}"; do
|
||||
OUTPUT="$OUTPUT,annotation.$PLUGIN_ANNOTATION_ITEM"
|
||||
done
|
||||
BUILDCTL_OUTPUT="$BUILDCTL_OUTPUT --output type=image,\"name=$PLUGIN_NAME\",push=${PLUGIN_PUSH:-true}"
|
||||
BUILDCTL_OUTPUT="$BUILDCTL_OUTPUT,oci-mediatypes=true,oci-artifact=true,compression=estargz,compression-level=9"
|
||||
BUILDCTL_OUTPUT="$BUILDCTL_OUTPUT,rewrite-timestamp=true"
|
||||
BUILDCTL_OUTPUT="$BUILDCTL_OUTPUT$(echo "$PLUGIN_ANNOTATION" | jq --join-output 'keys[] as $k|",annotation.\($k)=\"\(.[$k])\""')"
|
||||
fi
|
||||
COMMAND="$COMMAND $OUTPUT"
|
||||
COMMAND="$COMMAND $BUILDCTL_OUTPUT"
|
||||
|
||||
# custom args, e.g. docker run --rm --volume=$HOME:HOME:ro --workdir=$PWD kokuwaio/buildkit --opt buildarg=foo=bar
|
||||
if [[ -n "${1:-}" ]]; then
|
||||
|
@ -67,12 +62,21 @@ fi
|
|||
## execute command
|
||||
##
|
||||
|
||||
echo
|
||||
echo Reproduce with docker:
|
||||
echo
|
||||
echo "SOURCE_DATE_EPOCH=$SOURCE_DATE_EPOCH docker buildx build ${PLUGIN_CONTEXT:-.}"
|
||||
echo " --no-cache"
|
||||
if [[ "${PLUGIN_PLATFORM:-}" == "true" ]]; then
|
||||
echo " --platform='$PLUGIN_PLATFORM'"
|
||||
echo " $OUTPUT"
|
||||
fi
|
||||
|
||||
echo -e "SOURCE_DATE_EPOCH=$SOURCE_DATE_EPOCH ${COMMAND// --/\\n --}\n"
|
||||
if [[ -n "${PLUGIN_ADDR:-}" ]]; then
|
||||
echo " $BUILDCTL_OUTPUT"
|
||||
fi
|
||||
echo
|
||||
echo Running now:
|
||||
echo
|
||||
echo "SOURCE_DATE_EPOCH=$SOURCE_DATE_EPOCH ${COMMAND// --/\\n --}"
|
||||
echo
|
||||
eval "$COMMAND"
|
||||
echo 1
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue