From 9ac9d1ca0ba486bbfdef3ab174c2cfa0e25e414b Mon Sep 17 00:00:00 2001 From: Keegan Witt Date: Wed, 11 Oct 2023 17:59:15 -0400 Subject: [PATCH 1/2] Remove Java 20 (end of life) --- .github/workflows/ci.yaml | 2 +- README.md | 3 -- graal-checksums.sh | 2 +- jdk20-alpine/Dockerfile | 56 -------------------- jdk20-graal/Dockerfile | 108 -------------------------------------- 5 files changed, 2 insertions(+), 169 deletions(-) delete mode 100644 jdk20-alpine/Dockerfile delete mode 100644 jdk20-graal/Dockerfile diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index d312e99..c2ff339 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -17,7 +17,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - version: [jdk11, jdk11-alpine, jdk11-focal, jdk17, jdk17-alpine, jdk17-focal, jdk20, jdk20-alpine, jdk17-graal, jdk17-focal-graal, jdk20-graal] + version: [jdk11, jdk11-alpine, jdk11-focal, jdk17, jdk17-alpine, jdk17-focal, jdk17-graal, jdk17-focal-graal] steps: - name: checkout uses: actions/checkout@v2 diff --git a/README.md b/README.md index fc1f0db..378ca39 100644 --- a/README.md +++ b/README.md @@ -10,9 +10,6 @@ * [jdk17, jdk17-jammy, latest](https://github.com/keeganwitt/docker-gradle/blob/master/jdk17/Dockerfile) * [jdk17-focal](https://github.com/keeganwitt/docker-gradle/blob/master/jdk17-focal/Dockerfile) * [jdk17-alpine, alpine](https://github.com/keeganwitt/docker-gradle/blob/master/jdk17-alpine/Dockerfile) -* [jdk19, jdk19-jammy](https://github.com/keeganwitt/docker-gradle/blob/master/jdk19/Dockerfile) -* [jdk19-focal](https://github.com/keeganwitt/docker-gradle/blob/master/jdk19-focal/Dockerfile) -* [jdk19-alpine](https://github.com/keeganwitt/docker-gradle/blob/master/jdk19-alpine/Dockerfile) ## What is Gradle? diff --git a/graal-checksums.sh b/graal-checksums.sh index 03a3c43..8728e53 100644 --- a/graal-checksums.sh +++ b/graal-checksums.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash set -o errexit -o nounset -o pipefail -for JDK_VERSION in '17.0.8' '20.0.2'; do +for JDK_VERSION in '17.0.8' '21.0.0'; do GRAALVM_PKG=https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-${JDK_VERSION}/graalvm-community-jdk-${JDK_VERSION}_linux-x64_bin.tar.gz echo "${JDK_VERSION}" curl --fail --location --silent "${GRAALVM_PKG}" | sha256sum | cut -d' ' -f1 diff --git a/jdk20-alpine/Dockerfile b/jdk20-alpine/Dockerfile deleted file mode 100644 index c794af8..0000000 --- a/jdk20-alpine/Dockerfile +++ /dev/null @@ -1,56 +0,0 @@ -FROM eclipse-temurin:20-jdk-alpine - -CMD ["gradle"] - -ENV GRADLE_HOME /opt/gradle - -RUN set -o errexit -o nounset \ - && echo "Adding gradle user and group" \ - && addgroup --system --gid 1000 gradle \ - && adduser --system --ingroup gradle --uid 1000 --shell /bin/ash gradle \ - && mkdir /home/gradle/.gradle \ - && chown -R gradle:gradle /home/gradle \ - \ - && echo "Symlinking root Gradle cache to gradle Gradle cache" \ - && ln -s /home/gradle/.gradle /root/.gradle - -VOLUME /home/gradle/.gradle - -WORKDIR /home/gradle - -RUN set -o errexit -o nounset \ - && echo "Installing VCSes" \ - && apk add --no-cache \ - git \ - git-lfs \ - mercurial \ - subversion \ - \ - && echo "Testing VCSes" \ - && which git \ - && which git-lfs \ - && which hg \ - && which svn - -ENV GRADLE_VERSION 8.4 -ARG GRADLE_DOWNLOAD_SHA256=3e1af3ae886920c3ac87f7a91f816c0c7c436f276a6eefdb3da152100fef72ae -RUN set -o errexit -o nounset \ - && echo "Downloading Gradle" \ - && wget --no-verbose --output-document=gradle.zip "https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-bin.zip" \ - \ - && echo "Checking Gradle download hash" \ - && echo "${GRADLE_DOWNLOAD_SHA256} *gradle.zip" | sha256sum -c - \ - \ - && echo "Installing Gradle" \ - && unzip gradle.zip \ - && rm gradle.zip \ - && mv "gradle-${GRADLE_VERSION}" "${GRADLE_HOME}/" \ - && ln -s "${GRADLE_HOME}/bin/gradle" /usr/bin/gradle - -USER gradle - -RUN set -o errexit -o nounset \ - && echo "Testing Gradle installation" \ - && gradle --version - -USER root diff --git a/jdk20-graal/Dockerfile b/jdk20-graal/Dockerfile deleted file mode 100644 index 9a7840d..0000000 --- a/jdk20-graal/Dockerfile +++ /dev/null @@ -1,108 +0,0 @@ -FROM ubuntu:jammy - -CMD ["gradle"] - -ENV GRADLE_HOME /opt/gradle - -RUN set -o errexit -o nounset \ - && echo "Adding gradle user and group" \ - && groupadd --system --gid 1000 gradle \ - && useradd --system --gid gradle --uid 1000 --shell /bin/bash --create-home gradle \ - && mkdir /home/gradle/.gradle \ - && chown --recursive gradle:gradle /home/gradle \ - \ - && echo "Symlinking root Gradle cache to gradle Gradle cache" \ - && ln --symbolic /home/gradle/.gradle /root/.gradle - -VOLUME /home/gradle/.gradle - -WORKDIR /home/gradle - -RUN set -o errexit -o nounset \ - && export DEBIAN_FRONTEND=noninteractive \ - && apt-get update \ - && apt-get install --yes --no-install-recommends \ - binutils \ - ca-certificates \ - curl \ - fontconfig \ - locales \ - p11-kit \ - tzdata \ - unzip \ - wget \ - \ - gcc \ - libc-dev \ - libz-dev \ - zlib1g-dev \ - \ - bzr \ - git \ - git-lfs \ - mercurial \ - openssh-client \ - subversion \ - && rm --recursive --force /var/lib/apt/lists/* \ - \ - && echo "Testing VCSes" \ - && which bzr \ - && which git \ - && which git-lfs \ - && which hg \ - && which svn - -ENV JAVA_HOME=/opt/java/graalvm -ENV JAVA_VERSION=20.0.2 -RUN set -o errexit -o nounset \ - && mkdir /opt/java \ - \ - && echo "Downloading GraalVM" \ - && GRAALVM_DOWNLOAD_SHA256=941a85a690e7b1c4e1fcfac321561ca46033bba3ac4882dd15d4f45edd06726c \ - && ARCHITECTURE=$(dpkg --print-architecture) \ - && if [ "${ARCHITECTURE}" = "amd64" ]; then GRAALVM_ARCHITECTURE=linux-x64; fi \ - && if [ "${ARCHITECTURE}" = "arm64" ]; then GRAALVM_ARCHITECTURE=linux-aarch64; fi \ - && GRAALVM_PKG=https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-${JAVA_VERSION}/graalvm-community-jdk-${JAVA_VERSION}_${GRAALVM_ARCHITECTURE}_bin.tar.gz \ - && wget --no-verbose --output-document=graalvm.tar.gz "${GRAALVM_PKG}" \ - \ - && echo "Checking GraalVM download hash" \ - && echo "${GRAALVM_DOWNLOAD_SHA256} *graalvm.tar.gz" | sha256sum --check - \ - \ - && echo "Installing GraalVM" \ - && tar --extract --gunzip --file graalvm.tar.gz \ - && rm graalvm.tar.gz \ - && mv graalvm-* "${JAVA_HOME}" \ - && for bin in "$JAVA_HOME/bin/"*; do \ - base="$(basename "$bin")"; \ - [ ! -e "/usr/bin/$base" ]; \ - update-alternatives --install "/usr/bin/${base}" "${base}" "${bin}" 1; \ - done \ - \ - && echo "Testing GraalVM installation" \ - && java --version \ - && javac --version \ - && gu --version \ - && native-image --version - -ENV GRADLE_VERSION 8.4 -ARG GRADLE_DOWNLOAD_SHA256=3e1af3ae886920c3ac87f7a91f816c0c7c436f276a6eefdb3da152100fef72ae -RUN set -o errexit -o nounset \ - && echo "Downloading Gradle" \ - && wget --no-verbose --output-document=gradle.zip "https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-bin.zip" \ - \ - && echo "Checking Gradle download hash" \ - && echo "${GRADLE_DOWNLOAD_SHA256} *gradle.zip" | sha256sum --check - \ - \ - && echo "Installing Gradle" \ - && unzip gradle.zip \ - && rm gradle.zip \ - && mv "gradle-${GRADLE_VERSION}" "${GRADLE_HOME}/" \ - && ln --symbolic "${GRADLE_HOME}/bin/gradle" /usr/bin/gradle - -USER gradle - -RUN set -o errexit -o nounset \ - && echo "Testing Gradle installation" \ - && gradle --version - -USER root From 60468019d26d53103856946d2399166ebd182be3 Mon Sep 17 00:00:00 2001 From: Keegan Witt Date: Wed, 11 Oct 2023 17:59:45 -0400 Subject: [PATCH 2/2] Grammar fix --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 378ca39..f287cf5 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ ## What is Gradle? -[Gradle](https://gradle.org/) is a build tool with a focus on build automation and support for multi-language development. If you are building, testing, publishing, and deploying software on any platform, Gradle offers a flexible model that can support the entire development lifecycle from compiling and packaging code to publishing web sites. Gradle has been designed to support build automation across multiple languages and platforms including Java, Scala, Android, C/C++, and Groovy, and is closely integrated with development tools and continuous integration servers including Eclipse, IntelliJ, and Jenkins. +[Gradle](https://gradle.org/) is a build tool with a focus on build automation and support for multi-language development. If you are building, testing, publishing, and deploying software on any platform, Gradle offers a flexible model that can support the entire development lifecycle from compiling and packaging code to publishing websites. Gradle has been designed to support build automation across multiple languages and platforms including Java, Scala, Android, C/C++, and Groovy, and is closely integrated with development tools and continuous integration servers including Eclipse, IntelliJ, and Jenkins. ## How to use this image