diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 565fbe2..0c9fa31 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,73 +1,20 @@ name: Create and publish AEM images -on: - push: - branches: ["main"] - workflow_dispatch: +on: [push] env: - REGISTRY: ghcr.io - IMAGE_NAME: ${{ github.repository }} - AEM_SDK_VERSION: 2024.10.18459.20241031T210302Z-241000 + registry: ghcr.io + image_name: ${{ github.repository }} + aem_sdk_version: 2024.10.18459.20241031T210302Z-241000 jobs: - build-and-push-image: - name: Build and push AEM image - runs-on: ubuntu-latest - permissions: - contents: read - packages: write - attestations: write - id-token: write + build-images: strategy: matrix: - runmode: ["author", "publish"] + os: [ ubuntu-latest, macos-latest ] + runmode: [ author, publish ] + runs-on: ${{ matrix.os }} steps: - - name: Checkout repository - uses: actions/checkout@v4 - - name: Cache SDK - uses: actions/cache@v4 - with: - path: aem-sdk-artifacts - key: aem-sdk-${{ env.AEM_SDK_VERSION }}.zip - - name: Checkout AEM SDK artifacts repository - uses: actions/checkout@v4 - with: - repository: orbinson/aem-sdk-artifacts - lfs: true - token: ${{ secrets.PRIVATE_TOKEN }} - path: aem-sdk-artifacts - - name: Set up QEMU - uses: docker/setup-qemu-action@v3 - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 - - name: Log in to the Container registry - uses: docker/login-action@v3 - with: - registry: ${{ env.REGISTRY }} - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} - - name: Extract metadata - id: meta - uses: docker/metadata-action@v3 - with: - images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} - - name: Build and push docker image - id: push - uses: docker/build-push-action@v3 - with: - context: . - push: true - tags: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME}}:${{ matrix.runmode }}-${{ env.AEM_SDK_VERSION }} - platforms: linux/amd64,linux/arm64 - labels: ${{ steps.meta.outputs.labels }} - build-args: | - RUNMODE=${{ matrix.runmode }} - PORT=${{ matrix.runmode == 'author' && '4502' || '4503' }} - - name: Generate artifact attestation - uses: actions/attest-build-provenance@v1 - with: - subject-name: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME}} - subject-digest: ${{ steps.push.outputs.digest }} - push-to-registry: true - + - run: | + ARCH=$(arch | sed 's/x86_64/amd64/') + echo ${{ env.registry }}/${{ env.image_name }}:${{ matrix.runmode }}-${{ env.aem_sdk_version }}-${ARCH} diff --git a/Dockerfile b/Dockerfile index a138425..90b7ecb 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,5 @@ FROM azul/zulu-openjdk:11-jre-headless -ARG TARGETOS ARG TARGETARCH ARG AEMC_VERSION=2.0.3 @@ -19,7 +18,7 @@ RUN apt-get update &&\ apt-get install -y --no-install-recommends curl &&\ apt-get clean &&\ rm -rf /var/cache/apk/* &&\ - curl -L https://github.com/wttech/aemc/releases/download/v${AEMC_VERSION}/aemc-cli_${TARGETOS}_${TARGETARCH}.tar.gz | tar -xz -C /usr/local/bin + curl -L https://github.com/wttech/aemc/releases/download/v${AEMC_VERSION}/aemc-cli_linux_${TARGETARCH}.tar.gz | tar -xz -C /usr/local/bin COPY aem-sdk-artifacts/aem-sdk-*.zip aem/home/lib/ COPY aem/default/etc/aem.yml aem/default/etc/aem.yml