add test to check bug #107
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: End to End Tests | |
on: | |
pull_request: | |
env: | |
TAR_PATH: heighliner.tar | |
IBC_TAR_PATH: heighliner-ibc.tar | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
build-primary: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
- name: Build Primary Docker Image | |
uses: strangelove-ventures/[email protected] | |
with: | |
registry: "" | |
tag: local | |
tar-export-path: ${{ env.TAR_PATH }} | |
platform: linux/amd64 | |
git-ref: ${{ github.head_ref }} | |
chain: layer | |
dockerfile: cosmos | |
build-target: make install | |
binaries: | | |
- /go/bin/layerd | |
- name: Publish Primary Tarball as Artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: layer-docker-image | |
path: ${{ env.TAR_PATH }} | |
# Second job: Build the IBC image, depends on the primary image job | |
build-ibc: | |
runs-on: ubuntu-latest | |
needs: build-primary | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
- name: Switch to IBC branch | |
run: | | |
git fetch --all | |
git checkout ibc | |
- name: Build IBC Docker Image | |
uses: strangelove-ventures/[email protected] | |
with: | |
registry: "" | |
tag: local | |
tar-export-path: ${{ env.IBC_TAR_PATH }} | |
platform: linux/amd64 | |
git-ref: ibc | |
chain: layer-icq | |
dockerfile: cosmos | |
build-target: make install | |
binaries: | | |
- /go/bin/layerd | |
- name: Publish IBC Tarball as Artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: layer-icq-docker-image | |
path: ${{ env.IBC_TAR_PATH }} | |
# Prepare job (depends on both build jobs) | |
prepare: | |
runs-on: ubuntu-latest | |
needs: | |
- build-primary | |
- build-ibc | |
outputs: | |
matrix: ${{ steps.set-matrix.outputs.matrix }} | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
- name: Install Go | |
uses: actions/setup-go@v5 | |
with: | |
go-version: '1.22' | |
- name: Generate Matrix | |
id: set-matrix | |
run: | | |
TESTS=$(cd e2e && go test -list . | grep -v "^ok " | jq -R -s -c 'split("\n")[:-1]') | |
echo "matrix=${TESTS}" >> $GITHUB_OUTPUT | |
# Test job (depends on prepare, which in turn depends on both build jobs) | |
test: | |
runs-on: ubuntu-latest | |
needs: | |
- prepare | |
strategy: | |
matrix: | |
test: ${{ fromJson(needs.prepare.outputs.matrix) }} | |
fail-fast: false | |
steps: | |
- name: Checkout Repository | |
uses: actions/checkout@v4 | |
- name: Install Go | |
uses: actions/setup-go@v5 | |
with: | |
go-version: '1.22' | |
- name: Download Primary Tarball | |
uses: actions/download-artifact@v4 | |
with: | |
name: layer-docker-image | |
- name: Download IBC Tarball | |
uses: actions/download-artifact@v4 | |
with: | |
name: layer-icq-docker-image | |
- name: Load Primary Docker Image | |
run: docker image load -i ${{ env.TAR_PATH }} | |
- name: Load IBC Docker Image | |
run: docker image load -i ${{ env.IBC_TAR_PATH }} | |
- name: Run Tests | |
run: cd e2e && go test -race -v -timeout 10m -run ^${{ matrix.test }}$ . |