diff --git a/amazoncorretto-11-windowsservercore/Dockerfile b/amazoncorretto-11-windowsservercore/Dockerfile index 6f590998..a3c98253 100644 --- a/amazoncorretto-11-windowsservercore/Dockerfile +++ b/amazoncorretto-11-windowsservercore/Dockerfile @@ -10,14 +10,14 @@ SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPref ARG zip=amazon-corretto-11-x64-windows-jdk.zip ARG uri=https://corretto.aws/downloads/latest -ARG hash=98bef58c1d8579f0a0043cd7aeb1eb7bb0af43d71e76f977e35be1c59a6fa9c1 +ARG hash=df7caf9863ac38df32a4f6c35eec9a923a8043dfcc23f44b2a02945898d29ff1 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/jdk11.0.25_9 +ENV JAVA_HOME=C:/ProgramData/jdk11.0.26_4 ARG USER_HOME_DIR="C:/Users/ContainerUser" ARG MAVEN_VERSION=3.9.9 diff --git a/amazoncorretto-17-windowsservercore-maven-4/Dockerfile b/amazoncorretto-17-windowsservercore-maven-4/Dockerfile index f808a852..7d9d24c4 100644 --- a/amazoncorretto-17-windowsservercore-maven-4/Dockerfile +++ b/amazoncorretto-17-windowsservercore-maven-4/Dockerfile @@ -10,14 +10,16 @@ SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPref ARG zip=amazon-corretto-17-x64-windows-jdk.zip ARG uri=https://corretto.aws/downloads/latest -ARG hash=eaacdc37c6f23753ebfae341985f11baacfaf84ca972e600803cb409c94ee8ca +ARG hash=3f3cb5c5f75978dbc60f806b74331ba4bf5a5afe155b64a83844139684f50531 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} + if((Get-FileHash C:/$env:zip -Algorithm SHA256).Hash.ToLower() -ne $env:hash) { ` + Write-Error "Checksum for $($env:zip) does not match expected value. Expected: $($env:hash) Actual: $((Get-FileHash C:/$env:zip -Algorithm SHA256).Hash.ToLower())" ; ` + exit 1 } ; ` + Expand-Archive -Path C:/$env:zip -Destination C:/ProgramData ; ` + Remove-Item C:/${env:zip} -ENV JAVA_HOME=C:/ProgramData/jdk17.0.13_11 +ENV JAVA_HOME=C:/ProgramData/jdk17.0.14_7 ARG USER_HOME_DIR="C:/Users/ContainerUser" ARG MAVEN_VERSION=4.0.0-rc-1 diff --git a/amazoncorretto-17-windowsservercore/Dockerfile b/amazoncorretto-17-windowsservercore/Dockerfile index b908665c..4b4fc9fa 100644 --- a/amazoncorretto-17-windowsservercore/Dockerfile +++ b/amazoncorretto-17-windowsservercore/Dockerfile @@ -10,14 +10,14 @@ SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPref ARG zip=amazon-corretto-17-x64-windows-jdk.zip ARG uri=https://corretto.aws/downloads/latest -ARG hash=eaacdc37c6f23753ebfae341985f11baacfaf84ca972e600803cb409c94ee8ca +ARG hash=3f3cb5c5f75978dbc60f806b74331ba4bf5a5afe155b64a83844139684f50531 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.13_11 +ENV JAVA_HOME=C:/ProgramData/jdk17.0.14_7 ARG USER_HOME_DIR="C:/Users/ContainerUser" ARG MAVEN_VERSION=3.9.9 diff --git a/amazoncorretto-8-windowsservercore/Dockerfile b/amazoncorretto-8-windowsservercore/Dockerfile index 414facaa..74a95b01 100644 --- a/amazoncorretto-8-windowsservercore/Dockerfile +++ b/amazoncorretto-8-windowsservercore/Dockerfile @@ -10,14 +10,14 @@ SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPref ARG zip=amazon-corretto-8-x64-windows-jdk.zip ARG uri=https://corretto.aws/downloads/latest -ARG hash=f67fddbc7b0d2da6b9fb1a1b635bef4122c9030b11a1985745c279821486548b +ARG hash=63a9e2026978f1e3a1d4bb8175cab0ddfdd5b1030370c1a0d6bb5202924a1dd3 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/jdk1.8.0_432 +ENV JAVA_HOME=C:/ProgramData/jdk1.8.0_442 ARG USER_HOME_DIR="C:/Users/ContainerUser" ARG MAVEN_VERSION=3.9.9 diff --git a/publish.sh b/publish.sh index 11444a98..6b80227e 100755 --- a/publish.sh +++ b/publish.sh @@ -49,15 +49,25 @@ find . -iname Dockerfile -exec grep -Hl "ARG uri=" {} \; | while read -r file; d uri=$(grep "ARG uri=" "$file" | sed -e 's/ARG uri=//') zip=$(grep "ARG zip=" "$file" | sed -e 's/ARG zip=//') hash=$(grep "ARG hash=" "$file" | sed -e 's/ARG hash=//') - if ! [ -f "$tmpdir/$zip" ]; then - echo "Downloading: $uri/$zip" - curl -sSLf -o "$tmpdir/$zip" "$uri/$zip" + + remote_file_url="$uri/$zip" + local_file_path="$tmpdir/$zip" + + # Download the file if it doesn't exist or is newer + echo "Downloading $remote_file_url" + curl -sSLf -z "$local_file_path" -o "$local_file_path.tmp" "$remote_file_url" + if [ -f "$local_file_path.tmp" ]; then + echo "Downloaded $remote_file_url" + mv "$local_file_path.tmp" "$local_file_path" + else + echo "File $local_file_path already exists and is not older than the remote file" fi - IFS=" " read -r -a new_hash <<<"$(sha256sum "$tmpdir/$zip")" + + IFS=" " read -r -a new_hash <<<"$(sha256sum "$local_file_path")" echo "$file $uri/$zip $hash ${new_hash[0]}" sed -i -e "s/ARG hash=.*/ARG hash=${new_hash[0]}/" "$file" echo "Extracting JAVA_HOME from $zip" - if ! java_home="$( (unzip -t "$tmpdir/$zip" || true) | grep -m 1 "testing: " | sed -e 's#.*testing: \(.*\)/.*#\1#')"; then + if ! java_home="$( (unzip -t "$local_file_path" || true) | grep -m 1 "testing: " | sed -e 's#.*testing: \(.*\)/.*#\1#')"; then echo >&2 "Failed to extract JAVA_HOME" exit 1 fi