@@ -25,6 +25,18 @@ TAG_LATEST=$(ORG)/$(NAME):latest-$(PG_VER)
2525TAG =-t $(TAG_VERSION ) $(if $(BETA ) ,,-t $(TAG_LATEST ) )
2626TAG_OSS =-t $(TAG_VERSION ) -oss $(if $(BETA ) ,,-t $(TAG_LATEST ) -oss)
2727
28+ DOCKER_BUILD_ARGS = --build-arg PG_VERSION=$(PG_VER_NUMBER ) \
29+ --build-arg TS_VERSION=$(TS_VERSION ) \
30+ --build-arg PREV_IMAGE=$(PREV_IMAGE ) \
31+ --build-arg CITUS_VERSION=$(CITUS_VERSION ) \
32+ --build-arg PG_VER=$(PG_VER ) \
33+ --build-arg PG_REPACK_VERSION=$(PG_REPACK_VERSION ) \
34+ --build-arg POSTGIS_VERSION=$(POSTGIS_VERSION ) \
35+ --build-arg PG_AUTO_FAILOVER_VERSION=$(PG_AUTO_FAILOVER_VERSION ) \
36+ --build-arg POSTGIS_VERSION=$(POSTGIS_VERSION ) \
37+ --build-arg POSTGIS_SHA256=$(POSTGIS_SHA256 ) \
38+ --build-arg POSTGRES_HLL_VERSION=$(POSTGRES_HLL_VERSION )
39+
2840default : image
2941
3042.multi_$(TS_VERSION ) _$(PG_VER ) _oss : Dockerfile
@@ -60,7 +72,12 @@ default: image
6072 touch .build_$(TS_VERSION ) _$(PG_VER ) _oss
6173
6274.build_$(TS_VERSION ) _$(PG_VER ) : Dockerfile
63- docker build --build-arg PG_VERSION=$(PG_VER_NUMBER ) --build-arg TS_VERSION=$(TS_VERSION ) --build-arg PREV_IMAGE=$(PREV_IMAGE ) --build-arg CITUS_VERSION=$(CITUS_VERSION ) --build-arg PG_VER=$(PG_VER ) --build-arg PG_REPACK_VERSION=$(PG_REPACK_VERSION ) --build-arg POSTGIS_VERSION=$(POSTGIS_VERSION ) --build-arg POSTGRES_HLL_VERSION=$(POSTGRES_HLL_VERSION ) --build-arg PG_AUTO_FAILOVER_VERSION=$(PG_AUTO_FAILOVER_VERSION ) --build-arg POSTGIS_VERSION=$(POSTGIS_VERSION ) --build-arg POSTGIS_SHA256=$(POSTGIS_SHA256 ) $(TAG ) .
75+ docker build $(DOCKER_BUILD_ARGS ) $(TAG ) .
76+ touch .build_$(TS_VERSION ) _$(PG_VER )
77+
78+ build-docker-cache : Dockerfile
79+ docker buildx create --use --driver=docker-container
80+ docker buildx build --progress=plain --load --cache-to " type=gha,mode=max" --cache-from type=gha $(DOCKER_BUILD_ARGS ) $(TAG ) .
6481 touch .build_$(TS_VERSION ) _$(PG_VER )
6582
6683image : .build_$(TS_VERSION ) _$(PG_VER )
@@ -89,4 +106,4 @@ clean:
89106 rm -f * ~ .build_* .multi_*
90107 -docker buildx rm multibuild
91108
92- .PHONY : default image push push-oss oss multi multi-oss clean all
109+ .PHONY : default image push push-oss oss multi multi-oss clean all build-docker-cache
0 commit comments