Add basic e2e tests #232
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: Integration Test | |
on: | |
pull_request: | |
branches: | |
- master | |
- release-* | |
push: | |
branches: | |
- master | |
- release-* | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.actor }} | |
cancel-in-progress: true | |
jobs: | |
build-arena: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout source code | |
uses: actions/checkout@v4 | |
- name: Set up Go | |
uses: actions/setup-go@v5 | |
with: | |
go-version-file: go.mod | |
- name: Run go mod tidy | |
run: | | |
go mod tidy | |
if ! git diff --quiet; then | |
echo "Please run 'go mod tidy' to add missing and remove unused dependencies" | |
exit 1 | |
fi | |
- name: Run go mod vendor | |
run: | | |
go mod vendor | |
if ! git diff --quiet; then | |
echo "Please run 'go mod vendor' to make vendored copy of dependencies" | |
exit 1 | |
fi | |
- name: Run go fmt check | |
run: | | |
make go-fmt | |
if ! git diff --quiet; then | |
echo "Please run 'make go-fmt' to run go fmt aganist code" | |
exit 1 | |
fi | |
- name: Run go vet check | |
run: | | |
make go-vet | |
if ! git diff --quiet; then | |
echo "Please run 'make go-vet' to run go vet aganist code" | |
exit 1 | |
fi | |
- name: Run golangci-lint | |
run: | | |
make go-lint | |
- name: Run unit tests | |
run: | | |
make unit-test | |
- name: Build arena binary | |
run: | | |
make arena | |
build-java-sdk: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout source code | |
uses: actions/checkout@v4 | |
- uses: actions/setup-java@v4 | |
with: | |
distribution: zulu | |
java-version: 8 | |
- name: Build Java SDK | |
run: | | |
make java-sdk | |
build-docs: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout source code | |
uses: actions/checkout@v4 | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: 3.11 | |
- name: Build docs | |
run: | | |
pip install -r docs/requirements.txt | |
mkdocs build --strict | |
e2e-test: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout source code | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Set up Go | |
uses: actions/setup-go@v5 | |
with: | |
go-version-file: go.mod | |
- name: Set up Kind cluster | |
uses: helm/kind-action@v1 | |
with: | |
node_image: kindest/node:v1.29.10 | |
- name: Install arena client | |
run: | | |
make arena-installer | |
tar -zxf arena-installer-*.tar.gz | |
arena-installer-*/install.sh --only-binary | |
- name: Run e2e tests | |
run: | | |
make e2e-test |