diff --git a/.github/workflows/docker-build.yml b/.github/workflows/docker-build.yml index 6dc7edbe..ebd72af0 100644 --- a/.github/workflows/docker-build.yml +++ b/.github/workflows/docker-build.yml @@ -4,6 +4,7 @@ env: IMAGE_NAME: pegasystems/pega-ready MAJOR_MINOR: "3.1" BUILD_NUMBER: $GITHUB_RUN_NUMBER + DETEMPLATIZE_IMAGE_VERSION: "1.0.0" on: push: diff --git a/Dockerfile b/Dockerfile index b1b3465a..b7804388 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,12 +2,14 @@ # Base image to extend from ARG BASE_TOMCAT_IMAGE +ARG DETEMPLATIZE_IMAGE_VERSION=latest -FROM pegasystems/detemplatize as detemplatize +FROM pegasystems/detemplatize:$DETEMPLATIZE_IMAGE_VERSION as detemplatize FROM $BASE_TOMCAT_IMAGE as release ARG VERSION +ARG DETEMPLATIZE_IMAGE_VERSION=latest LABEL vendor="Pegasystems Inc." \ name="Pega Tomcat Node" \ @@ -20,6 +22,7 @@ RUN groupadd -g 9001 pegauser && \ ENV PEGA_DOCKER_VERSION=${VERSION:-CUSTOM_BUILD} +ENV DETEMPLATIZE_IMAGE_VERSION=${DETEMPLATIZE_IMAGE_VERSION} # Copy detemplatize to base image bin directory COPY --from=detemplatize /bin/detemplatize /bin/detemplatize diff --git a/Makefile b/Makefile index 2fb822eb..3925905e 100644 --- a/Makefile +++ b/Makefile @@ -2,16 +2,17 @@ IMAGE_NAME := $(if $(IMAGE_NAME),$(IMAGE_NAME),pega-ready) MAJOR_MINOR := $(if $(MAJOR_MINOR),$(MAJOR_MINOR),CUSTOM) BUILD_NUMBER := $(if $(GITHUB_RUN_NUMBER),$(GITHUB_RUN_NUMBER),BUILD) VERSION := $(if $(VERSION),$(VERSION),$(MAJOR_MINOR).$(BUILD_NUMBER)) +DETEMPLATIZE_IMAGE_VERSION:= $(if $(DETEMPLATIZE_IMAGE_VERSION),$(DETEMPLATIZE_IMAGE_VERSION),latest) all: image container: image image: - docker build --build-arg VERSION=$(VERSION) --build-arg BASE_TOMCAT_IMAGE=pegasystems/tomcat:9-jdk17 -t $(IMAGE_NAME) . # Build image and automatically tag it as latest on jdk17 - docker build --build-arg VERSION=$(VERSION) --build-arg BASE_TOMCAT_IMAGE=pegasystems/tomcat:9-jdk11 -t $(IMAGE_NAME):3-jdk11 . # Build image using tomcat 9 , jdk 11 - docker build --build-arg VERSION=$(VERSION) --build-arg BASE_TOMCAT_IMAGE=pegasystems/tomcat:9-jdk17 -t $(IMAGE_NAME):3-jdk17 . # Build image using tomcat 9 , jdk 17 - docker build --build-arg VERSION=$(VERSION) --build-arg BASE_TOMCAT_IMAGE=pegasystems/tomcat:10-jdk21 -t $(IMAGE_NAME):3-jdk21 . # Build image using tomcat 10 , jdk 21 + docker build --build-arg VERSION=$(VERSION) --build-arg BASE_TOMCAT_IMAGE=pegasystems/tomcat:9-jdk17 --build-arg DETEMPLATIZE_IMAGE_VERSION=$(DETEMPLATIZE_IMAGE_VERSION) -t $(IMAGE_NAME) . # Build image and automatically tag it as latest on jdk17 + docker build --build-arg VERSION=$(VERSION) --build-arg BASE_TOMCAT_IMAGE=pegasystems/tomcat:9-jdk11 --build-arg DETEMPLATIZE_IMAGE_VERSION=$(DETEMPLATIZE_IMAGE_VERSION) -t $(IMAGE_NAME):3-jdk11 . # Build image using tomcat 9 , jdk 11 + docker build --build-arg VERSION=$(VERSION) --build-arg BASE_TOMCAT_IMAGE=pegasystems/tomcat:9-jdk17 --build-arg DETEMPLATIZE_IMAGE_VERSION=$(DETEMPLATIZE_IMAGE_VERSION) -t $(IMAGE_NAME):3-jdk17 . # Build image using tomcat 9 , jdk 17 + docker build --build-arg VERSION=$(VERSION) --build-arg BASE_TOMCAT_IMAGE=pegasystems/tomcat:10-jdk21 --build-arg DETEMPLATIZE_IMAGE_VERSION=$(DETEMPLATIZE_IMAGE_VERSION) -t $(IMAGE_NAME):3-jdk21 . # Build image using tomcat 10 , jdk 21 test: image # Build image for executing test cases against it