From ecca8b1ece78cce6a4a573e7f68c47614fd35113 Mon Sep 17 00:00:00 2001 From: Carlos Sanchez Date: Tue, 30 Jul 2024 10:25:54 +0200 Subject: [PATCH] feat: maven-4 images --- .../amazoncorretto-17-al2023-maven-4.yml | 32 ++++++++++ .../amazoncorretto-17-debian-maven-4.yml | 32 ++++++++++ .../workflows/amazoncorretto-17-maven-4.yml | 32 ++++++++++ ...ncorretto-17-windowsservercore-maven-4.yml | 30 ++++++++++ .../amazoncorretto-21-al2023-maven-4.yml | 32 ++++++++++ .../amazoncorretto-21-debian-maven-4.yml | 32 ++++++++++ .../workflows/amazoncorretto-21-maven-4.yml | 32 ++++++++++ .../workflows/azulzulu-17-alpine-maven-4.yml | 32 ++++++++++ .github/workflows/azulzulu-17-maven-4.yml | 32 ++++++++++ .../azulzulu-17-windowsservercore-maven-4.yml | 30 ++++++++++ .../workflows/azulzulu-21-alpine-maven-4.yml | 32 ++++++++++ .github/workflows/azulzulu-21-maven-4.yml | 32 ++++++++++ .../eclipse-temurin-17-alpine-maven-4.yml | 32 ++++++++++ .../eclipse-temurin-17-focal-maven-4.yml | 32 ++++++++++ .../workflows/eclipse-temurin-17-maven-4.yml | 32 ++++++++++ .../eclipse-temurin-21-alpine-maven-4.yml | 32 ++++++++++ .../eclipse-temurin-21-jammy-maven-4.yml | 32 ++++++++++ .../workflows/eclipse-temurin-21-maven-4.yml | 32 ++++++++++ .../eclipse-temurin-22-alpine-maven-4.yml | 32 ++++++++++ .../eclipse-temurin-22-jammy-maven-4.yml | 32 ++++++++++ .../workflows/eclipse-temurin-22-maven-4.yml | 32 ++++++++++ .../graalvm-community-17-maven-4.yml | 32 ++++++++++ .../graalvm-community-21-maven-4.yml | 32 ++++++++++ .../workflows/ibm-semeru-17-focal-maven-4.yml | 32 ++++++++++ .../workflows/ibm-semeru-21-jammy-maven-4.yml | 32 ++++++++++ .../libericaopenjdk-17-alpine-maven-4.yml | 32 ++++++++++ .../libericaopenjdk-17-debian-maven-4.yml | 32 ++++++++++ .../microsoft-openjdk-17-ubuntu-maven-4.yml | 32 ++++++++++ .../microsoft-openjdk-21-ubuntu-maven-4.yml | 32 ++++++++++ .../workflows/oracle-graalvm-17-maven-4.yml | 32 ++++++++++ .../workflows/oracle-graalvm-21-maven-4.yml | 32 ++++++++++ .github/workflows/sapmachine-17-maven-4.yml | 32 ++++++++++ .github/workflows/sapmachine-21-maven-4.yml | 32 ++++++++++ .github/workflows/sapmachine-22-maven-4.yml | 32 ++++++++++ Dockerfile-template-maven-4 | 20 +++++++ amazoncorretto-17-al2023-maven-4/Dockerfile | 25 ++++++++ amazoncorretto-17-debian-maven-4/Dockerfile | 41 +++++++++++++ amazoncorretto-17-maven-4/Dockerfile | 25 ++++++++ .../Dockerfile | 46 +++++++++++++++ .../mvn-entrypoint.ps1 | 49 ++++++++++++++++ .../settings-docker.xml | 6 ++ amazoncorretto-21-al2023-maven-4/Dockerfile | 25 ++++++++ amazoncorretto-21-debian-maven-4/Dockerfile | 41 +++++++++++++ amazoncorretto-21-maven-4/Dockerfile | 25 ++++++++ azulzulu-17-alpine-maven-4/Dockerfile | 24 ++++++++ azulzulu-17-maven-4/Dockerfile | 26 +++++++++ .../Dockerfile | 46 +++++++++++++++ .../mvn-entrypoint.ps1 | 49 ++++++++++++++++ .../settings-docker.xml | 6 ++ azulzulu-21-alpine-maven-4/Dockerfile | 24 ++++++++ azulzulu-21-maven-4/Dockerfile | 26 +++++++++ eclipse-temurin-17-alpine-maven-4/Dockerfile | 24 ++++++++ eclipse-temurin-17-focal-maven-4/Dockerfile | 26 +++++++++ eclipse-temurin-17-maven-4/Dockerfile | 58 +++++++++++++++++++ eclipse-temurin-17-maven-4/mvn-entrypoint.sh | 50 ++++++++++++++++ .../settings-docker.xml | 6 ++ eclipse-temurin-21-alpine-maven-4/Dockerfile | 24 ++++++++ eclipse-temurin-21-jammy-maven-4/Dockerfile | 26 +++++++++ eclipse-temurin-21-maven-4/Dockerfile | 26 +++++++++ eclipse-temurin-22-alpine-maven-4/Dockerfile | 24 ++++++++ eclipse-temurin-22-jammy-maven-4/Dockerfile | 26 +++++++++ eclipse-temurin-22-maven-4/Dockerfile | 26 +++++++++ generate-stackbrew-library.sh | 5 ++ graalvm-community-17-maven-4/Dockerfile | 23 ++++++++ graalvm-community-21-maven-4/Dockerfile | 24 ++++++++ ibm-semeru-17-focal-maven-4/Dockerfile | 26 +++++++++ ibm-semeru-21-jammy-maven-4/Dockerfile | 26 +++++++++ libericaopenjdk-17-alpine-maven-4/Dockerfile | 24 ++++++++ libericaopenjdk-17-debian-maven-4/Dockerfile | 26 +++++++++ .../Dockerfile | 26 +++++++++ .../Dockerfile | 26 +++++++++ oracle-graalvm-17-maven-4/Dockerfile | 24 ++++++++ oracle-graalvm-21-maven-4/Dockerfile | 24 ++++++++ publish.sh | 8 ++- sapmachine-17-maven-4/Dockerfile | 26 +++++++++ sapmachine-21-maven-4/Dockerfile | 26 +++++++++ sapmachine-22-maven-4/Dockerfile | 26 +++++++++ 77 files changed, 2242 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/amazoncorretto-17-al2023-maven-4.yml create mode 100644 .github/workflows/amazoncorretto-17-debian-maven-4.yml create mode 100644 .github/workflows/amazoncorretto-17-maven-4.yml create mode 100644 .github/workflows/amazoncorretto-17-windowsservercore-maven-4.yml create mode 100644 .github/workflows/amazoncorretto-21-al2023-maven-4.yml create mode 100644 .github/workflows/amazoncorretto-21-debian-maven-4.yml create mode 100644 .github/workflows/amazoncorretto-21-maven-4.yml create mode 100644 .github/workflows/azulzulu-17-alpine-maven-4.yml create mode 100644 .github/workflows/azulzulu-17-maven-4.yml create mode 100644 .github/workflows/azulzulu-17-windowsservercore-maven-4.yml create mode 100644 .github/workflows/azulzulu-21-alpine-maven-4.yml create mode 100644 .github/workflows/azulzulu-21-maven-4.yml create mode 100644 .github/workflows/eclipse-temurin-17-alpine-maven-4.yml create mode 100644 .github/workflows/eclipse-temurin-17-focal-maven-4.yml create mode 100644 .github/workflows/eclipse-temurin-17-maven-4.yml create mode 100644 .github/workflows/eclipse-temurin-21-alpine-maven-4.yml create mode 100644 .github/workflows/eclipse-temurin-21-jammy-maven-4.yml create mode 100644 .github/workflows/eclipse-temurin-21-maven-4.yml create mode 100644 .github/workflows/eclipse-temurin-22-alpine-maven-4.yml create mode 100644 .github/workflows/eclipse-temurin-22-jammy-maven-4.yml create mode 100644 .github/workflows/eclipse-temurin-22-maven-4.yml create mode 100644 .github/workflows/graalvm-community-17-maven-4.yml create mode 100644 .github/workflows/graalvm-community-21-maven-4.yml create mode 100644 .github/workflows/ibm-semeru-17-focal-maven-4.yml create mode 100644 .github/workflows/ibm-semeru-21-jammy-maven-4.yml create mode 100644 .github/workflows/libericaopenjdk-17-alpine-maven-4.yml create mode 100644 .github/workflows/libericaopenjdk-17-debian-maven-4.yml create mode 100644 .github/workflows/microsoft-openjdk-17-ubuntu-maven-4.yml create mode 100644 .github/workflows/microsoft-openjdk-21-ubuntu-maven-4.yml create mode 100644 .github/workflows/oracle-graalvm-17-maven-4.yml create mode 100644 .github/workflows/oracle-graalvm-21-maven-4.yml create mode 100644 .github/workflows/sapmachine-17-maven-4.yml create mode 100644 .github/workflows/sapmachine-21-maven-4.yml create mode 100644 .github/workflows/sapmachine-22-maven-4.yml create mode 100644 Dockerfile-template-maven-4 create mode 100644 amazoncorretto-17-al2023-maven-4/Dockerfile create mode 100644 amazoncorretto-17-debian-maven-4/Dockerfile create mode 100644 amazoncorretto-17-maven-4/Dockerfile create mode 100644 amazoncorretto-17-windowsservercore-maven-4/Dockerfile create mode 100644 amazoncorretto-17-windowsservercore-maven-4/mvn-entrypoint.ps1 create mode 100644 amazoncorretto-17-windowsservercore-maven-4/settings-docker.xml create mode 100644 amazoncorretto-21-al2023-maven-4/Dockerfile create mode 100644 amazoncorretto-21-debian-maven-4/Dockerfile create mode 100644 amazoncorretto-21-maven-4/Dockerfile create mode 100644 azulzulu-17-alpine-maven-4/Dockerfile create mode 100644 azulzulu-17-maven-4/Dockerfile create mode 100644 azulzulu-17-windowsservercore-maven-4/Dockerfile create mode 100644 azulzulu-17-windowsservercore-maven-4/mvn-entrypoint.ps1 create mode 100644 azulzulu-17-windowsservercore-maven-4/settings-docker.xml create mode 100644 azulzulu-21-alpine-maven-4/Dockerfile create mode 100644 azulzulu-21-maven-4/Dockerfile create mode 100644 eclipse-temurin-17-alpine-maven-4/Dockerfile create mode 100644 eclipse-temurin-17-focal-maven-4/Dockerfile create mode 100644 eclipse-temurin-17-maven-4/Dockerfile create mode 100755 eclipse-temurin-17-maven-4/mvn-entrypoint.sh create mode 100644 eclipse-temurin-17-maven-4/settings-docker.xml create mode 100644 eclipse-temurin-21-alpine-maven-4/Dockerfile create mode 100644 eclipse-temurin-21-jammy-maven-4/Dockerfile create mode 100644 eclipse-temurin-21-maven-4/Dockerfile create mode 100644 eclipse-temurin-22-alpine-maven-4/Dockerfile create mode 100644 eclipse-temurin-22-jammy-maven-4/Dockerfile create mode 100644 eclipse-temurin-22-maven-4/Dockerfile create mode 100644 graalvm-community-17-maven-4/Dockerfile create mode 100644 graalvm-community-21-maven-4/Dockerfile create mode 100644 ibm-semeru-17-focal-maven-4/Dockerfile create mode 100644 ibm-semeru-21-jammy-maven-4/Dockerfile create mode 100644 libericaopenjdk-17-alpine-maven-4/Dockerfile create mode 100644 libericaopenjdk-17-debian-maven-4/Dockerfile create mode 100644 microsoft-openjdk-17-ubuntu-maven-4/Dockerfile create mode 100644 microsoft-openjdk-21-ubuntu-maven-4/Dockerfile create mode 100644 oracle-graalvm-17-maven-4/Dockerfile create mode 100644 oracle-graalvm-21-maven-4/Dockerfile create mode 100644 sapmachine-17-maven-4/Dockerfile create mode 100644 sapmachine-21-maven-4/Dockerfile create mode 100644 sapmachine-22-maven-4/Dockerfile diff --git a/.github/workflows/amazoncorretto-17-al2023-maven-4.yml b/.github/workflows/amazoncorretto-17-al2023-maven-4.yml new file mode 100644 index 00000000..86bfe86b --- /dev/null +++ b/.github/workflows/amazoncorretto-17-al2023-maven-4.yml @@ -0,0 +1,32 @@ +name: amazoncorretto-17-al2023-maven-4 + +on: + push: + branches: + - main + paths: + - "amazoncorretto-17-al2023-maven-4/**" + - .github/workflows/amazoncorretto-17-al2023-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "amazoncorretto-17-al2023-maven-4/**" + - .github/workflows/amazoncorretto-17-al2023-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: amazoncorretto-17-al2023-maven-4 + secrets: inherit diff --git a/.github/workflows/amazoncorretto-17-debian-maven-4.yml b/.github/workflows/amazoncorretto-17-debian-maven-4.yml new file mode 100644 index 00000000..b4aedfd6 --- /dev/null +++ b/.github/workflows/amazoncorretto-17-debian-maven-4.yml @@ -0,0 +1,32 @@ +name: amazoncorretto-17-debian-maven-4 + +on: + push: + branches: + - main + paths: + - "amazoncorretto-17-debian-maven-4/**" + - .github/workflows/amazoncorretto-17-debian-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "amazoncorretto-17-debian-maven-4/**" + - .github/workflows/amazoncorretto-17-debian-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: amazoncorretto-17-debian-maven-4 + secrets: inherit diff --git a/.github/workflows/amazoncorretto-17-maven-4.yml b/.github/workflows/amazoncorretto-17-maven-4.yml new file mode 100644 index 00000000..3dae084c --- /dev/null +++ b/.github/workflows/amazoncorretto-17-maven-4.yml @@ -0,0 +1,32 @@ +name: amazoncorretto-17-maven-4 + +on: + push: + branches: + - main + paths: + - "amazoncorretto-17-maven-4/**" + - .github/workflows/amazoncorretto-17-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "amazoncorretto-17-maven-4/**" + - .github/workflows/amazoncorretto-17-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: amazoncorretto-17-maven-4 + secrets: inherit diff --git a/.github/workflows/amazoncorretto-17-windowsservercore-maven-4.yml b/.github/workflows/amazoncorretto-17-windowsservercore-maven-4.yml new file mode 100644 index 00000000..1a7e9d4d --- /dev/null +++ b/.github/workflows/amazoncorretto-17-windowsservercore-maven-4.yml @@ -0,0 +1,30 @@ +name: amazoncorretto-17-windowsservercore-maven-4 + +on: + push: + paths: + - "amazoncorretto-17-windowsservercore-maven-4/**" + - "tests/**" + - github-action.ps1 + - "!tests/*.bats" + - "!tests/*.bash" + - "!tests/Dockerfile" + - .github/workflows/_template_windows.yml + pull_request: + paths: + - "amazoncorretto-17-windowsservercore-maven-4/**" + - "tests/**" + - github-action.ps1 + - "!tests/*.bash" + - "!tests/Dockerfile" + - .github/workflows/_template_windows.yml + +env: + DOCKER_PUSH: "true" + +jobs: + build: + uses: ./.github/workflows/_template_windows.yml + with: + directory: amazoncorretto-17-windowsservercore-maven-4 + secrets: inherit diff --git a/.github/workflows/amazoncorretto-21-al2023-maven-4.yml b/.github/workflows/amazoncorretto-21-al2023-maven-4.yml new file mode 100644 index 00000000..d7dd2e99 --- /dev/null +++ b/.github/workflows/amazoncorretto-21-al2023-maven-4.yml @@ -0,0 +1,32 @@ +name: amazoncorretto-21-al2023-maven-4 + +on: + push: + branches: + - main + paths: + - "amazoncorretto-21-al2023-maven-4/**" + - .github/workflows/amazoncorretto-21-al2023-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "amazoncorretto-21-al2023-maven-4/**" + - .github/workflows/amazoncorretto-21-al2023-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: amazoncorretto-21-al2023-maven-4 + secrets: inherit diff --git a/.github/workflows/amazoncorretto-21-debian-maven-4.yml b/.github/workflows/amazoncorretto-21-debian-maven-4.yml new file mode 100644 index 00000000..24895f2c --- /dev/null +++ b/.github/workflows/amazoncorretto-21-debian-maven-4.yml @@ -0,0 +1,32 @@ +name: amazoncorretto-21-debian-maven-4 + +on: + push: + branches: + - main + paths: + - "amazoncorretto-21-debian-maven-4/**" + - .github/workflows/amazoncorretto-21-debian-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "amazoncorretto-21-debian-maven-4/**" + - .github/workflows/amazoncorretto-21-debian-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: amazoncorretto-21-debian-maven-4 + secrets: inherit diff --git a/.github/workflows/amazoncorretto-21-maven-4.yml b/.github/workflows/amazoncorretto-21-maven-4.yml new file mode 100644 index 00000000..4b44e943 --- /dev/null +++ b/.github/workflows/amazoncorretto-21-maven-4.yml @@ -0,0 +1,32 @@ +name: amazoncorretto-21-maven-4 + +on: + push: + branches: + - main + paths: + - "amazoncorretto-21-maven-4/**" + - .github/workflows/amazoncorretto-21-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "amazoncorretto-21-maven-4/**" + - .github/workflows/amazoncorretto-21-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: amazoncorretto-21-maven-4 + secrets: inherit diff --git a/.github/workflows/azulzulu-17-alpine-maven-4.yml b/.github/workflows/azulzulu-17-alpine-maven-4.yml new file mode 100644 index 00000000..6246c143 --- /dev/null +++ b/.github/workflows/azulzulu-17-alpine-maven-4.yml @@ -0,0 +1,32 @@ +name: azulzulu-17-alpine-maven-4 + +on: + push: + branches: + - main + paths: + - "azulzulu-17-alpine-maven-4/**" + - .github/workflows/azulzulu-17-alpine-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "azulzulu-17-alpine-maven-4/**" + - .github/workflows/azulzulu-17-alpine-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: azulzulu-17-alpine-maven-4 + secrets: inherit diff --git a/.github/workflows/azulzulu-17-maven-4.yml b/.github/workflows/azulzulu-17-maven-4.yml new file mode 100644 index 00000000..85d1e106 --- /dev/null +++ b/.github/workflows/azulzulu-17-maven-4.yml @@ -0,0 +1,32 @@ +name: azulzulu-17-maven-4 + +on: + push: + branches: + - main + paths: + - "azulzulu-17-maven-4/**" + - .github/workflows/azulzulu-17-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "azulzulu-17-maven-4/**" + - .github/workflows/azulzulu-17-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: azulzulu-17-maven-4 + secrets: inherit diff --git a/.github/workflows/azulzulu-17-windowsservercore-maven-4.yml b/.github/workflows/azulzulu-17-windowsservercore-maven-4.yml new file mode 100644 index 00000000..c952016f --- /dev/null +++ b/.github/workflows/azulzulu-17-windowsservercore-maven-4.yml @@ -0,0 +1,30 @@ +name: azulzulu-17-windowsservercore-maven-4 + +on: + push: + paths: + - "azulzulu-17-windowsservercore-maven-4/**" + - "tests/**" + - github-action.ps1 + - "!tests/*.bats" + - "!tests/*.bash" + - "!tests/Dockerfile" + - .github/workflows/_template_windows.yml + pull_request: + paths: + - "azulzulu-17-windowsservercore-maven-4/**" + - "tests/**" + - github-action.ps1 + - "!tests/*.bash" + - "!tests/Dockerfile" + - .github/workflows/_template_windows.yml + +env: + DOCKER_PUSH: "true" + +jobs: + build: + uses: ./.github/workflows/_template_windows.yml + with: + directory: azulzulu-17-windowsservercore-maven-4 + secrets: inherit diff --git a/.github/workflows/azulzulu-21-alpine-maven-4.yml b/.github/workflows/azulzulu-21-alpine-maven-4.yml new file mode 100644 index 00000000..42826332 --- /dev/null +++ b/.github/workflows/azulzulu-21-alpine-maven-4.yml @@ -0,0 +1,32 @@ +name: azulzulu-21-alpine-maven-4 + +on: + push: + branches: + - main + paths: + - "azulzulu-21-alpine-maven-4/**" + - .github/workflows/azulzulu-21-alpine-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "azulzulu-21-alpine-maven-4/**" + - .github/workflows/azulzulu-21-alpine-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: azulzulu-21-alpine-maven-4 + secrets: inherit diff --git a/.github/workflows/azulzulu-21-maven-4.yml b/.github/workflows/azulzulu-21-maven-4.yml new file mode 100644 index 00000000..d916f39e --- /dev/null +++ b/.github/workflows/azulzulu-21-maven-4.yml @@ -0,0 +1,32 @@ +name: azulzulu-21-maven-4 + +on: + push: + branches: + - main + paths: + - "azulzulu-21-maven-4/**" + - .github/workflows/azulzulu-21-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "azulzulu-21-maven-4/**" + - .github/workflows/azulzulu-21-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: azulzulu-21-maven-4 + secrets: inherit diff --git a/.github/workflows/eclipse-temurin-17-alpine-maven-4.yml b/.github/workflows/eclipse-temurin-17-alpine-maven-4.yml new file mode 100644 index 00000000..4fa95307 --- /dev/null +++ b/.github/workflows/eclipse-temurin-17-alpine-maven-4.yml @@ -0,0 +1,32 @@ +name: eclipse-temurin-17-alpine-maven-4 + +on: + push: + branches: + - main + paths: + - "eclipse-temurin-17-alpine-maven-4/**" + - .github/workflows/eclipse-temurin-17-alpine-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "eclipse-temurin-17-alpine-maven-4/**" + - .github/workflows/eclipse-temurin-17-alpine-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: eclipse-temurin-17-alpine-maven-4 + secrets: inherit diff --git a/.github/workflows/eclipse-temurin-17-focal-maven-4.yml b/.github/workflows/eclipse-temurin-17-focal-maven-4.yml new file mode 100644 index 00000000..84fd9d8f --- /dev/null +++ b/.github/workflows/eclipse-temurin-17-focal-maven-4.yml @@ -0,0 +1,32 @@ +name: eclipse-temurin-17-focal-maven-4 + +on: + push: + branches: + - main + paths: + - "eclipse-temurin-17-focal-maven-4/**" + - .github/workflows/eclipse-temurin-17-focal-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "eclipse-temurin-17-focal-maven-4/**" + - .github/workflows/eclipse-temurin-17-focal-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: eclipse-temurin-17-focal-maven-4 + secrets: inherit diff --git a/.github/workflows/eclipse-temurin-17-maven-4.yml b/.github/workflows/eclipse-temurin-17-maven-4.yml new file mode 100644 index 00000000..9faa210c --- /dev/null +++ b/.github/workflows/eclipse-temurin-17-maven-4.yml @@ -0,0 +1,32 @@ +name: eclipse-temurin-17-maven-4 + +on: + push: + branches: + - main + paths: + - "eclipse-temurin-17-maven-4/**" + - .github/workflows/eclipse-temurin-17-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "eclipse-temurin-17-maven-4/**" + - .github/workflows/eclipse-temurin-17-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: eclipse-temurin-17-maven-4 + secrets: inherit diff --git a/.github/workflows/eclipse-temurin-21-alpine-maven-4.yml b/.github/workflows/eclipse-temurin-21-alpine-maven-4.yml new file mode 100644 index 00000000..00b6161d --- /dev/null +++ b/.github/workflows/eclipse-temurin-21-alpine-maven-4.yml @@ -0,0 +1,32 @@ +name: eclipse-temurin-21-alpine-maven-4 + +on: + push: + branches: + - main + paths: + - "eclipse-temurin-21-alpine-maven-4/**" + - .github/workflows/eclipse-temurin-21-alpine-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "eclipse-temurin-21-alpine-maven-4/**" + - .github/workflows/eclipse-temurin-21-alpine-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: eclipse-temurin-21-alpine-maven-4 + secrets: inherit diff --git a/.github/workflows/eclipse-temurin-21-jammy-maven-4.yml b/.github/workflows/eclipse-temurin-21-jammy-maven-4.yml new file mode 100644 index 00000000..f2a8688c --- /dev/null +++ b/.github/workflows/eclipse-temurin-21-jammy-maven-4.yml @@ -0,0 +1,32 @@ +name: eclipse-temurin-21-jammy-maven-4 + +on: + push: + branches: + - main + paths: + - "eclipse-temurin-21-jammy-maven-4/**" + - .github/workflows/eclipse-temurin-21-jammy-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "eclipse-temurin-21-jammy-maven-4/**" + - .github/workflows/eclipse-temurin-21-jammy-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: eclipse-temurin-21-jammy-maven-4 + secrets: inherit diff --git a/.github/workflows/eclipse-temurin-21-maven-4.yml b/.github/workflows/eclipse-temurin-21-maven-4.yml new file mode 100644 index 00000000..78cffea0 --- /dev/null +++ b/.github/workflows/eclipse-temurin-21-maven-4.yml @@ -0,0 +1,32 @@ +name: eclipse-temurin-21-maven-4 + +on: + push: + branches: + - main + paths: + - "eclipse-temurin-21-maven-4/**" + - .github/workflows/eclipse-temurin-21-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "eclipse-temurin-21-maven-4/**" + - .github/workflows/eclipse-temurin-21-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: eclipse-temurin-21-maven-4 + secrets: inherit diff --git a/.github/workflows/eclipse-temurin-22-alpine-maven-4.yml b/.github/workflows/eclipse-temurin-22-alpine-maven-4.yml new file mode 100644 index 00000000..83f6b508 --- /dev/null +++ b/.github/workflows/eclipse-temurin-22-alpine-maven-4.yml @@ -0,0 +1,32 @@ +name: eclipse-temurin-22-alpine-maven-4 + +on: + push: + branches: + - main + paths: + - "eclipse-temurin-22-alpine-maven-4/**" + - .github/workflows/eclipse-temurin-22-alpine-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "eclipse-temurin-22-alpine-maven-4/**" + - .github/workflows/eclipse-temurin-22-alpine-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: eclipse-temurin-22-alpine-maven-4 + secrets: inherit diff --git a/.github/workflows/eclipse-temurin-22-jammy-maven-4.yml b/.github/workflows/eclipse-temurin-22-jammy-maven-4.yml new file mode 100644 index 00000000..3c0153e2 --- /dev/null +++ b/.github/workflows/eclipse-temurin-22-jammy-maven-4.yml @@ -0,0 +1,32 @@ +name: eclipse-temurin-22-jammy-maven-4 + +on: + push: + branches: + - main + paths: + - "eclipse-temurin-22-jammy-maven-4/**" + - .github/workflows/eclipse-temurin-22-jammy-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "eclipse-temurin-22-jammy-maven-4/**" + - .github/workflows/eclipse-temurin-22-jammy-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: eclipse-temurin-22-jammy-maven-4 + secrets: inherit diff --git a/.github/workflows/eclipse-temurin-22-maven-4.yml b/.github/workflows/eclipse-temurin-22-maven-4.yml new file mode 100644 index 00000000..e3ce879f --- /dev/null +++ b/.github/workflows/eclipse-temurin-22-maven-4.yml @@ -0,0 +1,32 @@ +name: eclipse-temurin-22-maven-4 + +on: + push: + branches: + - main + paths: + - "eclipse-temurin-22-maven-4/**" + - .github/workflows/eclipse-temurin-22-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "eclipse-temurin-22-maven-4/**" + - .github/workflows/eclipse-temurin-22-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: eclipse-temurin-22-maven-4 + secrets: inherit diff --git a/.github/workflows/graalvm-community-17-maven-4.yml b/.github/workflows/graalvm-community-17-maven-4.yml new file mode 100644 index 00000000..287a57c4 --- /dev/null +++ b/.github/workflows/graalvm-community-17-maven-4.yml @@ -0,0 +1,32 @@ +name: graalvm-community-17-maven-4 + +on: + push: + branches: + - main + paths: + - "graalvm-community-17-maven-4/**" + - .github/workflows/graalvm-community-17-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "graalvm-community-17-maven-4/**" + - .github/workflows/graalvm-community-17-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: graalvm-community-17-maven-4 + secrets: inherit diff --git a/.github/workflows/graalvm-community-21-maven-4.yml b/.github/workflows/graalvm-community-21-maven-4.yml new file mode 100644 index 00000000..17f05cc1 --- /dev/null +++ b/.github/workflows/graalvm-community-21-maven-4.yml @@ -0,0 +1,32 @@ +name: graalvm-community-21-maven-4 + +on: + push: + branches: + - main + paths: + - "graalvm-community-21-maven-4/**" + - .github/workflows/graalvm-community-21-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "graalvm-community-21-maven-4/**" + - .github/workflows/graalvm-community-21-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: graalvm-community-21-maven-4 + secrets: inherit diff --git a/.github/workflows/ibm-semeru-17-focal-maven-4.yml b/.github/workflows/ibm-semeru-17-focal-maven-4.yml new file mode 100644 index 00000000..2c3242af --- /dev/null +++ b/.github/workflows/ibm-semeru-17-focal-maven-4.yml @@ -0,0 +1,32 @@ +name: ibm-semeru-17-focal-maven-4 + +on: + push: + branches: + - main + paths: + - "ibm-semeru-17-focal-maven-4/**" + - .github/workflows/ibm-semeru-17-focal-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "ibm-semeru-17-focal-maven-4/**" + - .github/workflows/ibm-semeru-17-focal-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: ibm-semeru-17-focal-maven-4 + secrets: inherit diff --git a/.github/workflows/ibm-semeru-21-jammy-maven-4.yml b/.github/workflows/ibm-semeru-21-jammy-maven-4.yml new file mode 100644 index 00000000..aa1eaaed --- /dev/null +++ b/.github/workflows/ibm-semeru-21-jammy-maven-4.yml @@ -0,0 +1,32 @@ +name: ibm-semeru-21-jammy-maven-4 + +on: + push: + branches: + - main + paths: + - "ibm-semeru-21-jammy-maven-4/**" + - .github/workflows/ibm-semeru-21-jammy-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "ibm-semeru-21-jammy-maven-4/**" + - .github/workflows/ibm-semeru-21-jammy-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: ibm-semeru-21-jammy-maven-4 + secrets: inherit diff --git a/.github/workflows/libericaopenjdk-17-alpine-maven-4.yml b/.github/workflows/libericaopenjdk-17-alpine-maven-4.yml new file mode 100644 index 00000000..87f291b8 --- /dev/null +++ b/.github/workflows/libericaopenjdk-17-alpine-maven-4.yml @@ -0,0 +1,32 @@ +name: libericaopenjdk-17-alpine-maven-4 + +on: + push: + branches: + - main + paths: + - "libericaopenjdk-17-alpine-maven-4/**" + - .github/workflows/libericaopenjdk-17-alpine-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "libericaopenjdk-17-alpine-maven-4/**" + - .github/workflows/libericaopenjdk-17-alpine-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: libericaopenjdk-17-alpine-maven-4 + secrets: inherit diff --git a/.github/workflows/libericaopenjdk-17-debian-maven-4.yml b/.github/workflows/libericaopenjdk-17-debian-maven-4.yml new file mode 100644 index 00000000..676243a4 --- /dev/null +++ b/.github/workflows/libericaopenjdk-17-debian-maven-4.yml @@ -0,0 +1,32 @@ +name: libericaopenjdk-17-debian-maven-4 + +on: + push: + branches: + - main + paths: + - "libericaopenjdk-17-debian-maven-4/**" + - .github/workflows/libericaopenjdk-17-debian-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "libericaopenjdk-17-debian-maven-4/**" + - .github/workflows/libericaopenjdk-17-debian-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: libericaopenjdk-17-debian-maven-4 + secrets: inherit diff --git a/.github/workflows/microsoft-openjdk-17-ubuntu-maven-4.yml b/.github/workflows/microsoft-openjdk-17-ubuntu-maven-4.yml new file mode 100644 index 00000000..0206fbc7 --- /dev/null +++ b/.github/workflows/microsoft-openjdk-17-ubuntu-maven-4.yml @@ -0,0 +1,32 @@ +name: microsoft-openjdk-17-ubuntu-maven-4 + +on: + push: + branches: + - main + paths: + - "microsoft-openjdk-17-ubuntu-maven-4/**" + - .github/workflows/microsoft-openjdk-17-ubuntu-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "microsoft-openjdk-17-ubuntu-maven-4/**" + - .github/workflows/microsoft-openjdk-17-ubuntu-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: microsoft-openjdk-17-ubuntu-maven-4 + secrets: inherit diff --git a/.github/workflows/microsoft-openjdk-21-ubuntu-maven-4.yml b/.github/workflows/microsoft-openjdk-21-ubuntu-maven-4.yml new file mode 100644 index 00000000..cb44112a --- /dev/null +++ b/.github/workflows/microsoft-openjdk-21-ubuntu-maven-4.yml @@ -0,0 +1,32 @@ +name: microsoft-openjdk-21-ubuntu-maven-4 + +on: + push: + branches: + - main + paths: + - "microsoft-openjdk-21-ubuntu-maven-4/**" + - .github/workflows/microsoft-openjdk-21-ubuntu-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "microsoft-openjdk-21-ubuntu-maven-4/**" + - .github/workflows/microsoft-openjdk-21-ubuntu-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: microsoft-openjdk-21-ubuntu-maven-4 + secrets: inherit diff --git a/.github/workflows/oracle-graalvm-17-maven-4.yml b/.github/workflows/oracle-graalvm-17-maven-4.yml new file mode 100644 index 00000000..27002828 --- /dev/null +++ b/.github/workflows/oracle-graalvm-17-maven-4.yml @@ -0,0 +1,32 @@ +name: oracle-graalvm-17-maven-4 + +on: + push: + branches: + - main + paths: + - "oracle-graalvm-17-maven-4/**" + - .github/workflows/oracle-graalvm-17-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "oracle-graalvm-17-maven-4/**" + - .github/workflows/oracle-graalvm-17-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: oracle-graalvm-17-maven-4 + secrets: inherit diff --git a/.github/workflows/oracle-graalvm-21-maven-4.yml b/.github/workflows/oracle-graalvm-21-maven-4.yml new file mode 100644 index 00000000..403856d6 --- /dev/null +++ b/.github/workflows/oracle-graalvm-21-maven-4.yml @@ -0,0 +1,32 @@ +name: oracle-graalvm-21-maven-4 + +on: + push: + branches: + - main + paths: + - "oracle-graalvm-21-maven-4/**" + - .github/workflows/oracle-graalvm-21-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "oracle-graalvm-21-maven-4/**" + - .github/workflows/oracle-graalvm-21-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: oracle-graalvm-21-maven-4 + secrets: inherit diff --git a/.github/workflows/sapmachine-17-maven-4.yml b/.github/workflows/sapmachine-17-maven-4.yml new file mode 100644 index 00000000..f45a3bd2 --- /dev/null +++ b/.github/workflows/sapmachine-17-maven-4.yml @@ -0,0 +1,32 @@ +name: sapmachine-17-maven-4 + +on: + push: + branches: + - main + paths: + - "sapmachine-17-maven-4/**" + - .github/workflows/sapmachine-17-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "sapmachine-17-maven-4/**" + - .github/workflows/sapmachine-17-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: sapmachine-17-maven-4 + secrets: inherit diff --git a/.github/workflows/sapmachine-21-maven-4.yml b/.github/workflows/sapmachine-21-maven-4.yml new file mode 100644 index 00000000..95b2f225 --- /dev/null +++ b/.github/workflows/sapmachine-21-maven-4.yml @@ -0,0 +1,32 @@ +name: sapmachine-21-maven-4 + +on: + push: + branches: + - main + paths: + - "sapmachine-21-maven-4/**" + - .github/workflows/sapmachine-21-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "sapmachine-21-maven-4/**" + - .github/workflows/sapmachine-21-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: sapmachine-21-maven-4 + secrets: inherit diff --git a/.github/workflows/sapmachine-22-maven-4.yml b/.github/workflows/sapmachine-22-maven-4.yml new file mode 100644 index 00000000..1b25c8a5 --- /dev/null +++ b/.github/workflows/sapmachine-22-maven-4.yml @@ -0,0 +1,32 @@ +name: sapmachine-22-maven-4 + +on: + push: + branches: + - main + paths: + - "sapmachine-22-maven-4/**" + - .github/workflows/sapmachine-22-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "sapmachine-22-maven-4/**" + - .github/workflows/sapmachine-22-maven-4.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: sapmachine-22-maven-4 + secrets: inherit diff --git a/Dockerfile-template-maven-4 b/Dockerfile-template-maven-4 new file mode 100644 index 00000000..9f27f962 --- /dev/null +++ b/Dockerfile-template-maven-4 @@ -0,0 +1,20 @@ +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/amazoncorretto-17-al2023-maven-4/Dockerfile b/amazoncorretto-17-al2023-maven-4/Dockerfile new file mode 100644 index 00000000..fb659355 --- /dev/null +++ b/amazoncorretto-17-al2023-maven-4/Dockerfile @@ -0,0 +1,25 @@ +FROM amazoncorretto:17-al2023 + +RUN yum install -y tar which gzip findutils # TODO remove +RUN yum install -y openssh-clients + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/amazoncorretto-17-debian-maven-4/Dockerfile b/amazoncorretto-17-debian-maven-4/Dockerfile new file mode 100644 index 00000000..64205f39 --- /dev/null +++ b/amazoncorretto-17-debian-maven-4/Dockerfile @@ -0,0 +1,41 @@ +# Update EXTRA_TAG_SUFFIXES to new release when changing to next stable debian release +# EXTRA_TAG_SUFFIXES=bookworm +FROM debian:bookworm-slim + +# install corretto after verifying that the key is the one we expect. +# and keep openssh client +RUN apt-get update \ + && apt-get install -y curl gnupg openssh-client \ + && export GNUPGHOME="$(mktemp -d)" \ + && curl -fL https://apt.corretto.aws/corretto.key | gpg --batch --import \ + && gpg --batch --export '6DC3636DAE534049C8B94623A122542AB04F24E3' > /usr/share/keyrings/corretto.gpg \ + && unset GNUPGHOME \ + && echo "deb [signed-by=/usr/share/keyrings/corretto.gpg] https://apt.corretto.aws stable main" > /etc/apt/sources.list.d/corretto.list \ + && apt-get update \ + && apt-get remove --purge --autoremove -y curl gnupg \ + && apt-get install -y java-17-amazon-corretto-jdk \ + && rm -rf /var/lib/apt/lists/* + +# set JAVA_HOME manually since nothing else will set it +ENV JAVA_HOME="/usr/lib/jvm/java-17-amazon-corretto" + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/amazoncorretto-17-maven-4/Dockerfile b/amazoncorretto-17-maven-4/Dockerfile new file mode 100644 index 00000000..347a8f6f --- /dev/null +++ b/amazoncorretto-17-maven-4/Dockerfile @@ -0,0 +1,25 @@ +FROM amazoncorretto:17 + +RUN yum install -y tar which gzip # TODO remove +RUN yum install -y openssh-clients + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/amazoncorretto-17-windowsservercore-maven-4/Dockerfile b/amazoncorretto-17-windowsservercore-maven-4/Dockerfile new file mode 100644 index 00000000..80e2e8fb --- /dev/null +++ b/amazoncorretto-17-windowsservercore-maven-4/Dockerfile @@ -0,0 +1,46 @@ +# escape=` +FROM mcr.microsoft.com/windows/servercore:ltsc2019 + +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] + +ARG zip=amazon-corretto-17-x64-windows-jdk.zip +ARG uri=https://corretto.aws/downloads/latest +ARG hash=df6cb295eb17ba7e898f99657da977bb96389c5e97de94f3a06053650d7c4e16 + +RUN Invoke-WebRequest -Uri $('{0}/{1}' -f $env:uri,$env:zip) -OutFile C:/$env:zip ; ` + if((Get-FileHash C:/$env:zip -Algorithm SHA256).Hash.ToLower() -ne $env:hash) { exit 1 } ; ` + Expand-Archive -Path C:/$env:zip -Destination C:/ProgramData ; ` + Remove-Item C:/${env:zip} + +ENV JAVA_HOME=C:/ProgramData/jdk17.0.12_7 + +ARG USER_HOME_DIR="C:/Users/ContainerUser" +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG SHA=49d656042813ead127613da3c85e063c41ef5a25b54ec783d90b51fbc1ad7401f0c0d4c860536d6baea180ab533c84d52c8e38b0c6ab52cc699105ead0418ab4 +ARG BASE_URL=https://apache.osuosl.org/maven/maven-4/${MAVEN_VERSION}/binaries + +RUN Invoke-WebRequest -Uri ${env:BASE_URL}/apache-maven-${env:MAVEN_VERSION}-bin.zip -OutFile ${env:TEMP}/apache-maven.zip ; ` + if((Get-FileHash -Algorithm SHA512 -Path ${env:TEMP}/apache-maven.zip).Hash.ToLower() -ne ${env:SHA}) { exit 1 } ; ` + Expand-Archive -Path ${env:TEMP}/apache-maven.zip -Destination C:/ProgramData ; ` + Move-Item C:/ProgramData/apache-maven-${env:MAVEN_VERSION} C:/ProgramData/Maven ; ` + New-Item -ItemType Directory -Path C:/ProgramData/Maven/Reference | Out-Null ; ` + Remove-Item ${env:TEMP}/apache-maven.zip + +ENV MAVEN_HOME=C:/ProgramData/Maven +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +COPY mvn-entrypoint.ps1 C:/ProgramData/Maven/mvn-entrypoint.ps1 +COPY settings-docker.xml C:/ProgramData/Maven/Reference/settings-docker.xml + +RUN setx /M PATH $('{0};{1}' -f $env:PATH,'C:\ProgramData\Maven\bin') | Out-Null + +USER ContainerUser +ENV JAVA_HOME=${JAVA_HOME} + +ENTRYPOINT ["powershell.exe", "-f", "C:/ProgramData/Maven/mvn-entrypoint.ps1"] +CMD ["mvn"] diff --git a/amazoncorretto-17-windowsservercore-maven-4/mvn-entrypoint.ps1 b/amazoncorretto-17-windowsservercore-maven-4/mvn-entrypoint.ps1 new file mode 100644 index 00000000..13e3319b --- /dev/null +++ b/amazoncorretto-17-windowsservercore-maven-4/mvn-entrypoint.ps1 @@ -0,0 +1,49 @@ + +# Copy files from C:/ProgramData/Maven/Reference into ${MAVEN_CONFIG} +# So the initial ~/.m2 is set with expected content. +# Don't override, as this is just a reference setup + +function Copy-ReferenceFiles() { + $log = "${env:MAVEN_CONFIG}/copy_reference_file.log" + $ref = "C:/ProgramData/Maven/Reference" + + $repo = Join-Path $env:MAVEN_CONFIG 'repository' + + New-Item -Path $repo -ItemType Directory -Force | Out-Null + Write-Output $null > $log + if((Test-Path $repo) -and (Test-Path $log)) { + $count = (Get-ChildItem $repo | Measure-Object).Count + if($count -eq 0) { + # destination is empty... + Add-Content -Path $log -Value "--- Copying all files to ${env:MAVEN_CONFIG} at $(Get-Date)" + Copy-Item -Path "$ref\*" -Destination $env:MAVEN_CONFIG -Force -Recurse | Add-Content -Path $log + } else { + # destination is non-empty, copy file-by-file + Add-Content -Path $log -Value "--- Copying individual files to ${MAVEN_CONFIG} at $(Get-Date)" + Get-ChildItem -Path $ref -File | ForEach-Object { + Push-Location $ref + $rel = Resolve-Path -Path $($_.FullName) -Relative + Pop-Location + if(!(Test-Path (Join-Path $env:MAVEN_CONFIG $rel)) -or (Test-Path $('{0}.override' -f $_.FullName))) { + $dir = Join-Path $env:MAVEN_CONFIG $($rel.DirectoryName) + if(!(Test-Path $dir)) { + New-Item -Path $dir -ItemType Directory | Out-Null + } + Copy-Item -Path $_.FullName -Destination (Join-Path $env:MAVEN_CONFIG $rel) | Add-Content -Path $log + } + } + } + Add-Content -Path $log -Value "" + } else { + Write-Warning "Can not write to ${log}. Wrong volume permissions? Carrying on ..." + } +} + +Push-Location -StackName 'maven-entrypoint' +Copy-ReferenceFiles +Pop-Location -StackName 'maven-entrypoint' + +Remove-Item Env:\MAVEN_CONFIG + +Invoke-Expression "$args" +exit $lastExitCode diff --git a/amazoncorretto-17-windowsservercore-maven-4/settings-docker.xml b/amazoncorretto-17-windowsservercore-maven-4/settings-docker.xml new file mode 100644 index 00000000..9cd1a5ea --- /dev/null +++ b/amazoncorretto-17-windowsservercore-maven-4/settings-docker.xml @@ -0,0 +1,6 @@ + + C:\ProgramData\Maven\Reference\repository + diff --git a/amazoncorretto-21-al2023-maven-4/Dockerfile b/amazoncorretto-21-al2023-maven-4/Dockerfile new file mode 100644 index 00000000..f783ebaf --- /dev/null +++ b/amazoncorretto-21-al2023-maven-4/Dockerfile @@ -0,0 +1,25 @@ +FROM amazoncorretto:21-al2023 + +RUN yum install -y tar which gzip findutils # TODO remove +RUN yum install -y openssh-clients + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/amazoncorretto-21-debian-maven-4/Dockerfile b/amazoncorretto-21-debian-maven-4/Dockerfile new file mode 100644 index 00000000..8286b0c8 --- /dev/null +++ b/amazoncorretto-21-debian-maven-4/Dockerfile @@ -0,0 +1,41 @@ +# Update EXTRA_TAG_SUFFIXES to new release when changing to next stable debian release +# EXTRA_TAG_SUFFIXES=bookworm +FROM debian:bookworm-slim + +# install corretto after verifying that the key is the one we expect. +# and keep openssh client +RUN apt-get update \ + && apt-get install -y curl gnupg openssh-client \ + && export GNUPGHOME="$(mktemp -d)" \ + && curl -fL https://apt.corretto.aws/corretto.key | gpg --batch --import \ + && gpg --batch --export '6DC3636DAE534049C8B94623A122542AB04F24E3' > /usr/share/keyrings/corretto.gpg \ + && unset GNUPGHOME \ + && echo "deb [signed-by=/usr/share/keyrings/corretto.gpg] https://apt.corretto.aws stable main" > /etc/apt/sources.list.d/corretto.list \ + && apt-get update \ + && apt-get remove --purge --autoremove -y curl gnupg \ + && apt-get install -y java-21-amazon-corretto-jdk \ + && rm -rf /var/lib/apt/lists/* + +# set JAVA_HOME manually since nothing else will set it +ENV JAVA_HOME="/usr/lib/jvm/java-21-amazon-corretto" + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/amazoncorretto-21-maven-4/Dockerfile b/amazoncorretto-21-maven-4/Dockerfile new file mode 100644 index 00000000..656c3105 --- /dev/null +++ b/amazoncorretto-21-maven-4/Dockerfile @@ -0,0 +1,25 @@ +FROM amazoncorretto:21 + +RUN yum install -y tar which gzip # TODO remove +RUN yum install -y openssh-clients + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/azulzulu-17-alpine-maven-4/Dockerfile b/azulzulu-17-alpine-maven-4/Dockerfile new file mode 100644 index 00000000..f6359724 --- /dev/null +++ b/azulzulu-17-alpine-maven-4/Dockerfile @@ -0,0 +1,24 @@ +FROM azul/zulu-openjdk-alpine:17 + +RUN apk add --no-cache bash procps curl tar openssh-client + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/azulzulu-17-maven-4/Dockerfile b/azulzulu-17-maven-4/Dockerfile new file mode 100644 index 00000000..ffa3152a --- /dev/null +++ b/azulzulu-17-maven-4/Dockerfile @@ -0,0 +1,26 @@ +FROM azul/zulu-openjdk:17 + +RUN apt-get update \ + && apt-get install -y ca-certificates curl openssh-client --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/azulzulu-17-windowsservercore-maven-4/Dockerfile b/azulzulu-17-windowsservercore-maven-4/Dockerfile new file mode 100644 index 00000000..401a01dd --- /dev/null +++ b/azulzulu-17-windowsservercore-maven-4/Dockerfile @@ -0,0 +1,46 @@ +# escape=` +FROM mcr.microsoft.com/windows/servercore:ltsc2019 + +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] + +ARG zip=zulu17.48.15-ca-jdk17.0.10-win_x64.zip +ARG uri=https://cdn.azul.com/zulu/bin +ARG hash=169bcb1c519a1cf18e3589bcbaea036eb8114311425660e6c919376227855be3 + +RUN Invoke-WebRequest -Uri $('{0}/{1}' -f $env:uri,$env:zip) -OutFile C:/$env:zip ; ` + if((Get-FileHash C:/$env:zip -Algorithm SHA256).Hash.ToLower() -ne $env:hash) { exit 1 } ; ` + Expand-Archive -Path C:/$env:zip -Destination C:/ProgramData ; ` + Remove-Item C:/${env:zip} + +ARG USER_HOME_DIR="C:/Users/ContainerUser" +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG SHA=49d656042813ead127613da3c85e063c41ef5a25b54ec783d90b51fbc1ad7401f0c0d4c860536d6baea180ab533c84d52c8e38b0c6ab52cc699105ead0418ab4 +ARG BASE_URL=https://apache.osuosl.org/maven/maven-4/${MAVEN_VERSION}/binaries + +RUN Invoke-WebRequest -Uri ${env:BASE_URL}/apache-maven-${env:MAVEN_VERSION}-bin.zip -OutFile ${env:TEMP}/apache-maven.zip ; ` + if((Get-FileHash -Algorithm SHA512 -Path ${env:TEMP}/apache-maven.zip).Hash.ToLower() -ne ${env:SHA}) { exit 1 } ; ` + Expand-Archive -Path ${env:TEMP}/apache-maven.zip -Destination C:/ProgramData ; ` + Move-Item C:/ProgramData/apache-maven-${env:MAVEN_VERSION} C:/ProgramData/Maven ; ` + New-Item -ItemType Directory -Path C:/ProgramData/Maven/Reference | Out-Null ; ` + Remove-Item ${env:TEMP}/apache-maven.zip + +ENV MAVEN_HOME=C:/ProgramData/Maven +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENV JAVA_HOME=C:/ProgramData/zulu17.48.15-ca-jdk17.0.10-win_x64 + +COPY mvn-entrypoint.ps1 C:/ProgramData/Maven/mvn-entrypoint.ps1 +COPY settings-docker.xml C:/ProgramData/Maven/Reference/settings-docker.xml + +RUN setx /M PATH $('{0};{1}' -f $env:PATH,'C:\ProgramData\Maven\bin') | Out-Null + +USER ContainerUser +ENV JAVA_HOME=${JAVA_HOME} + +ENTRYPOINT ["powershell.exe", "-f", "C:/ProgramData/Maven/mvn-entrypoint.ps1"] +CMD ["mvn"] diff --git a/azulzulu-17-windowsservercore-maven-4/mvn-entrypoint.ps1 b/azulzulu-17-windowsservercore-maven-4/mvn-entrypoint.ps1 new file mode 100644 index 00000000..13e3319b --- /dev/null +++ b/azulzulu-17-windowsservercore-maven-4/mvn-entrypoint.ps1 @@ -0,0 +1,49 @@ + +# Copy files from C:/ProgramData/Maven/Reference into ${MAVEN_CONFIG} +# So the initial ~/.m2 is set with expected content. +# Don't override, as this is just a reference setup + +function Copy-ReferenceFiles() { + $log = "${env:MAVEN_CONFIG}/copy_reference_file.log" + $ref = "C:/ProgramData/Maven/Reference" + + $repo = Join-Path $env:MAVEN_CONFIG 'repository' + + New-Item -Path $repo -ItemType Directory -Force | Out-Null + Write-Output $null > $log + if((Test-Path $repo) -and (Test-Path $log)) { + $count = (Get-ChildItem $repo | Measure-Object).Count + if($count -eq 0) { + # destination is empty... + Add-Content -Path $log -Value "--- Copying all files to ${env:MAVEN_CONFIG} at $(Get-Date)" + Copy-Item -Path "$ref\*" -Destination $env:MAVEN_CONFIG -Force -Recurse | Add-Content -Path $log + } else { + # destination is non-empty, copy file-by-file + Add-Content -Path $log -Value "--- Copying individual files to ${MAVEN_CONFIG} at $(Get-Date)" + Get-ChildItem -Path $ref -File | ForEach-Object { + Push-Location $ref + $rel = Resolve-Path -Path $($_.FullName) -Relative + Pop-Location + if(!(Test-Path (Join-Path $env:MAVEN_CONFIG $rel)) -or (Test-Path $('{0}.override' -f $_.FullName))) { + $dir = Join-Path $env:MAVEN_CONFIG $($rel.DirectoryName) + if(!(Test-Path $dir)) { + New-Item -Path $dir -ItemType Directory | Out-Null + } + Copy-Item -Path $_.FullName -Destination (Join-Path $env:MAVEN_CONFIG $rel) | Add-Content -Path $log + } + } + } + Add-Content -Path $log -Value "" + } else { + Write-Warning "Can not write to ${log}. Wrong volume permissions? Carrying on ..." + } +} + +Push-Location -StackName 'maven-entrypoint' +Copy-ReferenceFiles +Pop-Location -StackName 'maven-entrypoint' + +Remove-Item Env:\MAVEN_CONFIG + +Invoke-Expression "$args" +exit $lastExitCode diff --git a/azulzulu-17-windowsservercore-maven-4/settings-docker.xml b/azulzulu-17-windowsservercore-maven-4/settings-docker.xml new file mode 100644 index 00000000..9cd1a5ea --- /dev/null +++ b/azulzulu-17-windowsservercore-maven-4/settings-docker.xml @@ -0,0 +1,6 @@ + + C:\ProgramData\Maven\Reference\repository + diff --git a/azulzulu-21-alpine-maven-4/Dockerfile b/azulzulu-21-alpine-maven-4/Dockerfile new file mode 100644 index 00000000..ab095d72 --- /dev/null +++ b/azulzulu-21-alpine-maven-4/Dockerfile @@ -0,0 +1,24 @@ +FROM azul/zulu-openjdk-alpine:21 + +RUN apk add --no-cache bash procps curl tar openssh-client + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/azulzulu-21-maven-4/Dockerfile b/azulzulu-21-maven-4/Dockerfile new file mode 100644 index 00000000..41ed0489 --- /dev/null +++ b/azulzulu-21-maven-4/Dockerfile @@ -0,0 +1,26 @@ +FROM azul/zulu-openjdk:21 + +RUN apt-get update \ + && apt-get install -y ca-certificates curl openssh-client --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/eclipse-temurin-17-alpine-maven-4/Dockerfile b/eclipse-temurin-17-alpine-maven-4/Dockerfile new file mode 100644 index 00000000..d26157ea --- /dev/null +++ b/eclipse-temurin-17-alpine-maven-4/Dockerfile @@ -0,0 +1,24 @@ +FROM eclipse-temurin:17-jdk-alpine + +RUN apk add --no-cache bash procps curl tar openssh-client + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/eclipse-temurin-17-focal-maven-4/Dockerfile b/eclipse-temurin-17-focal-maven-4/Dockerfile new file mode 100644 index 00000000..346a75c1 --- /dev/null +++ b/eclipse-temurin-17-focal-maven-4/Dockerfile @@ -0,0 +1,26 @@ +FROM eclipse-temurin:17-jdk-focal + +RUN apt-get update \ + && apt-get install -y ca-certificates curl git openssh-client --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/eclipse-temurin-17-maven-4/Dockerfile b/eclipse-temurin-17-maven-4/Dockerfile new file mode 100644 index 00000000..041f23dd --- /dev/null +++ b/eclipse-temurin-17-maven-4/Dockerfile @@ -0,0 +1,58 @@ +FROM eclipse-temurin:17-jdk as builder + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ARG SHA=9df71ce42689e1942c9f134b91f93e29be29b521d898c25015dd4edf45249ea4a20000623bbffba7bb585e223e563fa6292241dda7b9034b9822bdfcb29bb269 +ARG BASE_URL=https://downloads.apache.org/maven/maven-4/${MAVEN_VERSION}/binaries + +ENV MAVEN_HOME /usr/share/maven +ENV MAVEN_CONFIG "$USER_HOME_DIR/.m2" + +RUN apt-get update \ + && apt-get install -y ca-certificates curl git gnupg dirmngr --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* +RUN set -eux; curl -fsSLO --compressed ${BASE_URL}/apache-maven-${MAVEN_VERSION}-bin.tar.gz \ + && echo "${SHA} *apache-maven-${MAVEN_VERSION}-bin.tar.gz" | sha512sum -c - \ + && curl -fsSLO --compressed ${BASE_URL}/apache-maven-${MAVEN_VERSION}-bin.tar.gz.asc \ + && export GNUPGHOME="$(mktemp -d)"; \ + for key in \ + 6A814B1F869C2BBEAB7CB7271A2A1C94BDE89688 \ + 29BEA2A645F2D6CED7FB12E02B172E3E156466E8 \ + 073F7A9345756F3B40CDB99E6C70A3B7599C5736 \ + ; do \ + gpg --batch --keyserver hkps://keyserver.ubuntu.com --recv-keys "$key" ; \ + done; \ + gpg --batch --verify apache-maven-${MAVEN_VERSION}-bin.tar.gz.asc apache-maven-${MAVEN_VERSION}-bin.tar.gz +RUN mkdir -p ${MAVEN_HOME} ${MAVEN_HOME}/ref \ + && tar -xzf apache-maven-${MAVEN_VERSION}-bin.tar.gz -C ${MAVEN_HOME} --strip-components=1 \ + && ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn +# smoke test +RUN mvn --version + + +FROM eclipse-temurin:17-jdk + +RUN apt-get update \ + && apt-get install -y ca-certificates curl git openssh-client --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=builder ${MAVEN_HOME} ${MAVEN_HOME} +COPY mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY settings-docker.xml /usr/share/maven/ref/ + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/eclipse-temurin-17-maven-4/mvn-entrypoint.sh b/eclipse-temurin-17-maven-4/mvn-entrypoint.sh new file mode 100755 index 00000000..9f87dfa2 --- /dev/null +++ b/eclipse-temurin-17-maven-4/mvn-entrypoint.sh @@ -0,0 +1,50 @@ +#! /bin/sh -eu + +# Copy files from /usr/share/maven/ref into ${MAVEN_CONFIG} +# So the initial ~/.m2 is set with expected content. +# Don't override, as this is just a reference setup + +copy_reference_files() { + local log="$MAVEN_CONFIG/copy_reference_file.log" + local ref="/usr/share/maven/ref" + + if mkdir -p "${MAVEN_CONFIG}/repository" && touch "${log}" > /dev/null 2>&1 ; then + cd "${ref}" + local reflink="" + if cp --help 2>&1 | grep -q reflink ; then + reflink="--reflink=auto" + fi + if [ -n "$(find "${MAVEN_CONFIG}/repository" -maxdepth 0 -type d -empty 2>/dev/null)" ] ; then + # destination is empty... + echo "--- Copying all files to ${MAVEN_CONFIG} at $(date)" >> "${log}" + cp -rv ${reflink} . "${MAVEN_CONFIG}" >> "${log}" + else + # destination is non-empty, copy file-by-file + echo "--- Copying individual files to ${MAVEN_CONFIG} at $(date)" >> "${log}" + find . -type f -exec sh -eu -c ' + log="${1}" + shift + reflink="${1}" + shift + for f in "$@" ; do + if [ ! -e "${MAVEN_CONFIG}/${f}" ] || [ -e "${f}.override" ] ; then + mkdir -p "${MAVEN_CONFIG}/$(dirname "${f}")" + cp -rv ${reflink} "${f}" "${MAVEN_CONFIG}/${f}" >> "${log}" + fi + done + ' _ "${log}" "${reflink}" {} + + fi + echo >> "${log}" + else + echo "Can not write to ${log}. Wrong volume permissions? Carrying on ..." + fi +} + +owd="$(pwd)" +copy_reference_files +unset MAVEN_CONFIG + +cd "${owd}" +unset owd + +exec "$@" diff --git a/eclipse-temurin-17-maven-4/settings-docker.xml b/eclipse-temurin-17-maven-4/settings-docker.xml new file mode 100644 index 00000000..586c587c --- /dev/null +++ b/eclipse-temurin-17-maven-4/settings-docker.xml @@ -0,0 +1,6 @@ + + /usr/share/maven/ref/repository + diff --git a/eclipse-temurin-21-alpine-maven-4/Dockerfile b/eclipse-temurin-21-alpine-maven-4/Dockerfile new file mode 100644 index 00000000..4f7bdb68 --- /dev/null +++ b/eclipse-temurin-21-alpine-maven-4/Dockerfile @@ -0,0 +1,24 @@ +FROM eclipse-temurin:21-jdk-alpine + +RUN apk add --no-cache bash procps curl tar openssh-client + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/eclipse-temurin-21-jammy-maven-4/Dockerfile b/eclipse-temurin-21-jammy-maven-4/Dockerfile new file mode 100644 index 00000000..77a62050 --- /dev/null +++ b/eclipse-temurin-21-jammy-maven-4/Dockerfile @@ -0,0 +1,26 @@ +FROM eclipse-temurin:21-jdk-jammy + +RUN apt-get update \ + && apt-get install -y ca-certificates curl git openssh-client --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/eclipse-temurin-21-maven-4/Dockerfile b/eclipse-temurin-21-maven-4/Dockerfile new file mode 100644 index 00000000..055dbf73 --- /dev/null +++ b/eclipse-temurin-21-maven-4/Dockerfile @@ -0,0 +1,26 @@ +FROM eclipse-temurin:21-jdk + +RUN apt-get update \ + && apt-get install -y ca-certificates curl git openssh-client --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/eclipse-temurin-22-alpine-maven-4/Dockerfile b/eclipse-temurin-22-alpine-maven-4/Dockerfile new file mode 100644 index 00000000..91ac56f8 --- /dev/null +++ b/eclipse-temurin-22-alpine-maven-4/Dockerfile @@ -0,0 +1,24 @@ +FROM eclipse-temurin:22-jdk-alpine + +RUN apk add --no-cache bash procps curl tar openssh-client + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/eclipse-temurin-22-jammy-maven-4/Dockerfile b/eclipse-temurin-22-jammy-maven-4/Dockerfile new file mode 100644 index 00000000..90224495 --- /dev/null +++ b/eclipse-temurin-22-jammy-maven-4/Dockerfile @@ -0,0 +1,26 @@ +FROM eclipse-temurin:22-jdk-jammy + +RUN apt-get update \ + && apt-get install -y ca-certificates curl git openssh-client --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/eclipse-temurin-22-maven-4/Dockerfile b/eclipse-temurin-22-maven-4/Dockerfile new file mode 100644 index 00000000..1db9f017 --- /dev/null +++ b/eclipse-temurin-22-maven-4/Dockerfile @@ -0,0 +1,26 @@ +FROM eclipse-temurin:22-jdk + +RUN apt-get update \ + && apt-get install -y ca-certificates curl git openssh-client --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/generate-stackbrew-library.sh b/generate-stackbrew-library.sh index 02c2382e..6b4ef6c6 100755 --- a/generate-stackbrew-library.sh +++ b/generate-stackbrew-library.sh @@ -88,6 +88,11 @@ for version in "${all_dirs[@]}"; do fi done + # ignore maven-4 beta images + if [[ "$version" == *-maven-4 ]]; then + continue + fi + branch=main mapfile -t versionAliases < <(version-aliases "$version" "$branch") generate-version "$version" "$branch" "${versionAliases[@]}" diff --git a/graalvm-community-17-maven-4/Dockerfile b/graalvm-community-17-maven-4/Dockerfile new file mode 100644 index 00000000..9630fdbe --- /dev/null +++ b/graalvm-community-17-maven-4/Dockerfile @@ -0,0 +1,23 @@ +FROM ghcr.io/graalvm/graalvm-community:17 + +RUN microdnf --refresh -y install findutils openssh-clients +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/graalvm-community-21-maven-4/Dockerfile b/graalvm-community-21-maven-4/Dockerfile new file mode 100644 index 00000000..a587b21f --- /dev/null +++ b/graalvm-community-21-maven-4/Dockerfile @@ -0,0 +1,24 @@ +FROM ghcr.io/graalvm/graalvm-community:21 + +RUN microdnf --refresh -y install findutils openssh-clients + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/ibm-semeru-17-focal-maven-4/Dockerfile b/ibm-semeru-17-focal-maven-4/Dockerfile new file mode 100644 index 00000000..0aa9e91d --- /dev/null +++ b/ibm-semeru-17-focal-maven-4/Dockerfile @@ -0,0 +1,26 @@ +FROM ibm-semeru-runtimes:open-17-jdk-focal + +RUN apt-get update \ + && apt-get install -y git openssh-client --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/ibm-semeru-21-jammy-maven-4/Dockerfile b/ibm-semeru-21-jammy-maven-4/Dockerfile new file mode 100644 index 00000000..f0553bde --- /dev/null +++ b/ibm-semeru-21-jammy-maven-4/Dockerfile @@ -0,0 +1,26 @@ +FROM ibm-semeru-runtimes:open-21-jdk-jammy + +RUN apt-get update \ + && apt-get install -y git openssh-client --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/libericaopenjdk-17-alpine-maven-4/Dockerfile b/libericaopenjdk-17-alpine-maven-4/Dockerfile new file mode 100644 index 00000000..4a57bcd7 --- /dev/null +++ b/libericaopenjdk-17-alpine-maven-4/Dockerfile @@ -0,0 +1,24 @@ +FROM bellsoft/liberica-openjdk-alpine:17 + +RUN apk add --no-cache bash procps curl tar openssh-client + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/libericaopenjdk-17-debian-maven-4/Dockerfile b/libericaopenjdk-17-debian-maven-4/Dockerfile new file mode 100644 index 00000000..7bd21276 --- /dev/null +++ b/libericaopenjdk-17-debian-maven-4/Dockerfile @@ -0,0 +1,26 @@ +FROM bellsoft/liberica-openjdk-debian:17 + +RUN apt-get update \ + && apt-get install -y openssh-client --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/microsoft-openjdk-17-ubuntu-maven-4/Dockerfile b/microsoft-openjdk-17-ubuntu-maven-4/Dockerfile new file mode 100644 index 00000000..5a6dc82b --- /dev/null +++ b/microsoft-openjdk-17-ubuntu-maven-4/Dockerfile @@ -0,0 +1,26 @@ +FROM mcr.microsoft.com/openjdk/jdk:17-ubuntu + +RUN apt-get update \ + && apt-get install -y ca-certificates curl git openssh-client --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/microsoft-openjdk-21-ubuntu-maven-4/Dockerfile b/microsoft-openjdk-21-ubuntu-maven-4/Dockerfile new file mode 100644 index 00000000..e9025e91 --- /dev/null +++ b/microsoft-openjdk-21-ubuntu-maven-4/Dockerfile @@ -0,0 +1,26 @@ +FROM mcr.microsoft.com/openjdk/jdk:21-ubuntu + +RUN apt-get update \ + && apt-get install -y ca-certificates curl git openssh-client --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/oracle-graalvm-17-maven-4/Dockerfile b/oracle-graalvm-17-maven-4/Dockerfile new file mode 100644 index 00000000..4e746d99 --- /dev/null +++ b/oracle-graalvm-17-maven-4/Dockerfile @@ -0,0 +1,24 @@ +FROM container-registry.oracle.com/graalvm/native-image:17 + +RUN microdnf --refresh -y install findutils openssh-clients + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/oracle-graalvm-21-maven-4/Dockerfile b/oracle-graalvm-21-maven-4/Dockerfile new file mode 100644 index 00000000..3c0844d2 --- /dev/null +++ b/oracle-graalvm-21-maven-4/Dockerfile @@ -0,0 +1,24 @@ +FROM container-registry.oracle.com/graalvm/native-image:21 + +RUN microdnf --refresh -y install findutils openssh-clients + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/publish.sh b/publish.sh index e7d89920..8a7dffd9 100755 --- a/publish.sh +++ b/publish.sh @@ -25,11 +25,15 @@ for dir in "${all_dirs[@]}"; do fi else from=$from_linux - if [[ "$dir" != "$from" ]]; then + if [[ "$dir" != "$from"* ]]; then # remove everything after the 'common for all images' line sed "/^${pattern}$/q" "$dir/Dockerfile" | sponge "$dir/Dockerfile" # copy from the main Dockerfile template the common lines - tail +2 Dockerfile-template >>"$dir/Dockerfile" + if [[ "$dir" == *"maven-4"* ]]; then + tail +2 Dockerfile-template-maven-4 >>"$dir/Dockerfile" + else + tail +2 Dockerfile-template >>"$dir/Dockerfile" + fi fi fi done diff --git a/sapmachine-17-maven-4/Dockerfile b/sapmachine-17-maven-4/Dockerfile new file mode 100644 index 00000000..23769de4 --- /dev/null +++ b/sapmachine-17-maven-4/Dockerfile @@ -0,0 +1,26 @@ +FROM sapmachine:17 + +RUN apt-get update \ + && apt-get install -y ca-certificates curl git openssh-client --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/sapmachine-21-maven-4/Dockerfile b/sapmachine-21-maven-4/Dockerfile new file mode 100644 index 00000000..293ce7b7 --- /dev/null +++ b/sapmachine-21-maven-4/Dockerfile @@ -0,0 +1,26 @@ +FROM sapmachine:21 + +RUN apt-get update \ + && apt-get install -y ca-certificates curl git openssh-client --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/sapmachine-22-maven-4/Dockerfile b/sapmachine-22-maven-4/Dockerfile new file mode 100644 index 00000000..e464d00f --- /dev/null +++ b/sapmachine-22-maven-4/Dockerfile @@ -0,0 +1,26 @@ +FROM sapmachine:22 + +RUN apt-get update \ + && apt-get install -y ca-certificates curl git openssh-client --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* + +# common for all images +LABEL org.opencontainers.image.title="Apache Maven" +LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven +LABEL org.opencontainers.image.description="Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information." + +ENV MAVEN_HOME=/usr/share/maven + +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=ghcr.io/carlossg/maven:4.0.0-beta-3-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=4.0.0-beta-3 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"]