From ffa99ca5951040639e41119dcf4d9a2b731f4dd0 Mon Sep 17 00:00:00 2001 From: "mergify[bot]" <37929162+mergify[bot]@users.noreply.github.com> Date: Thu, 4 Apr 2024 10:13:30 +0200 Subject: [PATCH] feat: add arm support (#7946) (#7953) (cherry picked from commit 13c58facc1e9d6c0fb83147b291d9e6b79168555) Co-authored-by: Niccolo Raspa <6024049+niccoloraspa@users.noreply.github.com> --- .github/workflows/push-dev-docker-images.yml | 92 +++++++++++++++++--- 1 file changed, 82 insertions(+), 10 deletions(-) diff --git a/.github/workflows/push-dev-docker-images.yml b/.github/workflows/push-dev-docker-images.yml index 3b2a956b75c..3ab27e0cff0 100644 --- a/.github/workflows/push-dev-docker-images.yml +++ b/.github/workflows/push-dev-docker-images.yml @@ -28,37 +28,44 @@ env: OSMOSIS_INIT_CHAIN_IMAGE_REPOSITORY: osmolabs/osmosis-e2e-init-chain jobs: - docker: + push-docker-images: runs-on: buildjet-2vcpu-ubuntu-2204 steps: - - name: Check out repo + - + name: Check out repo uses: actions/checkout@v4 with: fetch-depth: 0 - - name: Set up Docker Buildx + - + name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - - name: Login to DockerHub + - + name: Login to DockerHub uses: docker/login-action@v3 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - - name: Find go version + - + name: Find go version run: | GO_VERSION=$(cat go.mod | grep -E 'go [0-9].[0-9]+' | cut -d ' ' -f 2) echo "GO_VERSION=$GO_VERSION" >> $GITHUB_ENV - - name: Create Docker Image Tag for release candidate + - + name: Create Docker Image Tag for release candidate if: startsWith(github.ref, 'refs/tags/v') run: | GITHUB_TAG=${{ github.ref_name }} echo "DOCKER_IMAGE_TAG=${GITHUB_TAG#v}" >> $GITHUB_ENV echo "OSMOSIS_VERSION=${{ github.ref_name }}" >> $GITHUB_ENV - - name: Create Docker Image Tag for vN.x branch + - + name: Create Docker Image Tag for vN.x branch if: ${{ !startsWith(github.ref, 'refs/tags/v') }} run: | SHORT_SHA=$(echo ${GITHUB_SHA} | cut -c1-8) echo "DOCKER_IMAGE_TAG=${{ github.ref_name }}-${SHORT_SHA}-$(date +%s)" >> $GITHUB_ENV echo "OSMOSIS_VERSION=${{ github.ref_name }}-$SHORT_SHA" >> $GITHUB_ENV - - name: Build and Push Docker Images + - + name: Build and Push Docker Images uses: docker/build-push-action@v5 with: file: Dockerfile @@ -72,13 +79,78 @@ jobs: GIT_COMMIT=${{ github.sha }} tags: | ${{ env.OSMOSIS_DEV_IMAGE_REPOSITORY }}:${{ env.DOCKER_IMAGE_TAG }} - - name: Build and Push E2E Init Docker Images + - + name: Build and Push E2E Init Docker Images uses: docker/build-push-action@v5 with: file: tests/e2e/initialization/init.Dockerfile context: . push: true - platforms: linux/amd64,linux/arm64 + platforms: linux/amd64 + build-args: | + E2E_SCRIPT_NAME=chain + tags: | + ${{ env.OSMOSIS_INIT_CHAIN_IMAGE_REPOSITORY }}:${{ env.DOCKER_IMAGE_TAG }} + + push-docker-images-arm: + runs-on: buildjet-2vcpu-ubuntu-2204-arm + steps: + - + name: Check out repo + uses: actions/checkout@v4 + with: + fetch-depth: 0 + - + name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + - + name: Login to DockerHub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + - + name: Find go version + run: | + GO_VERSION=$(cat go.mod | grep -E 'go [0-9].[0-9]+' | cut -d ' ' -f 2) + echo "GO_VERSION=$GO_VERSION" >> $GITHUB_ENV + - + name: Create Docker Image Tag for release candidate + if: startsWith(github.ref, 'refs/tags/v') + run: | + GITHUB_TAG=${{ github.ref_name }} + echo "DOCKER_IMAGE_TAG=${GITHUB_TAG#v}" >> $GITHUB_ENV + echo "OSMOSIS_VERSION=${{ github.ref_name }}" >> $GITHUB_ENV + - + name: Create Docker Image Tag for vN.x branch + if: ${{ !startsWith(github.ref, 'refs/tags/v') }} + run: | + SHORT_SHA=$(echo ${GITHUB_SHA} | cut -c1-8) + echo "DOCKER_IMAGE_TAG=${{ github.ref_name }}-${SHORT_SHA}-$(date +%s)" >> $GITHUB_ENV + echo "OSMOSIS_VERSION=${{ github.ref_name }}-$SHORT_SHA" >> $GITHUB_ENV + - + name: Build and Push Docker Images + uses: docker/build-push-action@v5 + with: + file: Dockerfile + context: . + push: true + platforms: linux/arm64 + build-args: | + GO_VERSION=${{ env.GO_VERSION }} + RUNNER_IMAGE=${{ env.RUNNER_BASE_IMAGE_ALPINE }} + GIT_VERSION=${{ env.OSMOSIS_VERSION }} + GIT_COMMIT=${{ github.sha }} + tags: | + ${{ env.OSMOSIS_DEV_IMAGE_REPOSITORY }}:${{ env.DOCKER_IMAGE_TAG }} + - + name: Build and Push E2E Init Docker Images + uses: docker/build-push-action@v5 + with: + file: tests/e2e/initialization/init.Dockerfile + context: . + push: true + platforms: linux/arm64 build-args: | E2E_SCRIPT_NAME=chain tags: |