|
1 | 1 | # If DRYCC_REGISTRY is not set, try to populate it from legacy DEV_REGISTRY |
2 | | -STACK ?= 20 |
3 | | -VERSION ?= ${STACK} |
| 2 | +CODENAME ?= bullseye |
4 | 3 | DEV_REGISTRY ?= docker.io |
5 | 4 | DRYCC_REGISTRY ?= ${DEV_REGISTRY} |
6 | | - |
| 5 | +PLATFORM ?= $(shell python3 _scripts/utils.py platform) |
7 | 6 | ARCH ?= $(shell python3 _scripts/utils.py arch) |
8 | | -LIFECYCLE_VERSION ?= v0.12.0-rc.1 |
| 7 | +LIFECYCLE_VERSION ?= v0.13.3 |
9 | 8 | ifeq ($(ARCH),amd64) |
10 | 9 | LIFECYCLE_URL = https://github.com/buildpacks/lifecycle/releases/download/$(LIFECYCLE_VERSION)/lifecycle-${LIFECYCLE_VERSION}+linux.x86-64.tgz |
11 | 10 | else |
12 | 11 | LIFECYCLE_URL = https://github.com/buildpacks/lifecycle/releases/download/$(LIFECYCLE_VERSION)/lifecycle-${LIFECYCLE_VERSION}+linux.${ARCH}.tgz |
13 | 12 | endif |
14 | | -STACK_RUN_IMAGE = docker.io/drycc/pack:20-linux-${ARCH} |
15 | | -STACK_BUILD_IMAGE = docker.io/drycc/pack:20-linux-${ARCH}-build |
| 13 | +STACK_ID = drycc-${CODENAME} |
| 14 | +STACK_RUN_IMAGE = ${DRYCC_REGISTRY}/drycc/pack:${CODENAME}-${PLATFORM}-${ARCH} |
| 15 | +STACK_BUILD_IMAGE = ${DRYCC_REGISTRY}/drycc/pack:${CODENAME}-${PLATFORM}-${ARCH}-build |
| 16 | +BUILDPACKS_IMAGE = ${DRYCC_REGISTRY}/drycc/buildpacks:${CODENAME}-${PLATFORM}-${ARCH} |
16 | 17 |
|
17 | 18 | SHELLCHECK_PREFIX := docker run --rm -v ${CURDIR}:/workdir -w /workdir ${DRYCC_REGISTRY}/drycc/go-dev shellcheck |
18 | 19 | SHELL_SCRIPTS = $(shell find "buildpacks" -name '*.sh') $(shell find "rootfs" -name '*.sh') $(wildcard buildpacks/*/bin/*) |
19 | 20 |
|
20 | 21 | SHELL=/bin/bash -o pipefail |
21 | 22 |
|
22 | 23 | pack: |
23 | | - @docker build --pull -f Dockerfile.build \ |
24 | | - --build-arg STACK=drycc-${STACK} \ |
25 | | - --build-arg BASE_IMAGE=${DRYCC_REGISTRY}/drycc/stack-images:${STACK} \ |
26 | | - -t ${DRYCC_REGISTRY}/drycc/pack:${VERSION}-build . |
27 | 24 | @docker build --pull -f Dockerfile.run \ |
28 | | - --build-arg STACK=drycc-${STACK} \ |
29 | | - --build-arg BASE_IMAGE=${DRYCC_REGISTRY}/drycc/stack-images:${STACK} \ |
30 | | - -t ${DRYCC_REGISTRY}/drycc/pack:${VERSION} . |
| 25 | + --build-arg STACK_ID=${STACK_ID} \ |
| 26 | + --build-arg BASE_IMAGE=${DRYCC_REGISTRY}/drycc/base:${CODENAME} \ |
| 27 | + -t ${STACK_RUN_IMAGE} . |
| 28 | + @docker build -f Dockerfile.build \ |
| 29 | + --build-arg BASE_IMAGE=${STACK_RUN_IMAGE} \ |
| 30 | + -t ${STACK_BUILD_IMAGE} . |
31 | 31 |
|
32 | 32 | publish-pack: pack |
33 | | - @docker push ${DRYCC_REGISTRY}/drycc/pack:${VERSION}-build |
34 | | - @docker push ${DRYCC_REGISTRY}/drycc/pack:${VERSION} |
| 33 | + @docker push ${STACK_RUN_IMAGE} |
| 34 | + @docker push ${STACK_BUILD_IMAGE} |
35 | 35 |
|
36 | 36 | buildpack: |
37 | | - LIFECYCLE_URL=${LIFECYCLE_URL} STACK_RUN_IMAGE=${STACK_RUN_IMAGE} STACK_BUILD_IMAGE=${STACK_BUILD_IMAGE} python3 _scripts/utils.py toml builder.toml builder.toml.${ARCH} |
38 | | - @pack builder create ${DRYCC_REGISTRY}/drycc/buildpacks:${VERSION} --config builder.toml.${ARCH} --pull-policy if-not-present |
39 | | - @rm -rf builder.toml.${ARCH} |
| 37 | + STACK_ID=${STACK_ID} LIFECYCLE_URL=${LIFECYCLE_URL} STACK_RUN_IMAGE=${STACK_RUN_IMAGE} STACK_BUILD_IMAGE=${STACK_BUILD_IMAGE} python3 _scripts/utils.py toml builder.toml builder.toml.${PLATFORM}.${ARCH} |
| 38 | + @pack builder create ${BUILDPACKS_IMAGE} --config builder.toml.${PLATFORM}.${ARCH} --pull-policy if-not-present |
| 39 | + @rm -rf builder.toml.${PLATFORM}.${ARCH} |
40 | 40 |
|
41 | 41 | publish-buildpack: buildpack |
42 | | - @docker push ${DRYCC_REGISTRY}/drycc/buildpacks:${VERSION} |
| 42 | + @docker push ${BUILDPACKS_IMAGE} |
43 | 43 |
|
44 | 44 | publish: publish-pack publish-buildpack |
45 | 45 |
|
|
0 commit comments