forked from chainguard-images/images
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
67 lines (55 loc) · 1.96 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
cfg?=images/static/configs/wolfi.apko.yaml
TERRAFORM ?= $(shell command -v terraform)
.PHONY: apko-build
apko-build:
apko build $(cfg) apko.local image.tar \
--repository-append https://packages.wolfi.dev/os \
--keyring-append https://packages.wolfi.dev/os/wolfi-signing.rsa.pub \
--package-append wolfi-baselayout \
--arch x86_64,aarch64
.PHONY: apko-build-alpine
apko-build-alpine:
apko build $(cfg) apko.local image.tar \
--repository-append https://dl-cdn.alpinelinux.org/alpine/edge/main \
--package-append ca-certificates-bundle
TF_AUTO_APPROVE ?= 1
TF_VARS :=
ifeq ($(TF_AUTO_APPROVE),1)
TF_VARS += --auto-approve
endif
.PHONY: check-env-tf
check-env-tf:
ifndef TF_VAR_target_repository
$(error TF_VAR_target_repository is not set)
endif
.PHONY: all
all: check-env-tf init
$(TERRAFORM) apply $(TF_VARS)
image/%: check-env-tf init
$(TERRAFORM) apply $(TF_VARS) -target=module.$*
init:
$(TERRAFORM) init --upgrade
LOCAL_REGISTRY_NAME := k3d.localhost
LOCAL_REGISTRY_PORT := 5005
K3S_IMAGE := cgr.dev/chainguard/k3s:latest@sha256:cb07f771be251367d407175bd6217001ecf1b1d3ce831d1e1a1f28e3cc39025b
k3d-registry:
@# Create a local registry managed by k3d only if it doesn't exist
@if ! k3d registry list | grep -q $(LOCAL_REGISTRY_NAME); then \
k3d registry create $(LOCAL_REGISTRY_NAME) --port $(LOCAL_REGISTRY_PORT); \
else \
echo "Registry $(LOCAL_REGISTRY_NAME) already exists. Skipping creation."; \
fi
k3d: k3d-registry
@# Create the k3d cluster only if it doesn't exist
@if ! k3d cluster list | grep -q 'k3s-default'; then \
k3d cluster create \
-i $(K3S_IMAGE) \
--k3s-arg "--disable=traefik@server:0" \
--k3s-arg "--disable=metrics-server@server:0" \
--registry-use k3d-$(LOCAL_REGISTRY_NAME):$(LOCAL_REGISTRY_PORT); \
else \
echo "Cluster k3s-default already exists. Skipping creation."; \
fi
k3d-clean:
@# Destroy the k3d cluster, but keep the registry around since it can safely persist across clusters
k3d cluster delete