diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml new file mode 100644 index 00000000..0cad0dde --- /dev/null +++ b/.github/workflows/docker.yml @@ -0,0 +1,53 @@ +name: Docker + +on: + push: + branches: + - master + tags: + - "**" + pull_request: + branches: + - master + +jobs: + build: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + version: + - "24" + - "22" + - "20" + steps: + - name: Checkout + uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 + + - name: Set up QEMU + uses: docker/setup-qemu-action@06116385d9baf250c9f4dcb4858b16962ea869c3 # v4.1.0 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@d7f5e7f509e45cec5c76c4d5afdd7de93d0b3df5 # v4.1.0 + + - name: Login to Docker Hub + if: github.event_name != 'pull_request' + uses: docker/login-action@650006c6eb7dba73a995cc03b0b2d7f5ca915bee # v4.2.0 + with: + username: ${{ vars.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + + - name: Compute build context and tag + id: meta + run: | + echo "context=v${{ matrix.version }}" >> "$GITHUB_OUTPUT" + echo "tag=owncloudci/nodejs:${{ matrix.version }}" >> "$GITHUB_OUTPUT" + + - name: Build and push + uses: docker/build-push-action@f9f3042f7e2789586610d6e8b85c8f03e5195baf # v7.2.0 + with: + context: ${{ steps.meta.outputs.context }} + file: ${{ steps.meta.outputs.context }}/Dockerfile.multiarch + platforms: linux/amd64,linux/arm64/v8 + push: ${{ github.event_name != 'pull_request' }} + tags: ${{ steps.meta.outputs.tag }} diff --git a/latest/Dockerfile.amd64 b/latest/Dockerfile.amd64 deleted file mode 100644 index 91bd5951..00000000 --- a/latest/Dockerfile.amd64 +++ /dev/null @@ -1,37 +0,0 @@ -FROM owncloud/ubuntu:22.04-amd64@sha256:4c7cd5f9c40b28cd12ce780d7b34cb18ad4a6c7039bbb764d23edc8498ad2e6b - -LABEL maintainer="ownCloud GmbH " \ - org.opencontainers.image.title="ownCloud CI NodeJS" \ - org.opencontainers.image.vendor="ownCloud GmbH" \ - org.opencontainers.image.authors="ownCloud GmbH" \ - org.opencontainers.image.description="ownCloud CI NodeJS" \ - org.opencontainers.image.documentation="https://github.com/owncloud-ci/nodejs.git" \ - org.opencontainers.image.url="https://github.com/owncloud-ci/nodejs" \ - org.opencontainers.image.source="https://github.com/owncloud-ci/nodejs" - -ARG RETRY_VERSION - -# renovate: datasource=github-releases depName=owncloud-ci/retry -ENV RETRY_VERSION="${RETRY_VERSION:-v2.0.0}" -# renovate: datasource=npm depName=pnpm -ENV PNPM_VERSION="${PNPM_VERSION:-10.20.0}" - -VOLUME ["/var/www/owncloud"] - -RUN apt-get update -y && \ - apt-get install -y gettext git-core build-essential libfontconfig libpng16-16 lsb-release firefox && \ - curl -SsfL -o /usr/local/bin/retry "https://github.com/owncloud-ci/retry/releases/download/v${RETRY_VERSION##v}/retry" && \ - chmod 755 /usr/local/bin/retry && \ - curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \ - curl -fsSL https://deb.nodesource.com/setup_24.x | bash - && \ - apt-get update -y && \ - apt-get install -y nodejs && \ - wget -q -P /tmp https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb && \ - apt install -y /tmp/google-chrome-stable_current_amd64.deb && \ - apt-get clean && \ - rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* - -RUN npm install --silent -g yarn npx "pnpm@$PNPM_VERSION" --force - -COPY rootfs / -WORKDIR /var/www/owncloud diff --git a/latest/Dockerfile.arm64v8 b/latest/Dockerfile.arm64v8 deleted file mode 100644 index d19e3692..00000000 --- a/latest/Dockerfile.arm64v8 +++ /dev/null @@ -1,35 +0,0 @@ -FROM owncloud/ubuntu:22.04-arm64v8@sha256:21fe74802e2a3ac9d73ba854c6551dbddeb6304c69b89150ae215b2ea7566930 - -LABEL maintainer="ownCloud GmbH " \ - org.opencontainers.image.title="ownCloud CI NodeJS" \ - org.opencontainers.image.vendor="ownCloud GmbH" \ - org.opencontainers.image.authors="ownCloud GmbH" \ - org.opencontainers.image.description="ownCloud CI NodeJS" \ - org.opencontainers.image.documentation="https://github.com/owncloud-ci/nodejs.git" \ - org.opencontainers.image.url="https://github.com/owncloud-ci/nodejs" \ - org.opencontainers.image.source="https://github.com/owncloud-ci/nodejs" - -ARG RETRY_VERSION - -# renovate: datasource=github-releases depName=owncloud-ci/retry -ENV RETRY_VERSION="${RETRY_VERSION:-v2.0.0}" -# renovate: datasource=npm depName=pnpm -ENV PNPM_VERSION="${PNPM_VERSION:-10.20.0}" - -VOLUME ["/var/www/owncloud"] - -RUN apt-get update -y && \ - apt-get install -y gettext git-core build-essential libfontconfig libpng16-16 lsb-release firefox && \ - curl -SsfL -o /usr/local/bin/retry "https://github.com/owncloud-ci/retry/releases/download/v${RETRY_VERSION##v}/retry" && \ - chmod 755 /usr/local/bin/retry && \ - curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \ - curl -fsSL https://deb.nodesource.com/setup_24.x | bash - && \ - apt-get update -y && \ - apt-get install -y nodejs && \ - apt-get clean && \ - rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* - -RUN npm install --silent -g yarn npx "pnpm@$PNPM_VERSION" --force - -COPY rootfs / -WORKDIR /var/www/owncloud diff --git a/latest/manifest.tmpl b/latest/manifest.tmpl deleted file mode 100644 index 224c9b99..00000000 --- a/latest/manifest.tmpl +++ /dev/null @@ -1,11 +0,0 @@ -image: owncloudci/nodejs:latest -manifests: - - image: owncloudci/nodejs:amd64 - platform: - architecture: amd64 - os: linux - - image: owncloudci/nodejs:arm64v8 - platform: - architecture: arm64 - variant: v8 - os: linux diff --git a/latest/rootfs/.keep b/latest/rootfs/.keep deleted file mode 100644 index e69de29b..00000000 diff --git a/v14/Dockerfile.amd64 b/v14/Dockerfile.amd64 deleted file mode 100644 index 4a5a5c6b..00000000 --- a/v14/Dockerfile.amd64 +++ /dev/null @@ -1,37 +0,0 @@ -FROM owncloud/ubuntu:20.04-amd64@sha256:de7decaa013d5933c855ed2475c36b3d5991a821e847da4be2ceeecb68f3093d - -LABEL maintainer="ownCloud GmbH " \ - org.opencontainers.image.title="ownCloud CI NodeJS" \ - org.opencontainers.image.vendor="ownCloud GmbH" \ - org.opencontainers.image.authors="ownCloud GmbH" \ - org.opencontainers.image.description="ownCloud CI NodeJS" \ - org.opencontainers.image.documentation="https://github.com/owncloud-ci/nodejs.git" \ - org.opencontainers.image.url="https://github.com/owncloud-ci/nodejs" \ - org.opencontainers.image.source="https://github.com/owncloud-ci/nodejs" - -ARG RETRY_VERSION - -# renovate: datasource=github-releases depName=owncloud-ci/retry -ENV RETRY_VERSION="${RETRY_VERSION:-v2.0.0}" -# renovate: datasource=npm depName=pnpm -ENV PNPM_VERSION="${PNPM_VERSION:-9.15.9}" - -VOLUME ["/var/www/owncloud"] - -RUN apt-get update -y && \ - apt-get install -y gettext git-core build-essential libfontconfig libpng16-16 lsb-release firefox && \ - curl -SsfL -o /usr/local/bin/retry "https://github.com/owncloud-ci/retry/releases/download/v${RETRY_VERSION##v}/retry" && \ - chmod 755 /usr/local/bin/retry && \ - curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \ - echo "deb https://deb.nodesource.com/node_14.x $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/node.list && \ - apt-get update -y && \ - apt-get install -y nodejs && \ - wget -q -P /tmp https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb && \ - apt install -y /tmp/google-chrome-stable_current_amd64.deb && \ - apt-get clean && \ - rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* - -RUN npm install --silent -g yarn npx "pnpm@$PNPM_VERSION" --force - -COPY rootfs / -WORKDIR /var/www/owncloud diff --git a/v14/Dockerfile.arm64v8 b/v14/Dockerfile.arm64v8 deleted file mode 100644 index c52db56e..00000000 --- a/v14/Dockerfile.arm64v8 +++ /dev/null @@ -1,35 +0,0 @@ -FROM owncloud/ubuntu:20.04-arm64v8@sha256:f2bf53708c8e5393371e106e621e8b458557da2bf7d056a79dc3b3a1ad98cb06 - -LABEL maintainer="ownCloud GmbH " \ - org.opencontainers.image.title="ownCloud CI NodeJS" \ - org.opencontainers.image.vendor="ownCloud GmbH" \ - org.opencontainers.image.authors="ownCloud GmbH" \ - org.opencontainers.image.description="ownCloud CI NodeJS" \ - org.opencontainers.image.documentation="https://github.com/owncloud-ci/nodejs.git" \ - org.opencontainers.image.url="https://github.com/owncloud-ci/nodejs" \ - org.opencontainers.image.source="https://github.com/owncloud-ci/nodejs" - -ARG RETRY_VERSION - -# renovate: datasource=github-releases depName=owncloud-ci/retry -ENV RETRY_VERSION="${RETRY_VERSION:-v2.0.0}" -# renovate: datasource=npm depName=pnpm -ENV PNPM_VERSION="${PNPM_VERSION:-9.15.9}" - -VOLUME ["/var/www/owncloud"] - -RUN apt-get update -y && \ - apt-get install -y gettext git-core build-essential libfontconfig libpng16-16 lsb-release firefox && \ - curl -SsfL -o /usr/local/bin/retry "https://github.com/owncloud-ci/retry/releases/download/v${RETRY_VERSION##v}/retry" && \ - chmod 755 /usr/local/bin/retry && \ - curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \ - echo "deb https://deb.nodesource.com/node_14.x $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/node.list && \ - apt-get update -y && \ - apt-get install -y nodejs && \ - apt-get clean && \ - rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* - -RUN npm install --silent -g yarn npx "pnpm@$PNPM_VERSION" --force - -COPY rootfs / -WORKDIR /var/www/owncloud diff --git a/v14/manifest.tmpl b/v14/manifest.tmpl deleted file mode 100644 index a8b56750..00000000 --- a/v14/manifest.tmpl +++ /dev/null @@ -1,11 +0,0 @@ -image: owncloudci/nodejs:14 -manifests: - - image: owncloudci/nodejs:14-amd64 - platform: - architecture: amd64 - os: linux - - image: owncloudci/nodejs:14-arm64v8 - platform: - architecture: arm64 - variant: v8 - os: linux diff --git a/v14/rootfs/.keep b/v14/rootfs/.keep deleted file mode 100644 index e69de29b..00000000 diff --git a/v16/Dockerfile.amd64 b/v16/Dockerfile.amd64 deleted file mode 100644 index 3c8e5b9a..00000000 --- a/v16/Dockerfile.amd64 +++ /dev/null @@ -1,37 +0,0 @@ -FROM owncloud/ubuntu:20.04-amd64@sha256:de7decaa013d5933c855ed2475c36b3d5991a821e847da4be2ceeecb68f3093d - -LABEL maintainer="ownCloud GmbH " \ - org.opencontainers.image.title="ownCloud CI NodeJS" \ - org.opencontainers.image.vendor="ownCloud GmbH" \ - org.opencontainers.image.authors="ownCloud GmbH" \ - org.opencontainers.image.description="ownCloud CI NodeJS" \ - org.opencontainers.image.documentation="https://github.com/owncloud-ci/nodejs.git" \ - org.opencontainers.image.url="https://github.com/owncloud-ci/nodejs" \ - org.opencontainers.image.source="https://github.com/owncloud-ci/nodejs" - -ARG RETRY_VERSION - -# renovate: datasource=github-releases depName=owncloud-ci/retry -ENV RETRY_VERSION="${RETRY_VERSION:-v2.0.0}" -# renovate: datasource=npm depName=pnpm -ENV PNPM_VERSION="${PNPM_VERSION:-9.15.9}" - -VOLUME ["/var/www/owncloud"] - -RUN apt-get update -y && \ - apt-get install -y gettext git-core build-essential libfontconfig libpng16-16 lsb-release firefox && \ - curl -SsfL -o /usr/local/bin/retry "https://github.com/owncloud-ci/retry/releases/download/v${RETRY_VERSION##v}/retry" && \ - chmod 755 /usr/local/bin/retry && \ - curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \ - echo "deb https://deb.nodesource.com/node_16.x $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/node.list && \ - apt-get update -y && \ - apt-get install -y nodejs && \ - wget -q -P /tmp https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb && \ - apt install -y /tmp/google-chrome-stable_current_amd64.deb && \ - apt-get clean && \ - rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* - -RUN npm install --silent -g yarn npx "pnpm@$PNPM_VERSION" --force - -COPY rootfs / -WORKDIR /var/www/owncloud diff --git a/v16/Dockerfile.arm64v8 b/v16/Dockerfile.arm64v8 deleted file mode 100644 index e5481f67..00000000 --- a/v16/Dockerfile.arm64v8 +++ /dev/null @@ -1,35 +0,0 @@ -FROM owncloud/ubuntu:20.04-arm64v8@sha256:f2bf53708c8e5393371e106e621e8b458557da2bf7d056a79dc3b3a1ad98cb06 - -LABEL maintainer="ownCloud GmbH " \ - org.opencontainers.image.title="ownCloud CI NodeJS" \ - org.opencontainers.image.vendor="ownCloud GmbH" \ - org.opencontainers.image.authors="ownCloud GmbH" \ - org.opencontainers.image.description="ownCloud CI NodeJS" \ - org.opencontainers.image.documentation="https://github.com/owncloud-ci/nodejs.git" \ - org.opencontainers.image.url="https://github.com/owncloud-ci/nodejs" \ - org.opencontainers.image.source="https://github.com/owncloud-ci/nodejs" - -ARG RETRY_VERSION - -# renovate: datasource=github-releases depName=owncloud-ci/retry -ENV RETRY_VERSION="${RETRY_VERSION:-v2.0.0}" -# renovate: datasource=npm depName=pnpm -ENV PNPM_VERSION="${PNPM_VERSION:-9.15.9}" - -VOLUME ["/var/www/owncloud"] - -RUN apt-get update -y && \ - apt-get install -y gettext git-core build-essential libfontconfig libpng16-16 lsb-release firefox && \ - curl -SsfL -o /usr/local/bin/retry "https://github.com/owncloud-ci/retry/releases/download/v${RETRY_VERSION##v}/retry" && \ - chmod 755 /usr/local/bin/retry && \ - curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \ - echo "deb https://deb.nodesource.com/node_16.x $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/node.list && \ - apt-get update -y && \ - apt-get install -y nodejs && \ - apt-get clean && \ - rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* - -RUN npm install --silent -g yarn npx "pnpm@$PNPM_VERSION" --force - -COPY rootfs / -WORKDIR /var/www/owncloud diff --git a/v16/manifest.tmpl b/v16/manifest.tmpl deleted file mode 100644 index 6721e0fd..00000000 --- a/v16/manifest.tmpl +++ /dev/null @@ -1,11 +0,0 @@ -image: owncloudci/nodejs:16 -manifests: - - image: owncloudci/nodejs:16-amd64 - platform: - architecture: amd64 - os: linux - - image: owncloudci/nodejs:16-arm64v8 - platform: - architecture: arm64 - variant: v8 - os: linux diff --git a/v16/rootfs/.keep b/v16/rootfs/.keep deleted file mode 100644 index e69de29b..00000000 diff --git a/v18/Dockerfile.amd64 b/v18/Dockerfile.amd64 deleted file mode 100644 index 0ba8ff2f..00000000 --- a/v18/Dockerfile.amd64 +++ /dev/null @@ -1,37 +0,0 @@ -FROM owncloud/ubuntu:20.04-amd64@sha256:de7decaa013d5933c855ed2475c36b3d5991a821e847da4be2ceeecb68f3093d - -LABEL maintainer="ownCloud GmbH " \ - org.opencontainers.image.title="ownCloud CI NodeJS" \ - org.opencontainers.image.vendor="ownCloud GmbH" \ - org.opencontainers.image.authors="ownCloud GmbH" \ - org.opencontainers.image.description="ownCloud CI NodeJS" \ - org.opencontainers.image.documentation="https://github.com/owncloud-ci/nodejs.git" \ - org.opencontainers.image.url="https://github.com/owncloud-ci/nodejs" \ - org.opencontainers.image.source="https://github.com/owncloud-ci/nodejs" - -ARG RETRY_VERSION - -# renovate: datasource=github-releases depName=owncloud-ci/retry -ENV RETRY_VERSION="${RETRY_VERSION:-v2.0.0}" -# renovate: datasource=npm depName=pnpm -ENV PNPM_VERSION="${PNPM_VERSION:-9.15.9}" - -VOLUME ["/var/www/owncloud"] - -RUN apt-get update -y && \ - apt-get install -y gettext git-core build-essential libfontconfig libpng16-16 lsb-release firefox && \ - curl -SsfL -o /usr/local/bin/retry "https://github.com/owncloud-ci/retry/releases/download/v${RETRY_VERSION##v}/retry" && \ - chmod 755 /usr/local/bin/retry && \ - curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \ - echo "deb https://deb.nodesource.com/node_18.x $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/node.list && \ - apt-get update -y && \ - apt-get install -y nodejs && \ - wget -q -P /tmp https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb && \ - apt install -y /tmp/google-chrome-stable_current_amd64.deb && \ - apt-get clean && \ - rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* - -RUN npm install --silent -g yarn npx "pnpm@$PNPM_VERSION" --force - -COPY rootfs / -WORKDIR /var/www/owncloud diff --git a/v18/Dockerfile.arm64v8 b/v18/Dockerfile.arm64v8 deleted file mode 100644 index 77c706c6..00000000 --- a/v18/Dockerfile.arm64v8 +++ /dev/null @@ -1,35 +0,0 @@ -FROM owncloud/ubuntu:20.04-arm64v8@sha256:f2bf53708c8e5393371e106e621e8b458557da2bf7d056a79dc3b3a1ad98cb06 - -LABEL maintainer="ownCloud GmbH " \ - org.opencontainers.image.title="ownCloud CI NodeJS" \ - org.opencontainers.image.vendor="ownCloud GmbH" \ - org.opencontainers.image.authors="ownCloud GmbH" \ - org.opencontainers.image.description="ownCloud CI NodeJS" \ - org.opencontainers.image.documentation="https://github.com/owncloud-ci/nodejs.git" \ - org.opencontainers.image.url="https://github.com/owncloud-ci/nodejs" \ - org.opencontainers.image.source="https://github.com/owncloud-ci/nodejs" - -ARG RETRY_VERSION - -# renovate: datasource=github-releases depName=owncloud-ci/retry -ENV RETRY_VERSION="${RETRY_VERSION:-v2.0.0}" -# renovate: datasource=npm depName=pnpm -ENV PNPM_VERSION="${PNPM_VERSION:-9.15.9}" - -VOLUME ["/var/www/owncloud"] - -RUN apt-get update -y && \ - apt-get install -y gettext git-core build-essential libfontconfig libpng16-16 lsb-release firefox && \ - curl -SsfL -o /usr/local/bin/retry "https://github.com/owncloud-ci/retry/releases/download/v${RETRY_VERSION##v}/retry" && \ - chmod 755 /usr/local/bin/retry && \ - curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \ - echo "deb https://deb.nodesource.com/node_18.x $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/node.list && \ - apt-get update -y && \ - apt-get install -y nodejs && \ - apt-get clean && \ - rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* - -RUN npm install --silent -g yarn npx "pnpm@$PNPM_VERSION" --force - -COPY rootfs / -WORKDIR /var/www/owncloud diff --git a/v18/manifest.tmpl b/v18/manifest.tmpl deleted file mode 100644 index 548b0a87..00000000 --- a/v18/manifest.tmpl +++ /dev/null @@ -1,11 +0,0 @@ -image: owncloudci/nodejs:18 -manifests: - - image: owncloudci/nodejs:18-amd64 - platform: - architecture: amd64 - os: linux - - image: owncloudci/nodejs:18-arm64v8 - platform: - architecture: arm64 - variant: v8 - os: linux diff --git a/v18/rootfs/.keep b/v18/rootfs/.keep deleted file mode 100644 index e69de29b..00000000 diff --git a/v20/Dockerfile.arm64v8 b/v20/Dockerfile.arm64v8 deleted file mode 100644 index 102da919..00000000 --- a/v20/Dockerfile.arm64v8 +++ /dev/null @@ -1,35 +0,0 @@ -FROM owncloud/ubuntu:20.04-arm64v8@sha256:f2bf53708c8e5393371e106e621e8b458557da2bf7d056a79dc3b3a1ad98cb06 - -LABEL maintainer="ownCloud GmbH " \ - org.opencontainers.image.title="ownCloud CI NodeJS" \ - org.opencontainers.image.vendor="ownCloud GmbH" \ - org.opencontainers.image.authors="ownCloud GmbH" \ - org.opencontainers.image.description="ownCloud CI NodeJS" \ - org.opencontainers.image.documentation="https://github.com/owncloud-ci/nodejs.git" \ - org.opencontainers.image.url="https://github.com/owncloud-ci/nodejs" \ - org.opencontainers.image.source="https://github.com/owncloud-ci/nodejs" - -ARG RETRY_VERSION - -# renovate: datasource=github-releases depName=owncloud-ci/retry -ENV RETRY_VERSION="${RETRY_VERSION:-v2.0.0}" -# renovate: datasource=npm depName=pnpm -ENV PNPM_VERSION="${PNPM_VERSION:-9.15.9}" - -VOLUME ["/var/www/owncloud"] - -RUN apt-get update -y && \ - apt-get install -y gettext git-core build-essential libfontconfig libpng16-16 lsb-release firefox && \ - curl -SsfL -o /usr/local/bin/retry "https://github.com/owncloud-ci/retry/releases/download/v${RETRY_VERSION##v}/retry" && \ - chmod 755 /usr/local/bin/retry && \ - curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \ - curl -fsSL https://deb.nodesource.com/setup_20.x | bash - && \ - apt-get update -y && \ - apt-get install -y nodejs=20.19.0-1nodesource1 && \ - apt-get clean && \ - rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* - -RUN npm install --silent -g yarn npx "pnpm@$PNPM_VERSION" --force - -COPY rootfs / -WORKDIR /var/www/owncloud diff --git a/v20/Dockerfile.amd64 b/v20/Dockerfile.multiarch similarity index 77% rename from v20/Dockerfile.amd64 rename to v20/Dockerfile.multiarch index 3e773679..29eabb00 100644 --- a/v20/Dockerfile.amd64 +++ b/v20/Dockerfile.multiarch @@ -1,4 +1,8 @@ -FROM owncloud/ubuntu:20.04-amd64@sha256:de7decaa013d5933c855ed2475c36b3d5991a821e847da4be2ceeecb68f3093d +FROM owncloud/ubuntu:20.04-amd64@sha256:de7decaa013d5933c855ed2475c36b3d5991a821e847da4be2ceeecb68f3093d AS base-amd64 +FROM owncloud/ubuntu:20.04-arm64v8@sha256:f2bf53708c8e5393371e106e621e8b458557da2bf7d056a79dc3b3a1ad98cb06 AS base-arm64 + +ARG TARGETARCH +FROM base-${TARGETARCH} LABEL maintainer="ownCloud GmbH " \ org.opencontainers.image.title="ownCloud CI NodeJS" \ @@ -26,8 +30,10 @@ RUN apt-get update -y && \ curl -fsSL https://deb.nodesource.com/setup_20.x | bash - && \ apt-get update -y && \ apt-get install -y nodejs=20.19.0-1nodesource1 && \ - wget -q -P /tmp https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb && \ - apt install -y /tmp/google-chrome-stable_current_amd64.deb && \ + if [ "$(uname -m)" = "x86_64" ]; then \ + wget -q -P /tmp https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb && \ + apt install -y /tmp/google-chrome-stable_current_amd64.deb; \ + fi && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* diff --git a/v22/Dockerfile.arm64v8 b/v22/Dockerfile.arm64v8 deleted file mode 100644 index d09a2239..00000000 --- a/v22/Dockerfile.arm64v8 +++ /dev/null @@ -1,35 +0,0 @@ -FROM owncloud/ubuntu:22.04-arm64v8@sha256:21fe74802e2a3ac9d73ba854c6551dbddeb6304c69b89150ae215b2ea7566930 - -LABEL maintainer="ownCloud GmbH " \ - org.opencontainers.image.title="ownCloud CI NodeJS" \ - org.opencontainers.image.vendor="ownCloud GmbH" \ - org.opencontainers.image.authors="ownCloud GmbH" \ - org.opencontainers.image.description="ownCloud CI NodeJS" \ - org.opencontainers.image.documentation="https://github.com/owncloud-ci/nodejs.git" \ - org.opencontainers.image.url="https://github.com/owncloud-ci/nodejs" \ - org.opencontainers.image.source="https://github.com/owncloud-ci/nodejs" - -ARG RETRY_VERSION - -# renovate: datasource=github-releases depName=owncloud-ci/retry -ENV RETRY_VERSION="${RETRY_VERSION:-v2.0.0}" -# renovate: datasource=npm depName=pnpm -ENV PNPM_VERSION="${PNPM_VERSION:-10.11.0}" - -VOLUME ["/var/www/owncloud"] - -RUN apt-get update -y && \ - apt-get install -y gettext file git-core build-essential libfontconfig libpng16-16 lsb-release firefox && \ - curl -SsfL -o /usr/local/bin/retry "https://github.com/owncloud-ci/retry/releases/download/v${RETRY_VERSION##v}/retry" && \ - chmod 755 /usr/local/bin/retry && \ - curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \ - curl -fsSL https://deb.nodesource.com/setup_22.x | bash - && \ - apt-get update -y && \ - apt-get install -y nodejs && \ - apt-get clean && \ - rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* - -RUN npm install --silent -g yarn npx "pnpm@$PNPM_VERSION" --force - -COPY rootfs / -WORKDIR /var/www/owncloud diff --git a/v22/Dockerfile.amd64 b/v22/Dockerfile.multiarch similarity index 77% rename from v22/Dockerfile.amd64 rename to v22/Dockerfile.multiarch index e10ed083..f95e7ddf 100644 --- a/v22/Dockerfile.amd64 +++ b/v22/Dockerfile.multiarch @@ -1,4 +1,8 @@ -FROM owncloud/ubuntu:22.04-amd64@sha256:4c7cd5f9c40b28cd12ce780d7b34cb18ad4a6c7039bbb764d23edc8498ad2e6b +FROM owncloud/ubuntu:22.04-amd64@sha256:4c7cd5f9c40b28cd12ce780d7b34cb18ad4a6c7039bbb764d23edc8498ad2e6b AS base-amd64 +FROM owncloud/ubuntu:22.04-arm64v8@sha256:21fe74802e2a3ac9d73ba854c6551dbddeb6304c69b89150ae215b2ea7566930 AS base-arm64 + +ARG TARGETARCH +FROM base-${TARGETARCH} LABEL maintainer="ownCloud GmbH " \ org.opencontainers.image.title="ownCloud CI NodeJS" \ @@ -26,8 +30,10 @@ RUN apt-get update -y && \ curl -fsSL https://deb.nodesource.com/setup_22.x | bash - && \ apt-get update -y && \ apt-get install -y nodejs && \ - wget -q -P /tmp https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb && \ - apt install -y /tmp/google-chrome-stable_current_amd64.deb && \ + if [ "$(uname -m)" = "x86_64" ]; then \ + wget -q -P /tmp https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb && \ + apt install -y /tmp/google-chrome-stable_current_amd64.deb; \ + fi && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* diff --git a/v24/Dockerfile.arm64v8 b/v24/Dockerfile.arm64v8 deleted file mode 100644 index 93465c1f..00000000 --- a/v24/Dockerfile.arm64v8 +++ /dev/null @@ -1,35 +0,0 @@ -FROM owncloud/ubuntu:22.04-arm64v8@sha256:21fe74802e2a3ac9d73ba854c6551dbddeb6304c69b89150ae215b2ea7566930 - -LABEL maintainer="ownCloud GmbH " \ - org.opencontainers.image.title="ownCloud CI NodeJS" \ - org.opencontainers.image.vendor="ownCloud GmbH" \ - org.opencontainers.image.authors="ownCloud GmbH" \ - org.opencontainers.image.description="ownCloud CI NodeJS" \ - org.opencontainers.image.documentation="https://github.com/owncloud-ci/nodejs.git" \ - org.opencontainers.image.url="https://github.com/owncloud-ci/nodejs" \ - org.opencontainers.image.source="https://github.com/owncloud-ci/nodejs" - -ARG RETRY_VERSION - -# renovate: datasource=github-releases depName=owncloud-ci/retry -ENV RETRY_VERSION="${RETRY_VERSION:-v2.0.0}" -# renovate: datasource=npm depName=pnpm -ENV PNPM_VERSION="${PNPM_VERSION:-10.20.0}" - -VOLUME ["/var/www/owncloud"] - -RUN apt-get update -y && \ - apt-get install -y gettext file git-core build-essential libfontconfig libpng16-16 lsb-release firefox && \ - curl -SsfL -o /usr/local/bin/retry "https://github.com/owncloud-ci/retry/releases/download/v${RETRY_VERSION##v}/retry" && \ - chmod 755 /usr/local/bin/retry && \ - curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \ - curl -fsSL https://deb.nodesource.com/setup_24.x | bash - && \ - apt-get update -y && \ - apt-get install -y nodejs && \ - apt-get clean && \ - rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* - -RUN npm install --silent -g yarn npx "pnpm@$PNPM_VERSION" --force - -COPY rootfs / -WORKDIR /var/www/owncloud diff --git a/v24/Dockerfile.amd64 b/v24/Dockerfile.multiarch similarity index 77% rename from v24/Dockerfile.amd64 rename to v24/Dockerfile.multiarch index f30755ae..04ff7aec 100644 --- a/v24/Dockerfile.amd64 +++ b/v24/Dockerfile.multiarch @@ -1,4 +1,8 @@ -FROM owncloud/ubuntu:22.04-amd64@sha256:4c7cd5f9c40b28cd12ce780d7b34cb18ad4a6c7039bbb764d23edc8498ad2e6b +FROM owncloud/ubuntu:22.04-amd64@sha256:4c7cd5f9c40b28cd12ce780d7b34cb18ad4a6c7039bbb764d23edc8498ad2e6b AS base-amd64 +FROM owncloud/ubuntu:22.04-arm64v8@sha256:21fe74802e2a3ac9d73ba854c6551dbddeb6304c69b89150ae215b2ea7566930 AS base-arm64 + +ARG TARGETARCH +FROM base-${TARGETARCH} LABEL maintainer="ownCloud GmbH " \ org.opencontainers.image.title="ownCloud CI NodeJS" \ @@ -26,8 +30,10 @@ RUN apt-get update -y && \ curl -fsSL https://deb.nodesource.com/setup_24.x | bash - && \ apt-get update -y && \ apt-get install -y nodejs && \ - wget -q -P /tmp https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb && \ - apt install -y /tmp/google-chrome-stable_current_amd64.deb && \ + if [ "$(uname -m)" = "x86_64" ]; then \ + wget -q -P /tmp https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb && \ + apt install -y /tmp/google-chrome-stable_current_amd64.deb; \ + fi && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*