diff --git a/.build/docker/docker-entrypoint.sh b/.build/docker/docker-entrypoint.sh deleted file mode 100644 index 8d64382..0000000 --- a/.build/docker/docker-entrypoint.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh - -if [ -f "/app/config.json" ] && [ -f "/app/data-proxy-private-key.json" ]; then - echo "Config and private key files found. Running with specific configuration." - exec ./dataproxy run --config /app/config.json --private-key-file /app/data-proxy-private-key.json "$@" -else - echo "Config or private key file not found. Running with default configuration." - exec ./dataproxy run "$@" -fi diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index f965794..b6ce0c1 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -14,8 +14,19 @@ env: jobs: build-and-push: - name: 🐳 Build and Push Docker Image + name: 🐳 Build and Push Docker Images runs-on: ubuntu-latest + strategy: + matrix: + target_arch: + - bun-linux-x64-modern + - bun-linux-arm64 + include: + - target_arch: bun-linux-x64-modern + platform: linux/amd64 + - target_arch: bun-linux-arm64 + platform: linux/arm64 + steps: - name: 📥 Checkout code uses: actions/checkout@v4 @@ -26,10 +37,19 @@ jobs: with: images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} tags: | + type=ref,event=tag type=semver,pattern={{version}} type=semver,pattern={{major}}.{{minor}} type=semver,pattern={{major}} - type=edge,branch=main + labels: | + org.opencontainers.image.title=${{ env.IMAGE_NAME }} + org.opencontainers.image.description=Data Proxy Service for Seda Protocol + org.opencontainers.image.version=${{ steps.meta.outputs.version }} + org.opencontainers.image.architecture=${{ matrix.target_arch }} + org.opencontainers.image.source=${{ github.repository }} + org.opencontainers.image.url=https://github.com/${{ github.repository }} + org.opencontainers.image.created=${{ steps.meta.outputs.created }} + org.opencontainers.image.revision=${{ github.sha }} - name: 🛠️ Set up Docker Buildx uses: docker/setup-buildx-action@v3 @@ -41,14 +61,18 @@ jobs: username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - - name: 🏗️ Build and push Docker image + - name: 🏗️ Build and push Docker image for ${{ matrix.target_arch }} uses: docker/build-push-action@v5 with: context: . file: .build/docker/Dockerfile push: true - tags: ${{ steps.meta.outputs.tags }} + tags: | + ${{ steps.meta.outputs.tags }}-${{ matrix.target_arch }} labels: ${{ steps.meta.outputs.labels }} + build-args: | + TARGET_ARCH=${{ matrix.target_arch }} + platforms: ${{ matrix.platform }} cache-from: type=gha cache-to: type=gha,mode=max @@ -56,6 +80,7 @@ jobs: name: 📦 Create GitHub Release needs: build-and-push runs-on: ubuntu-latest + steps: - name: 📥 Checkout code uses: actions/checkout@v4 @@ -76,5 +101,14 @@ jobs: with: allowUpdates: true generateReleaseNotes: true - body: ${{ steps.changelog.outputs.changelog }} + tag: ${{ github.ref_name }} + name: ${{ github.ref_name }} + body: | + ${{ steps.changelog.outputs.changelog }} + + ## Docker Images + The following Docker images were built and published to GHCR: + + - [ghcr.io/sedaprotocol/seda-data-proxy:${{ github.ref_name }}-bun-linux-x64-modern](https://ghcr.io/sedaprotocol/seda-data-proxy:${{ github.ref_name }}-bun-linux-x64-modern) + - [ghcr.io/sedaprotocol/seda-data-proxy:${{ github.ref_name }}-bun-linux-arm64](https://ghcr.io/sedaprotocol/seda-data-proxy:${{ github.ref_name }}-bun-linux-arm64) token: ${{ secrets.GITHUB_TOKEN }}