From 5b9f74ed00b8944f1abd8a359dfe5fae10de78eb Mon Sep 17 00:00:00 2001 From: "F.D.Castel" Date: Sun, 16 Jun 2024 00:46:32 -0300 Subject: [PATCH 1/2] Adds arm64 images. --- README.md | 12 +-- assets.json | 41 ++++++---- firebird-docker.build.ps1 | 54 ++++++------ .../3/{ => linux/amd64}/bookworm/Dockerfile | 2 +- .../3/{ => linux/amd64}/jammy/Dockerfile | 5 +- .../4/{ => linux/amd64}/bookworm/Dockerfile | 2 +- .../4/{ => linux/amd64}/jammy/Dockerfile | 5 +- .../5/{ => linux/amd64}/bookworm/Dockerfile | 2 +- .../5/{ => linux/amd64}/jammy/Dockerfile | 5 +- generated/5/linux/arm64/bookworm/Dockerfile | 81 ++++++++++++++++++ generated/5/linux/arm64/jammy/Dockerfile | 82 +++++++++++++++++++ src/Dockerfile.bookworm.template | 2 +- src/Dockerfile.jammy.template | 2 +- src/image.build.ps1.template | 9 +- 14 files changed, 246 insertions(+), 58 deletions(-) rename generated/3/{ => linux/amd64}/bookworm/Dockerfile (97%) rename generated/3/{ => linux/amd64}/jammy/Dockerfile (96%) rename generated/4/{ => linux/amd64}/bookworm/Dockerfile (97%) rename generated/4/{ => linux/amd64}/jammy/Dockerfile (96%) rename generated/5/{ => linux/amd64}/bookworm/Dockerfile (97%) rename generated/5/{ => linux/amd64}/jammy/Dockerfile (96%) create mode 100644 generated/5/linux/arm64/bookworm/Dockerfile create mode 100644 generated/5/linux/arm64/jammy/Dockerfile diff --git a/README.md b/README.md index 260dab2..164df3d 100644 --- a/README.md +++ b/README.md @@ -16,12 +16,12 @@ Docker images for Firebird Database. |`ghcr.io/fdcastel/firebird`|Dockerfile|OS|Last modified| |:-|:-:|:-:|:-:| -|`5`, `5-bookworm`, `bookworm`, `latest`|[Dockerfile](./generated/5/bookworm/Dockerfile)|Debian 12.5|2024-06-15| -|`5-jammy`, `jammy`|[Dockerfile](./generated/5/jammy/Dockerfile)|Ubuntu 22.04|2024-06-15| -|`4`, `4-bookworm`|[Dockerfile](./generated/4/bookworm/Dockerfile)|Debian 12.5|2024-06-15| -|`4-jammy`|[Dockerfile](./generated/4/jammy/Dockerfile)|Ubuntu 22.04|2024-06-15| -|`3`, `3-bookworm`|[Dockerfile](./generated/3/bookworm/Dockerfile)|Debian 12.5|2024-06-15| -|`3-jammy`|[Dockerfile](./generated/3/jammy/Dockerfile)|Ubuntu 22.04|2024-06-15| +|`5`, `5-bookworm`, `bookworm`, `latest`|[amd64](./generated/5/linux/amd64/bookworm/Dockerfile), [arm64](./generated/5/linux/arm64/bookworm/Dockerfile)|Debian 12.5|2024-06-16| +|`5-jammy`, `jammy`|[amd64](./generated/5/linux/amd64/jammy/Dockerfile), [arm64](./generated/5/linux/arm64/jammy/Dockerfile)|Ubuntu 22.04|2024-06-16| +|`4`, `4-bookworm`|[amd64](./generated/4/linux/amd64/bookworm/Dockerfile)|Debian 12.5|2024-06-16| +|`4-jammy`|[amd64](./generated/4/linux/amd64/jammy/Dockerfile)|Ubuntu 22.04|2024-06-16| +|`3`, `3-bookworm`|[amd64](./generated/3/linux/amd64/bookworm/Dockerfile)|Debian 12.5|2024-06-16| +|`3-jammy`|[amd64](./generated/3/linux/amd64/jammy/Dockerfile)|Ubuntu 22.04|2024-06-16| diff --git a/assets.json b/assets.json index 5f035f6..cc8861c 100644 --- a/assets.json +++ b/assets.json @@ -1,11 +1,18 @@ [ { "tag": "v5.0.0", - "name": "Firebird-5.0.0.1306-0-linux-x64.tar.gz", - "url": "https://github.com/FirebirdSQL/firebird/releases/download/v5.0.0/Firebird-5.0.0.1306-0-linux-x64.tar.gz", - "os": "linux", - "arch": "amd64", - "sha256": "137b356ea464e224b6ed1241e6dba95b6b950ff1feef91696d4071d4da880768", + "platforms": { + "linux/amd64": { + "name": "Firebird-5.0.0.1306-0-linux-x64.tar.gz", + "url": "https://github.com/FirebirdSQL/firebird/releases/download/v5.0.0/Firebird-5.0.0.1306-0-linux-x64.tar.gz", + "sha256": "137b356ea464e224b6ed1241e6dba95b6b950ff1feef91696d4071d4da880768" + }, + "linux/arm64": { + "name": "Firebird-5.0.0.1306-0-linux-x64.tar.gz", + "url": "https://github.com/FirebirdSQL/firebird/releases/download/v5.0.0/Firebird-5.0.0.1306-0-linux-arm64.tar.gz", + "sha256": "bdb62abc91a4c26a86b9377256529622e3046f4ec4f66fbdcf46747688d45033" + } + }, "images": ["bookworm", "jammy"], "imageTags": { "bookworm": ["latest", "bookworm", "5"], @@ -14,11 +21,13 @@ }, { "tag": "v4.0.4", - "name": "Firebird-4.0.4.3010-0.amd64.tar.gz", - "url": "https://github.com/FirebirdSQL/firebird/releases/download/v4.0.4/Firebird-4.0.4.3010-0.amd64.tar.gz", - "os": "linux", - "arch": "amd64", - "sha256": "ef589301c5e13a1f8481e1e38c453641ef5082344bf69edb51f8aa9f036bcaca", + "platforms": { + "linux/amd64": { + "name": "Firebird-4.0.4.3010-0.amd64.tar.gz", + "url": "https://github.com/FirebirdSQL/firebird/releases/download/v4.0.4/Firebird-4.0.4.3010-0.amd64.tar.gz", + "sha256": "ef589301c5e13a1f8481e1e38c453641ef5082344bf69edb51f8aa9f036bcaca" + } + }, "images": ["bookworm", "jammy"], "imageTags": { "bookworm": ["4"] @@ -26,11 +35,13 @@ }, { "tag": "v3.0.11", - "name": "Firebird-3.0.11.33703-0.amd64.tar.gz", - "url": "https://github.com/FirebirdSQL/firebird/releases/download/v3.0.11/Firebird-3.0.11.33703-0.amd64.tar.gz", - "os": "linux", - "arch": "amd64", - "sha256": "713757e09b40b2631d800dacd9b80179b7eb75693a72089136055a7154413a3e", + "platforms": { + "linux/amd64": { + "name": "Firebird-3.0.11.33703-0.amd64.tar.gz", + "url": "https://github.com/FirebirdSQL/firebird/releases/download/v3.0.11/Firebird-3.0.11.33703-0.amd64.tar.gz", + "sha256": "713757e09b40b2631d800dacd9b80179b7eb75693a72089136055a7154413a3e" + } + }, "images": ["bookworm", "jammy"], "imageTags": { "bookworm": ["3"] diff --git a/firebird-docker.build.ps1 b/firebird-docker.build.ps1 index f04e828..9473dd6 100644 --- a/firebird-docker.build.ps1 +++ b/firebird-docker.build.ps1 @@ -64,29 +64,37 @@ task Prepare { $majorFolder = Join-Path $outputFolder $major New-Item -ItemType Directory $majorFolder -Force > $null - # For each image - $asset.images | ForEach-Object { - $image = $_ - - $TUrl = $asset.url - $TSha256 = $asset.sha256 - $TVersion = $asset.tag.TrimStart('v') - $TMajor = $major - $TImageVersion = "$major-$image" - - $TImageTags = $asset.imageTags.$image - if ($TImageTags) { - # https://stackoverflow.com/a/73073678 - $TImageTags = "'{0}'" -f ($TImageTags -join "', '") - } - - $versionFolder = Join-Path $majorFolder $image - New-Item -ItemType Directory $versionFolder -Force > $null - - Copy-TemplateItem "./src/Dockerfile.$image.template" "$versionFolder/Dockerfile" - Copy-Item './src/entrypoint.sh' $versionFolder - Copy-TemplateItem "./src/image.build.ps1.template" "$versionFolder/image.build.ps1" - Copy-Item './src/image.tests.ps1' $versionFolder + # For each platform + $asset.platforms | Get-Member -MemberType NoteProperty | ForEach-Object { + $platform = $_.Name + $platformData = $asset.platforms.$platform + + # For each image + $asset.images | ForEach-Object { + $image = $_ + + $TUrl = $platformData.url + $TSha256 = $platformData.sha256 + $TVersion = $asset.tag.TrimStart('v') + $TMajor = $major + $TImagePlatform = $platform + $TImageVersion = "$major-$image" + + $TImageTags = $asset.imageTags.$image + if ($TImageTags) { + # https://stackoverflow.com/a/73073678 + $TImageTags = "'{0}'" -f ($TImageTags -join "', '") + } + + $platformFolder = Join-Path $majorFolder $platform + $imageFolder = Join-Path $platformFolder $image + New-Item -ItemType Directory $imageFolder -Force > $null + + Copy-TemplateItem "./src/Dockerfile.$image.template" "$imageFolder/Dockerfile" + Copy-Item './src/entrypoint.sh' $imageFolder + Copy-TemplateItem "./src/image.build.ps1.template" "$imageFolder/image.build.ps1" + Copy-Item './src/image.tests.ps1' $imageFolder + } } } } diff --git a/generated/3/bookworm/Dockerfile b/generated/3/linux/amd64/bookworm/Dockerfile similarity index 97% rename from generated/3/bookworm/Dockerfile rename to generated/3/linux/amd64/bookworm/Dockerfile index 99d7902..49a7174 100644 --- a/generated/3/bookworm/Dockerfile +++ b/generated/3/linux/amd64/bookworm/Dockerfile @@ -5,7 +5,7 @@ # Best practices for Dockerfile instructions # https://docs.docker.com/develop/develop-images/instructions/ -FROM debian:bookworm-slim +FROM --platform=$BUILDPLATFORM debian:bookworm-slim ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v3.0.11/Firebird-3.0.11.33703-0.amd64.tar.gz ENV FIREBIRD_RELEASE_SHA256=713757e09b40b2631d800dacd9b80179b7eb75693a72089136055a7154413a3e diff --git a/generated/3/jammy/Dockerfile b/generated/3/linux/amd64/jammy/Dockerfile similarity index 96% rename from generated/3/jammy/Dockerfile rename to generated/3/linux/amd64/jammy/Dockerfile index 3b38f87..08a1b61 100644 --- a/generated/3/jammy/Dockerfile +++ b/generated/3/linux/amd64/jammy/Dockerfile @@ -5,7 +5,7 @@ # Best practices for Dockerfile instructions # https://docs.docker.com/develop/develop-images/instructions/ -FROM ubuntu:jammy +FROM --platform=$BUILDPLATFORM ubuntu:jammy ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v3.0.11/Firebird-3.0.11.33703-0.amd64.tar.gz ENV FIREBIRD_RELEASE_SHA256=713757e09b40b2631d800dacd9b80179b7eb75693a72089136055a7154413a3e @@ -28,7 +28,8 @@ RUN set -eux; \ libtomcrypt1 \ libtommath1 \ netbase \ - procps; \ + procps \ + tzdata; \ rm -rf /var/lib/apt/lists/* # Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 diff --git a/generated/4/bookworm/Dockerfile b/generated/4/linux/amd64/bookworm/Dockerfile similarity index 97% rename from generated/4/bookworm/Dockerfile rename to generated/4/linux/amd64/bookworm/Dockerfile index 0317f22..43bff6f 100644 --- a/generated/4/bookworm/Dockerfile +++ b/generated/4/linux/amd64/bookworm/Dockerfile @@ -5,7 +5,7 @@ # Best practices for Dockerfile instructions # https://docs.docker.com/develop/develop-images/instructions/ -FROM debian:bookworm-slim +FROM --platform=$BUILDPLATFORM debian:bookworm-slim ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v4.0.4/Firebird-4.0.4.3010-0.amd64.tar.gz ENV FIREBIRD_RELEASE_SHA256=ef589301c5e13a1f8481e1e38c453641ef5082344bf69edb51f8aa9f036bcaca diff --git a/generated/4/jammy/Dockerfile b/generated/4/linux/amd64/jammy/Dockerfile similarity index 96% rename from generated/4/jammy/Dockerfile rename to generated/4/linux/amd64/jammy/Dockerfile index 55f519b..d27352f 100644 --- a/generated/4/jammy/Dockerfile +++ b/generated/4/linux/amd64/jammy/Dockerfile @@ -5,7 +5,7 @@ # Best practices for Dockerfile instructions # https://docs.docker.com/develop/develop-images/instructions/ -FROM ubuntu:jammy +FROM --platform=$BUILDPLATFORM ubuntu:jammy ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v4.0.4/Firebird-4.0.4.3010-0.amd64.tar.gz ENV FIREBIRD_RELEASE_SHA256=ef589301c5e13a1f8481e1e38c453641ef5082344bf69edb51f8aa9f036bcaca @@ -28,7 +28,8 @@ RUN set -eux; \ libtomcrypt1 \ libtommath1 \ netbase \ - procps; \ + procps \ + tzdata; \ rm -rf /var/lib/apt/lists/* # Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 diff --git a/generated/5/bookworm/Dockerfile b/generated/5/linux/amd64/bookworm/Dockerfile similarity index 97% rename from generated/5/bookworm/Dockerfile rename to generated/5/linux/amd64/bookworm/Dockerfile index 9439d00..0eb54ed 100644 --- a/generated/5/bookworm/Dockerfile +++ b/generated/5/linux/amd64/bookworm/Dockerfile @@ -5,7 +5,7 @@ # Best practices for Dockerfile instructions # https://docs.docker.com/develop/develop-images/instructions/ -FROM debian:bookworm-slim +FROM --platform=$BUILDPLATFORM debian:bookworm-slim ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v5.0.0/Firebird-5.0.0.1306-0-linux-x64.tar.gz ENV FIREBIRD_RELEASE_SHA256=137b356ea464e224b6ed1241e6dba95b6b950ff1feef91696d4071d4da880768 diff --git a/generated/5/jammy/Dockerfile b/generated/5/linux/amd64/jammy/Dockerfile similarity index 96% rename from generated/5/jammy/Dockerfile rename to generated/5/linux/amd64/jammy/Dockerfile index 28bc152..8488936 100644 --- a/generated/5/jammy/Dockerfile +++ b/generated/5/linux/amd64/jammy/Dockerfile @@ -5,7 +5,7 @@ # Best practices for Dockerfile instructions # https://docs.docker.com/develop/develop-images/instructions/ -FROM ubuntu:jammy +FROM --platform=$BUILDPLATFORM ubuntu:jammy ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v5.0.0/Firebird-5.0.0.1306-0-linux-x64.tar.gz ENV FIREBIRD_RELEASE_SHA256=137b356ea464e224b6ed1241e6dba95b6b950ff1feef91696d4071d4da880768 @@ -28,7 +28,8 @@ RUN set -eux; \ libtomcrypt1 \ libtommath1 \ netbase \ - procps; \ + procps \ + tzdata; \ rm -rf /var/lib/apt/lists/* # Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 diff --git a/generated/5/linux/arm64/bookworm/Dockerfile b/generated/5/linux/arm64/bookworm/Dockerfile new file mode 100644 index 0000000..eb5caeb --- /dev/null +++ b/generated/5/linux/arm64/bookworm/Dockerfile @@ -0,0 +1,81 @@ +# +# This file was generated. Do not edit. See /src. +# + +# Best practices for Dockerfile instructions +# https://docs.docker.com/develop/develop-images/instructions/ + +FROM --platform=$BUILDPLATFORM debian:bookworm-slim + +ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v5.0.0/Firebird-5.0.0.1306-0-linux-arm64.tar.gz +ENV FIREBIRD_RELEASE_SHA256=bdb62abc91a4c26a86b9377256529622e3046f4ec4f66fbdcf46747688d45033 +ENV FIREBIRD_VERSION=5.0.0 +ENV FIREBIRD_MAJOR=5 + +# https://linuxcommand.org/lc3_man_pages/seth.html +# -e Exit immediately if a command exits with a non-zero status. +# -u Treat unset variables as an error when substituting +# -x Print commands and their arguments as they are executed. + +# Prerequisites +# FB 3.0 uses libncurses5: https://github.com/FirebirdSQL/firebird/issues/6418#issuecomment-826245785 +RUN set -eux; \ + apt-get update; \ + apt-get install -y --no-install-recommends \ + libatomic1 \ + libicu72 \ + $([ $FIREBIRD_MAJOR -eq 3 ] && echo 'libncurses5' || echo 'libncurses6') \ + libtomcrypt1 \ + libtommath1 \ + netbase \ + procps; \ + rm -rf /var/lib/apt/lists/* + +# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 +RUN [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/x86_64-linux-gnu/libtommath.so.1 /usr/lib/x86_64-linux-gnu/libtommath.so.0 || true + +# Download +ADD --checksum="sha256:$FIREBIRD_RELEASE_SHA256" \ + --chown=root:root \ + --chmod=777 \ + $FIREBIRD_RELEASE_URL \ + /tmp/firebird-bundle.tar.gz + +# Extract, install, clean +RUN set -eux; \ + cd /tmp; \ + tar --extract --file=firebird-bundle.tar.gz --gunzip --verbose --strip-components=1; \ + ./install.sh -silent; \ + rm *.tar.gz *.sh *.txt \ + # Remove unnecessary files + rm -rf /opt/firebird/doc \ + /opt/firebird/examples \ + /opt/firebird/help \ + /opt/firebird/include; \ + # Remove 'employee' sample database from 'databases.conf' + sed -i '/^employee/d' /opt/firebird/databases.conf + +# System path +ENV PATH=/opt/firebird/bin:$PATH + +# Data directory +ENV FIREBIRD_DATA /run/firebird/data +RUN set -eux; \ + mkdir -p "$FIREBIRD_DATA"; \ + chown -R firebird:firebird "$FIREBIRD_DATA"; \ + chmod 644 "$FIREBIRD_DATA" +VOLUME $FIREBIRD_DATA + +# Entrypoint +COPY entrypoint.sh /usr/local/bin/ +RUN set -eux; \ + chmod +x /usr/local/bin/entrypoint.sh +ENTRYPOINT ["entrypoint.sh"] + +EXPOSE 3050/tcp + +# Fix terminfo location +ENV TERMINFO=/lib/terminfo/ + +CMD ["firebird"] + diff --git a/generated/5/linux/arm64/jammy/Dockerfile b/generated/5/linux/arm64/jammy/Dockerfile new file mode 100644 index 0000000..0f76d10 --- /dev/null +++ b/generated/5/linux/arm64/jammy/Dockerfile @@ -0,0 +1,82 @@ +# +# This file was generated. Do not edit. See /src. +# + +# Best practices for Dockerfile instructions +# https://docs.docker.com/develop/develop-images/instructions/ + +FROM --platform=$BUILDPLATFORM ubuntu:jammy + +ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v5.0.0/Firebird-5.0.0.1306-0-linux-arm64.tar.gz +ENV FIREBIRD_RELEASE_SHA256=bdb62abc91a4c26a86b9377256529622e3046f4ec4f66fbdcf46747688d45033 +ENV FIREBIRD_VERSION=5.0.0 +ENV FIREBIRD_MAJOR=5 + +# https://linuxcommand.org/lc3_man_pages/seth.html +# -e Exit immediately if a command exits with a non-zero status. +# -u Treat unset variables as an error when substituting +# -x Print commands and their arguments as they are executed. + +# Prerequisites +# FB 3.0 uses libncurses5: https://github.com/FirebirdSQL/firebird/issues/6418#issuecomment-826245785 +RUN set -eux; \ + apt-get update; \ + apt-get install -y --no-install-recommends \ + libatomic1 \ + libicu70 \ + $([ $FIREBIRD_MAJOR -eq 3 ] && echo 'libncurses5' || echo 'libncurses6') \ + libtomcrypt1 \ + libtommath1 \ + netbase \ + procps \ + tzdata; \ + rm -rf /var/lib/apt/lists/* + +# Fix libtommath for FB 3.0 -- https://github.com/FirebirdSQL/firebird/issues/5716#issuecomment-826239174 +RUN [ $FIREBIRD_MAJOR -eq 3 ] && ln -sf /usr/lib/x86_64-linux-gnu/libtommath.so.1 /usr/lib/x86_64-linux-gnu/libtommath.so.0 || true + +# Download +ADD --checksum="sha256:$FIREBIRD_RELEASE_SHA256" \ + --chown=root:root \ + --chmod=777 \ + $FIREBIRD_RELEASE_URL \ + /tmp/firebird-bundle.tar.gz + +# Extract, install, clean +RUN set -eux; \ + cd /tmp; \ + tar --extract --file=firebird-bundle.tar.gz --gunzip --verbose --strip-components=1; \ + ./install.sh -silent; \ + rm *.tar.gz *.sh *.txt \ + # Remove unnecessary files + rm -rf /opt/firebird/doc \ + /opt/firebird/examples \ + /opt/firebird/help \ + /opt/firebird/include; \ + # Remove 'employee' sample database from 'databases.conf' + sed -i '/^employee/d' /opt/firebird/databases.conf + +# System path +ENV PATH=/opt/firebird/bin:$PATH + +# Data directory +ENV FIREBIRD_DATA /run/firebird/data +RUN set -eux; \ + mkdir -p "$FIREBIRD_DATA"; \ + chown -R firebird:firebird "$FIREBIRD_DATA"; \ + chmod 644 "$FIREBIRD_DATA" +VOLUME $FIREBIRD_DATA + +# Entrypoint +COPY entrypoint.sh /usr/local/bin/ +RUN set -eux; \ + chmod +x /usr/local/bin/entrypoint.sh +ENTRYPOINT ["entrypoint.sh"] + +EXPOSE 3050/tcp + +# Fix terminfo location +ENV TERMINFO=/lib/terminfo/ + +CMD ["firebird"] + diff --git a/src/Dockerfile.bookworm.template b/src/Dockerfile.bookworm.template index e1b86f3..f19b4fb 100644 --- a/src/Dockerfile.bookworm.template +++ b/src/Dockerfile.bookworm.template @@ -1,7 +1,7 @@ # Best practices for Dockerfile instructions # https://docs.docker.com/develop/develop-images/instructions/ -FROM debian:bookworm-slim +FROM --platform=$BUILDPLATFORM debian:bookworm-slim ENV FIREBIRD_RELEASE_URL=<%$TUrl%> ENV FIREBIRD_RELEASE_SHA256=<%$TSha256%> diff --git a/src/Dockerfile.jammy.template b/src/Dockerfile.jammy.template index 51e571e..f97dbbe 100644 --- a/src/Dockerfile.jammy.template +++ b/src/Dockerfile.jammy.template @@ -1,7 +1,7 @@ # Best practices for Dockerfile instructions # https://docs.docker.com/develop/develop-images/instructions/ -FROM ubuntu:jammy +FROM --platform=$BUILDPLATFORM ubuntu:jammy ENV FIREBIRD_RELEASE_URL=<%$TUrl%> ENV FIREBIRD_RELEASE_SHA256=<%$TSha256%> diff --git a/src/image.build.ps1.template b/src/image.build.ps1.template index 373af46..c47abcb 100644 --- a/src/image.build.ps1.template +++ b/src/image.build.ps1.template @@ -6,6 +6,7 @@ param( task Build { $script:BUILDER_IMAGE_PREFIX = 'ghcr.io/fdcastel' $script:BUILDER_IMAGE_NAME = 'firebird' + $script:BUILDER_IMAGE_PLATFORM = '<%$TImagePlatform%>' $script:BUILDER_IMAGE_VERSION = '<%$TImageVersion%>' $script:BUILDER_IMAGE_TAGS = @(<%$TImageTags%>) @@ -15,9 +16,11 @@ task Build { $tags = $BUILDER_IMAGE_TAGS + $BUILDER_IMAGE_VERSION | ForEach-Object { '--tag', "$BUILDER_IMAGE_PREFIX/${BUILDER_IMAGE_NAME}:$_" } $allParameters = @( - 'build'; - $tags; - $noCacheParameter, + 'build'; + '--platform'; + "$BUILDER_IMAGE_PLATFORM"; + $tags; + $noCacheParameter, '--label', 'org.opencontainers.image.description=Firebird Database', '--label', 'org.opencontainers.image.source=https://github.com/fdcastel/firebird-docker', '--label', 'org.opencontainers.image.version=<%$TImageVersion%>', From 6dbd8a172fee2f2e0f37cd2d514d776390956966 Mon Sep 17 00:00:00 2001 From: "F.D.Castel" Date: Wed, 28 Aug 2024 12:35:25 -0300 Subject: [PATCH 2/2] Updates Firebird packages. --- assets.json | 40 +++++++++++++-------- generated/3/linux/amd64/bookworm/Dockerfile | 6 ++-- generated/3/linux/amd64/jammy/Dockerfile | 6 ++-- generated/4/linux/amd64/bookworm/Dockerfile | 6 ++-- generated/4/linux/amd64/jammy/Dockerfile | 6 ++-- generated/5/linux/amd64/bookworm/Dockerfile | 6 ++-- generated/5/linux/amd64/jammy/Dockerfile | 6 ++-- generated/5/linux/arm64/bookworm/Dockerfile | 6 ++-- generated/5/linux/arm64/jammy/Dockerfile | 6 ++-- 9 files changed, 49 insertions(+), 39 deletions(-) diff --git a/assets.json b/assets.json index cc8861c..1d8312c 100644 --- a/assets.json +++ b/assets.json @@ -1,16 +1,16 @@ [ { - "tag": "v5.0.0", + "tag": "v5.0.1", "platforms": { "linux/amd64": { - "name": "Firebird-5.0.0.1306-0-linux-x64.tar.gz", - "url": "https://github.com/FirebirdSQL/firebird/releases/download/v5.0.0/Firebird-5.0.0.1306-0-linux-x64.tar.gz", - "sha256": "137b356ea464e224b6ed1241e6dba95b6b950ff1feef91696d4071d4da880768" + "name": "Firebird-5.0.1.1469-0-linux-x64.tar.gz", + "url": "https://github.com/FirebirdSQL/firebird/releases/download/v5.0.1/Firebird-5.0.1.1469-0-linux-x64.tar.gz", + "sha256": "e1023b005e5d6db8f717af032e91f0f94aa7a8dbe0e78f250931214ca0a21e57" }, "linux/arm64": { - "name": "Firebird-5.0.0.1306-0-linux-x64.tar.gz", - "url": "https://github.com/FirebirdSQL/firebird/releases/download/v5.0.0/Firebird-5.0.0.1306-0-linux-arm64.tar.gz", - "sha256": "bdb62abc91a4c26a86b9377256529622e3046f4ec4f66fbdcf46747688d45033" + "name": "Firebird-5.0.1.1469-0-linux-arm64.tar.gz", + "url": "https://github.com/FirebirdSQL/firebird/releases/download/v5.0.1/Firebird-5.0.1.1469-0-linux-arm64.tar.gz", + "sha256": "46b3f4f170458a93365c67118c062ba8509903fe8293bf8a62e7bd8a388e2d06" } }, "images": ["bookworm", "jammy"], @@ -20,12 +20,17 @@ } }, { - "tag": "v4.0.4", + "tag": "v4.0.5", "platforms": { "linux/amd64": { - "name": "Firebird-4.0.4.3010-0.amd64.tar.gz", - "url": "https://github.com/FirebirdSQL/firebird/releases/download/v4.0.4/Firebird-4.0.4.3010-0.amd64.tar.gz", - "sha256": "ef589301c5e13a1f8481e1e38c453641ef5082344bf69edb51f8aa9f036bcaca" + "name": "Firebird-4.0.5.3140-0.amd64.tar.gz", + "url": "https://github.com/FirebirdSQL/firebird/releases/download/v4.0.5/Firebird-4.0.5.3140-0.amd64.tar.gz", + "sha256": "6ae43e4fa31ddc99220575023b7d954fb218c063375bb589b16fbe9fcdfdcaa6" + }, + "linux/arm64": { + "name": "Firebird-4.0.5.3140-0.arm64.tar.gz", + "url": "https://github.com/FirebirdSQL/firebird/releases/download/v4.0.5/Firebird-4.0.5.3140-0.arm64.tar.gz", + "sha256": "83b1f51ee225ccd89990aa078c5a736f4887bfe92806e15f81cc63d1985cf8cc" } }, "images": ["bookworm", "jammy"], @@ -34,12 +39,17 @@ } }, { - "tag": "v3.0.11", + "tag": "v3.0.12", "platforms": { "linux/amd64": { - "name": "Firebird-3.0.11.33703-0.amd64.tar.gz", - "url": "https://github.com/FirebirdSQL/firebird/releases/download/v3.0.11/Firebird-3.0.11.33703-0.amd64.tar.gz", - "sha256": "713757e09b40b2631d800dacd9b80179b7eb75693a72089136055a7154413a3e" + "name": "Firebird-3.0.12.33787-0.amd64.tar.gz", + "url": "https://github.com/FirebirdSQL/firebird/releases/download/v3.0.12/Firebird-3.0.12.33787-0.amd64.tar.gz", + "sha256": "406a8887ab318a5d8a20781fc1d38a0ca30acdbddbc1558b077646bb2e2e283f" + }, + "linux/arm64": { + "name": "Firebird-3.0.12.33787-0.arm64.tar.gz", + "url": "https://github.com/FirebirdSQL/firebird/releases/download/v3.0.12/Firebird-3.0.12.33787-0.arm64.tar.gz", + "sha256": "e629d03f7e8684716ecb4fade563fa8eb4e4b7c96d48fd2b6dcf081a2d7557c9" } }, "images": ["bookworm", "jammy"], diff --git a/generated/3/linux/amd64/bookworm/Dockerfile b/generated/3/linux/amd64/bookworm/Dockerfile index 49a7174..a1d1bf2 100644 --- a/generated/3/linux/amd64/bookworm/Dockerfile +++ b/generated/3/linux/amd64/bookworm/Dockerfile @@ -7,9 +7,9 @@ FROM --platform=$BUILDPLATFORM debian:bookworm-slim -ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v3.0.11/Firebird-3.0.11.33703-0.amd64.tar.gz -ENV FIREBIRD_RELEASE_SHA256=713757e09b40b2631d800dacd9b80179b7eb75693a72089136055a7154413a3e -ENV FIREBIRD_VERSION=3.0.11 +ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v3.0.12/Firebird-3.0.12.33787-0.amd64.tar.gz +ENV FIREBIRD_RELEASE_SHA256=406a8887ab318a5d8a20781fc1d38a0ca30acdbddbc1558b077646bb2e2e283f +ENV FIREBIRD_VERSION=3.0.12 ENV FIREBIRD_MAJOR=3 # https://linuxcommand.org/lc3_man_pages/seth.html diff --git a/generated/3/linux/amd64/jammy/Dockerfile b/generated/3/linux/amd64/jammy/Dockerfile index 08a1b61..ccd51d1 100644 --- a/generated/3/linux/amd64/jammy/Dockerfile +++ b/generated/3/linux/amd64/jammy/Dockerfile @@ -7,9 +7,9 @@ FROM --platform=$BUILDPLATFORM ubuntu:jammy -ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v3.0.11/Firebird-3.0.11.33703-0.amd64.tar.gz -ENV FIREBIRD_RELEASE_SHA256=713757e09b40b2631d800dacd9b80179b7eb75693a72089136055a7154413a3e -ENV FIREBIRD_VERSION=3.0.11 +ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v3.0.12/Firebird-3.0.12.33787-0.amd64.tar.gz +ENV FIREBIRD_RELEASE_SHA256=406a8887ab318a5d8a20781fc1d38a0ca30acdbddbc1558b077646bb2e2e283f +ENV FIREBIRD_VERSION=3.0.12 ENV FIREBIRD_MAJOR=3 # https://linuxcommand.org/lc3_man_pages/seth.html diff --git a/generated/4/linux/amd64/bookworm/Dockerfile b/generated/4/linux/amd64/bookworm/Dockerfile index 43bff6f..6db01c6 100644 --- a/generated/4/linux/amd64/bookworm/Dockerfile +++ b/generated/4/linux/amd64/bookworm/Dockerfile @@ -7,9 +7,9 @@ FROM --platform=$BUILDPLATFORM debian:bookworm-slim -ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v4.0.4/Firebird-4.0.4.3010-0.amd64.tar.gz -ENV FIREBIRD_RELEASE_SHA256=ef589301c5e13a1f8481e1e38c453641ef5082344bf69edb51f8aa9f036bcaca -ENV FIREBIRD_VERSION=4.0.4 +ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v4.0.5/Firebird-4.0.5.3140-0.amd64.tar.gz +ENV FIREBIRD_RELEASE_SHA256=6ae43e4fa31ddc99220575023b7d954fb218c063375bb589b16fbe9fcdfdcaa6 +ENV FIREBIRD_VERSION=4.0.5 ENV FIREBIRD_MAJOR=4 # https://linuxcommand.org/lc3_man_pages/seth.html diff --git a/generated/4/linux/amd64/jammy/Dockerfile b/generated/4/linux/amd64/jammy/Dockerfile index d27352f..2ed947d 100644 --- a/generated/4/linux/amd64/jammy/Dockerfile +++ b/generated/4/linux/amd64/jammy/Dockerfile @@ -7,9 +7,9 @@ FROM --platform=$BUILDPLATFORM ubuntu:jammy -ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v4.0.4/Firebird-4.0.4.3010-0.amd64.tar.gz -ENV FIREBIRD_RELEASE_SHA256=ef589301c5e13a1f8481e1e38c453641ef5082344bf69edb51f8aa9f036bcaca -ENV FIREBIRD_VERSION=4.0.4 +ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v4.0.5/Firebird-4.0.5.3140-0.amd64.tar.gz +ENV FIREBIRD_RELEASE_SHA256=6ae43e4fa31ddc99220575023b7d954fb218c063375bb589b16fbe9fcdfdcaa6 +ENV FIREBIRD_VERSION=4.0.5 ENV FIREBIRD_MAJOR=4 # https://linuxcommand.org/lc3_man_pages/seth.html diff --git a/generated/5/linux/amd64/bookworm/Dockerfile b/generated/5/linux/amd64/bookworm/Dockerfile index 0eb54ed..305e206 100644 --- a/generated/5/linux/amd64/bookworm/Dockerfile +++ b/generated/5/linux/amd64/bookworm/Dockerfile @@ -7,9 +7,9 @@ FROM --platform=$BUILDPLATFORM debian:bookworm-slim -ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v5.0.0/Firebird-5.0.0.1306-0-linux-x64.tar.gz -ENV FIREBIRD_RELEASE_SHA256=137b356ea464e224b6ed1241e6dba95b6b950ff1feef91696d4071d4da880768 -ENV FIREBIRD_VERSION=5.0.0 +ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v5.0.1/Firebird-5.0.1.1469-0-linux-x64.tar.gz +ENV FIREBIRD_RELEASE_SHA256=e1023b005e5d6db8f717af032e91f0f94aa7a8dbe0e78f250931214ca0a21e57 +ENV FIREBIRD_VERSION=5.0.1 ENV FIREBIRD_MAJOR=5 # https://linuxcommand.org/lc3_man_pages/seth.html diff --git a/generated/5/linux/amd64/jammy/Dockerfile b/generated/5/linux/amd64/jammy/Dockerfile index 8488936..e35d110 100644 --- a/generated/5/linux/amd64/jammy/Dockerfile +++ b/generated/5/linux/amd64/jammy/Dockerfile @@ -7,9 +7,9 @@ FROM --platform=$BUILDPLATFORM ubuntu:jammy -ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v5.0.0/Firebird-5.0.0.1306-0-linux-x64.tar.gz -ENV FIREBIRD_RELEASE_SHA256=137b356ea464e224b6ed1241e6dba95b6b950ff1feef91696d4071d4da880768 -ENV FIREBIRD_VERSION=5.0.0 +ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v5.0.1/Firebird-5.0.1.1469-0-linux-x64.tar.gz +ENV FIREBIRD_RELEASE_SHA256=e1023b005e5d6db8f717af032e91f0f94aa7a8dbe0e78f250931214ca0a21e57 +ENV FIREBIRD_VERSION=5.0.1 ENV FIREBIRD_MAJOR=5 # https://linuxcommand.org/lc3_man_pages/seth.html diff --git a/generated/5/linux/arm64/bookworm/Dockerfile b/generated/5/linux/arm64/bookworm/Dockerfile index eb5caeb..448cf90 100644 --- a/generated/5/linux/arm64/bookworm/Dockerfile +++ b/generated/5/linux/arm64/bookworm/Dockerfile @@ -7,9 +7,9 @@ FROM --platform=$BUILDPLATFORM debian:bookworm-slim -ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v5.0.0/Firebird-5.0.0.1306-0-linux-arm64.tar.gz -ENV FIREBIRD_RELEASE_SHA256=bdb62abc91a4c26a86b9377256529622e3046f4ec4f66fbdcf46747688d45033 -ENV FIREBIRD_VERSION=5.0.0 +ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v5.0.1/Firebird-5.0.1.1469-0-linux-arm64.tar.gz +ENV FIREBIRD_RELEASE_SHA256=46b3f4f170458a93365c67118c062ba8509903fe8293bf8a62e7bd8a388e2d06 +ENV FIREBIRD_VERSION=5.0.1 ENV FIREBIRD_MAJOR=5 # https://linuxcommand.org/lc3_man_pages/seth.html diff --git a/generated/5/linux/arm64/jammy/Dockerfile b/generated/5/linux/arm64/jammy/Dockerfile index 0f76d10..4000f8b 100644 --- a/generated/5/linux/arm64/jammy/Dockerfile +++ b/generated/5/linux/arm64/jammy/Dockerfile @@ -7,9 +7,9 @@ FROM --platform=$BUILDPLATFORM ubuntu:jammy -ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v5.0.0/Firebird-5.0.0.1306-0-linux-arm64.tar.gz -ENV FIREBIRD_RELEASE_SHA256=bdb62abc91a4c26a86b9377256529622e3046f4ec4f66fbdcf46747688d45033 -ENV FIREBIRD_VERSION=5.0.0 +ENV FIREBIRD_RELEASE_URL=https://github.com/FirebirdSQL/firebird/releases/download/v5.0.1/Firebird-5.0.1.1469-0-linux-arm64.tar.gz +ENV FIREBIRD_RELEASE_SHA256=46b3f4f170458a93365c67118c062ba8509903fe8293bf8a62e7bd8a388e2d06 +ENV FIREBIRD_VERSION=5.0.1 ENV FIREBIRD_MAJOR=5 # https://linuxcommand.org/lc3_man_pages/seth.html