This repository has been archived by the owner on Jul 28, 2024. It is now read-only.
Clean ups example codes (#445) #996
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: Test | |
on: | |
pull_request: | |
branches: | |
- main | |
push: | |
branches: | |
- main | |
env: | |
TINYGO_VERSION: 0.31.2 | |
jobs: | |
style: | |
name: Code style check | |
runs-on: ubuntu-latest | |
steps: | |
- name: install Go | |
uses: actions/setup-go@v3 | |
with: | |
go-version: '1.22' | |
- name: checkout | |
uses: actions/checkout@v3 | |
- name: run lint | |
run: make lint | |
- name: run format check | |
run: make check | |
sdk-tests: | |
name: SDK tests | |
runs-on: ubuntu-latest | |
steps: | |
- name: install Go | |
uses: actions/setup-go@v3 | |
with: | |
go-version: '1.22' | |
- name: checkout | |
uses: actions/checkout@v3 | |
- name: run tests | |
run: make test | |
examples: | |
name: Examples (${{ matrix.envoy-image }}) | |
strategy: | |
fail-fast: false | |
matrix: | |
envoy-image: [ | |
"envoyproxy/envoy-dev:latest", | |
"envoyproxy/envoy:v1.24-latest", | |
"envoyproxy/envoy:v1.25-latest", | |
"envoyproxy/envoy:v1.26-latest", | |
"envoyproxy/envoy:v1.27-latest", | |
"envoyproxy/envoy:v1.28-latest", | |
"envoyproxy/envoy:v1.29-latest", | |
"envoyproxy/envoy:v1.30-latest", | |
"istio/proxyv2:1.16.0", | |
"istio/proxyv2:1.17.0", | |
"istio/proxyv2:1.18.0", | |
"istio/proxyv2:1.19.0", | |
"istio/proxyv2:1.20.0", | |
"istio/proxyv2:1.21.0", | |
"istio/proxyv2:1.22.0", | |
] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Build cache | |
uses: actions/cache@v3 | |
with: | |
path: | | |
~/.cache/go-build | |
~/.cache/tinygo | |
~/go/pkg/mod | |
~/go/bin | |
key: examples-${{ hashFiles('**/go.mod', '**/go.sum') }}-v${{ env.TINYGO_VERSION }} | |
- name: Install Go | |
uses: actions/setup-go@v3 | |
with: | |
go-version: '1.22' | |
- name: Install TinyGo | |
run: | | |
gh release download v${TINYGO_VERSION} -p '*.linux-amd64.tar.gz' -D ~ -R github.com/tinygo-org/tinygo | |
tar -xf ~/tinygo${TINYGO_VERSION}.linux-amd64.tar.gz -C $HOME | |
echo "$HOME/tinygo/bin" >> $GITHUB_PATH | |
env: | |
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build examples | |
run: make build.examples | |
- name: Test examples | |
run: make test.examples | |
- name: Install Envoy | |
run: | | |
export ENVOY_BIN_DIR=$HOME/envoy/bin | |
mkdir -p $ENVOY_BIN_DIR | |
docker run -v $ENVOY_BIN_DIR:/tmp/proxy-wasm-go-sdk -w /tmp/proxy-wasm-go-sdk \ | |
--entrypoint /bin/cp ${{ matrix.envoy-image }} /usr/local/bin/envoy . | |
echo $ENVOY_BIN_DIR >> $GITHUB_PATH | |
- name: Run e2e test | |
run: make test.e2e |