diff --git a/.github/workflows/ci-release.yml b/.github/workflows/ci-release.yml index f4bbe29713..e43f8212ca 100644 --- a/.github/workflows/ci-release.yml +++ b/.github/workflows/ci-release.yml @@ -24,6 +24,9 @@ jobs: test: uses: ./.github/workflows/test.yml + test-interchain: + uses: ./.github/workflows/test-interchain.yml + goreleaser: uses: ./.github/workflows/goreleaser.yml permissions: write-all diff --git a/.github/workflows/test-interchain.yml b/.github/workflows/test-interchain.yml new file mode 100644 index 0000000000..08233d86ef --- /dev/null +++ b/.github/workflows/test-interchain.yml @@ -0,0 +1,54 @@ +name: test-interchain +on: + workflow_call: + +env: + DOCKER_IMAGE: celestiaorg/celestia-app + ARTIFACT_NAME: celestia-app-docker-image + ARTIFACT_PATH: celestia-app-docker-image.tar + +jobs: + build-docker: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Build celestia-app Docker image + run: make build-docker + + - name: Save Docker image as artifact + run: docker image save -o ${{ env.ARTIFACT_PATH }} ${{ env.DOCKER_IMAGE }} + + - name: Publish Docker image as artifact + uses: actions/upload-artifact@v3 + with: + name: ${{ env.ARTIFACT_NAME }} + path: ${{ env.ARTIFACT_PATH }} + + + test-interchain: + needs: build-docker + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Setup Go + uses: actions/setup-go@v5 + with: + go-version-file: 'go.mod' + + - name: Download artifact + uses: actions/download-artifact@v3 + with: + name: ${{ env.ARTIFACT_NAME }} + + - name: Load Docker image + run: docker image load -i ${{ env.ARTIFACT_PATH }} + + - name: Print Docker images + run: docker images + + - name: Run interchain tests + run: make test-interchain diff --git a/Makefile b/Makefile index 620496628a..e6c07cb244 100644 --- a/Makefile +++ b/Makefile @@ -167,6 +167,7 @@ test-fuzz: ## test-interchain: Run interchain tests in verbose mode. Requires Docker. test-interchain: + @echo "Reminder: this test uses the latest celestia-app Docker image. If you would like to test recent code changes, re-build the Docker image by running: make build-docker" @echo "--> Running interchain tests" @cd ./test/interchain && go test . -v .PHONY: test-interchain diff --git a/test/interchain/chainspec/celestia.go b/test/interchain/chainspec/celestia.go index 8f9df28b60..bb7dda4945 100644 --- a/test/interchain/chainspec/celestia.go +++ b/test/interchain/chainspec/celestia.go @@ -12,8 +12,8 @@ import ( ) const ( - celestiaDockerRepository = "ghcr.io/celestiaorg/celestia-app" - celestiaDockerTag = "pr-3182" + celestiaDockerRepository = "celestiaorg/celestia-app" + celestiaDockerTag = "latest" celestiaUidGid = "10001:10001" ) diff --git a/test/interchain/chainspec/cosmosHub.go b/test/interchain/chainspec/cosmosHub.go index 086efb8862..3d44f5facf 100644 --- a/test/interchain/chainspec/cosmosHub.go +++ b/test/interchain/chainspec/cosmosHub.go @@ -11,12 +11,8 @@ import ( ) const ( - // TODO: As of this writing, gaia has no official releases with the ICA - // controller enabled. However, they do have it enabled on `main` so the - // Docker image below is a custom build from `main`. Replace this with an - // official release when available (likely >= 16.0.0). - cosmosDockerRepository = "docker.io/rootulp/gaia" - cosmosDockerVersion = "ica-controller" + cosmosDockerRepository = "ghcr.io/strangelove-ventures/heighliner/gaia" + cosmosDockerVersion = "v17.2.0" cosmosUidGid = "1025:1025" )