Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ WORKDIR /app

RUN apk add --no-cache bash curl git openssh diffutils

COPY --from=mikefarah/yq:4.34.1 /usr/bin/yq /usr/local/bin/yq2
COPY --from=docker.io/mikefarah/yq:4.34.1 /usr/bin/yq /usr/local/bin/yq2
COPY --from=ghcr.io/jsonnet-libs/docsonnet:0.0.5 /usr/bin/docsonnet /usr/local/bin/
COPY --from=builder /app/k8s-gen /usr/local/bin/
COPY --from=jsonnet /go/bin/jsonnet /usr/local/bin/
Expand Down
12 changes: 7 additions & 5 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
RUNTIME ?= docker

IMAGE_NAME ?= k8s-gen
IMAGE_PREFIX ?= ghcr.io/jsonnet-libs
IMAGE_TAG ?= 0.0.8
Expand Down Expand Up @@ -67,19 +69,19 @@ libs/*:
$(IMAGE_PREFIX)/$(IMAGE_NAME):$(IMAGE_TAG) /config /output

build:
docker build -t $(IMAGE_PREFIX)/$(IMAGE_NAME):$(IMAGE_TAG) .
$(RUNTIME) build -t $(IMAGE_PREFIX)/$(IMAGE_NAME):$(IMAGE_TAG) .

save:
mkdir -p artifacts
docker save $(IMAGE_PREFIX)/$(IMAGE_NAME):$(IMAGE_TAG) > artifacts/docker-image.tar
$(RUNTIME) save $(IMAGE_PREFIX)/$(IMAGE_NAME):$(IMAGE_TAG) > artifacts/docker-image.tar

load:
docker load < artifacts/docker-image.tar
$(RUNTIME) load < artifacts/docker-image.tar

push: build push-image

push-image:
docker push $(IMAGE_PREFIX)/$(IMAGE_NAME):$(IMAGE_TAG)
docker push $(IMAGE_PREFIX)/$(IMAGE_NAME):latest
$(RUNTIME) push $(IMAGE_PREFIX)/$(IMAGE_NAME):$(IMAGE_TAG)
$(RUNTIME) push $(IMAGE_PREFIX)/$(IMAGE_NAME):latest

.PHONY: clean configure update_objectmeta debug run all libs/* build push push-image
7 changes: 4 additions & 3 deletions bin/docker.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,13 @@
set -euo pipefail
set -x

RUNTIME=${RUNTIME:-docker}
CI=${CI:-false}
DEBUG=${DEBUG:-false}

OPTS=""
if [ "$CI" != "true" ]; then
# When run locally volume mounts match ownership of current user.
if [ "$CI" != "true" ] && [ "$RUNTIME" != 'podman' ]; then
# When run locally (not in podman) volume mounts match ownership of current user.
OPTS="$OPTS --user $(id -u):$(id -g)"
OPTS="$OPTS -v /etc/passwd:/etc/passwd:ro"
OPTS="$OPTS -v /etc/group:/etc/group:ro"
Expand All @@ -18,4 +19,4 @@ if [ "$DEBUG" == "true" ]; then
OPTS="$OPTS -ti --entrypoint /bin/bash"
fi

docker run --rm $OPTS "$@"
$RUNTIME run --rm $OPTS "$@"
Loading