From 606cde6801de03a51d130e225db31f987269bc4d Mon Sep 17 00:00:00 2001 From: Josh Bowen Date: Wed, 23 Mar 2022 11:32:03 -0600 Subject: [PATCH 1/5] move debug build to its own action, create docker build and test action --- .github/workflows/docker-build-debug.yml | 51 ++++++++++++++ .github/workflows/docker-build-test.yml | 88 ++++++++++++++++++++++++ 2 files changed, 139 insertions(+) create mode 100644 .github/workflows/docker-build-debug.yml create mode 100644 .github/workflows/docker-build-test.yml diff --git a/.github/workflows/docker-build-debug.yml b/.github/workflows/docker-build-debug.yml new file mode 100644 index 0000000000..34baeaceb7 --- /dev/null +++ b/.github/workflows/docker-build-debug.yml @@ -0,0 +1,51 @@ +name: docker-build-debug + +on: + push: + branches: + - '**' + tags: + - 'v*.*.*' + pull_request: + branches: + - 'main' + workflow_dispatch: + +env: + REGISTRY: ghcr.io + IMAGE_NAME: ${{ github.repository }} + +jobs: + build: + runs-on: "ubuntu-latest" + permissions: + contents: write + packages: write + steps: + - name: "Checkout source code" + uses: "actions/checkout@v2" + - name: Docker meta + id: meta + uses: docker/metadata-action@v3 + with: + images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} + tags: | + type=sha,suffix=-debug + - name: Set up QEMU + uses: docker/setup-qemu-action@v1 + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + - name: Login to GHCR + uses: docker/login-action@v1 + with: + registry: ghcr.io + username: ${{ github.repository_owner }} + password: ${{ secrets.GITHUB_TOKEN }} + - name: Build and push + uses: docker/build-push-action@v2 + with: + context: . + platforms: linux/amd64, linux/arm64 + push: true + tags: ${{ steps.meta.outputs.tags }} + file: docker/debug.Dockerfile \ No newline at end of file diff --git a/.github/workflows/docker-build-test.yml b/.github/workflows/docker-build-test.yml new file mode 100644 index 0000000000..4405607756 --- /dev/null +++ b/.github/workflows/docker-build-test.yml @@ -0,0 +1,88 @@ +name: docker-build + +on: + push: + branches: + - '**' + tags: + - 'v*.*.*' + pull_request: + branches: + - 'main' + workflow_dispatch: + +env: + REGISTRY: ghcr.io + IMAGE_NAME: ${{ github.repository }} + +jobs: + build: + runs-on: "ubuntu-latest" + permissions: + contents: write + packages: write + steps: + - name: "Checkout source code" + uses: "actions/checkout@v2" + - name: Docker meta + id: meta + uses: docker/metadata-action@v3 + with: + images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} + tags: | + type=sha + - name: Set up QEMU + uses: docker/setup-qemu-action@v1 + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v1 + - name: Login to GHCR + uses: docker/login-action@v1 + with: + registry: ghcr.io + username: ${{ github.repository_owner }} + password: ${{ secrets.GITHUB_TOKEN }} + - name: Build and push + uses: docker/build-push-action@v2 + with: + context: . + platforms: linux/amd64, linux/arm64 + push: true + tags: ${{ steps.meta.outputs.tags }} + file: docker/Dockerfile + + test: + needs: build + runs-on: ubuntu-latest + steps: + - name: Clone repo + uses: actions/checkout@v2 + - name: Clone ephemeral-cluster repo + uses: actions/checkout@v2 + with: + repository: celestiaorg/ephemeral-cluster + path: ephemeral-cluster + ref: chain + - name: Set up Go + uses: actions/setup-go@v2 + with: + go-version: 1.17 + - name: "Setup Cluster" + run: | + EVMOS_IMAGE_TAG=$(git rev-parse --short "$GITHUB_SHA") + cd ephemeral-cluster + ./debug-start-cluster.sh + - name: "Test Cluster" + run: | + docker ps -a + echo "------------- docker logs core0 -------------" + docker logs core0 + echo "------------- docker logs bridge0 -------------" + docker logs bridge0 + echo "------------- docker logs light0 -------------" + docker logs light0 + echo "------------- docker logs dalc0 -------------" + docker logs dalc0 + echo "------------- docker logs evmos0 -------------" + docker logs evmos0 + cd /home/runner/work/ethermint/ethermint + MODE=rpc HOST=http://127.0.0.1:8545 go test ./tests/rpc/... From a5bf8ec2edcefcf96e3fd999ef3dd84daecd2412 Mon Sep 17 00:00:00 2001 From: Josh Bowen Date: Wed, 23 Mar 2022 11:48:41 -0600 Subject: [PATCH 2/5] try to export env var --- .github/workflows/docker-build-test.yml | 4 +- .github/workflows/docker-build.yml | 84 ------------------------- 2 files changed, 2 insertions(+), 86 deletions(-) delete mode 100644 .github/workflows/docker-build.yml diff --git a/.github/workflows/docker-build-test.yml b/.github/workflows/docker-build-test.yml index 4405607756..7f3a1d0174 100644 --- a/.github/workflows/docker-build-test.yml +++ b/.github/workflows/docker-build-test.yml @@ -1,4 +1,4 @@ -name: docker-build +name: docker-build-test on: push: @@ -68,7 +68,7 @@ jobs: go-version: 1.17 - name: "Setup Cluster" run: | - EVMOS_IMAGE_TAG=$(git rev-parse --short "$GITHUB_SHA") + export EVMOS_IMAGE_TAG=$(git rev-parse --short "$GITHUB_SHA") cd ephemeral-cluster ./debug-start-cluster.sh - name: "Test Cluster" diff --git a/.github/workflows/docker-build.yml b/.github/workflows/docker-build.yml deleted file mode 100644 index 73044f2094..0000000000 --- a/.github/workflows/docker-build.yml +++ /dev/null @@ -1,84 +0,0 @@ -name: docker-build - -on: - push: - branches: - - '**' - tags: - - 'v*.*.*' - pull_request: - branches: - - 'main' - workflow_dispatch: - -env: - REGISTRY: ghcr.io - IMAGE_NAME: ${{ github.repository }} - -jobs: - debug: - runs-on: "ubuntu-latest" - permissions: - contents: write - packages: write - steps: - - name: "Checkout source code" - uses: "actions/checkout@v2" - - name: Docker meta - id: meta - uses: docker/metadata-action@v3 - with: - images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} - tags: | - type=sha,suffix=-debug - - name: Set up QEMU - uses: docker/setup-qemu-action@v1 - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 - - name: Login to GHCR - uses: docker/login-action@v1 - with: - registry: ghcr.io - username: ${{ github.repository_owner }} - password: ${{ secrets.GITHUB_TOKEN }} - - name: Build and push - uses: docker/build-push-action@v2 - with: - context: . - platforms: linux/amd64, linux/arm64 - push: true - tags: ${{ steps.meta.outputs.tags }} - file: docker/debug.Dockerfile - regular: - runs-on: "ubuntu-latest" - permissions: - contents: write - packages: write - steps: - - name: "Checkout source code" - uses: "actions/checkout@v2" - - name: Docker meta - id: meta - uses: docker/metadata-action@v3 - with: - images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} - tags: | - type=sha - - name: Set up QEMU - uses: docker/setup-qemu-action@v1 - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 - - name: Login to GHCR - uses: docker/login-action@v1 - with: - registry: ghcr.io - username: ${{ github.repository_owner }} - password: ${{ secrets.GITHUB_TOKEN }} - - name: Build and push - uses: docker/build-push-action@v2 - with: - context: . - platforms: linux/amd64, linux/arm64 - push: true - tags: ${{ steps.meta.outputs.tags }} - file: docker/Dockerfile \ No newline at end of file From e55055b0b7a742dd2ea6f070d4dc5b9e833dcfe4 Mon Sep 17 00:00:00 2001 From: Josh Bowen Date: Wed, 23 Mar 2022 12:07:44 -0600 Subject: [PATCH 3/5] add sha- prefix --- .github/workflows/docker-build-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-build-test.yml b/.github/workflows/docker-build-test.yml index 7f3a1d0174..461b46d808 100644 --- a/.github/workflows/docker-build-test.yml +++ b/.github/workflows/docker-build-test.yml @@ -68,7 +68,7 @@ jobs: go-version: 1.17 - name: "Setup Cluster" run: | - export EVMOS_IMAGE_TAG=$(git rev-parse --short "$GITHUB_SHA") + export EVMOS_IMAGE_TAG=sha-$(git rev-parse --short "$GITHUB_SHA") cd ephemeral-cluster ./debug-start-cluster.sh - name: "Test Cluster" From 9e0a542cde7af0ea3561c9dd972ca63598cea396 Mon Sep 17 00:00:00 2001 From: Josh Bowen Date: Wed, 23 Mar 2022 12:23:16 -0600 Subject: [PATCH 4/5] clone ethermint --- .github/workflows/docker-build-test.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/docker-build-test.yml b/.github/workflows/docker-build-test.yml index 461b46d808..164d7e5a9c 100644 --- a/.github/workflows/docker-build-test.yml +++ b/.github/workflows/docker-build-test.yml @@ -71,6 +71,12 @@ jobs: export EVMOS_IMAGE_TAG=sha-$(git rev-parse --short "$GITHUB_SHA") cd ephemeral-cluster ./debug-start-cluster.sh + - name: Clone ethermint repo + uses: actions/checkout@v2 + with: + repository: celestiaorg/ethermint + path: ethermint + ref: v0.11.0+0.1.0 - name: "Test Cluster" run: | docker ps -a @@ -84,5 +90,5 @@ jobs: docker logs dalc0 echo "------------- docker logs evmos0 -------------" docker logs evmos0 - cd /home/runner/work/ethermint/ethermint + cd /home/runner/work/evmos/evmos/ethermint MODE=rpc HOST=http://127.0.0.1:8545 go test ./tests/rpc/... From 9624a400f9079d6fd6d3d21f83db733f8ac3960c Mon Sep 17 00:00:00 2001 From: Josh Bowen Date: Wed, 23 Mar 2022 12:35:39 -0600 Subject: [PATCH 5/5] add newline --- .github/workflows/docker-build-debug.yml | 2 +- .github/workflows/docker-build-test.yml | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/docker-build-debug.yml b/.github/workflows/docker-build-debug.yml index 34baeaceb7..9309de5305 100644 --- a/.github/workflows/docker-build-debug.yml +++ b/.github/workflows/docker-build-debug.yml @@ -48,4 +48,4 @@ jobs: platforms: linux/amd64, linux/arm64 push: true tags: ${{ steps.meta.outputs.tags }} - file: docker/debug.Dockerfile \ No newline at end of file + file: docker/debug.Dockerfile diff --git a/.github/workflows/docker-build-test.yml b/.github/workflows/docker-build-test.yml index 164d7e5a9c..09f450f635 100644 --- a/.github/workflows/docker-build-test.yml +++ b/.github/workflows/docker-build-test.yml @@ -77,6 +77,9 @@ jobs: repository: celestiaorg/ethermint path: ethermint ref: v0.11.0+0.1.0 + - name: move + run: | + mv ethermint .. - name: "Test Cluster" run: | docker ps -a @@ -90,5 +93,5 @@ jobs: docker logs dalc0 echo "------------- docker logs evmos0 -------------" docker logs evmos0 - cd /home/runner/work/evmos/evmos/ethermint + cd /home/runner/work/evmos/ethermint MODE=rpc HOST=http://127.0.0.1:8545 go test ./tests/rpc/...