creating PR for engineering review #24
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: Build and Push Azure Client Package | |
on: | |
push: | |
branches: | |
- main | |
tags: | |
- "v*" | |
paths: | |
- 'main.go' | |
- 'go.mod' | |
- 'go.sum' | |
- 'spin.toml' | |
- 'azure/**' | |
- '.github/workflows/**' | |
pull_request: | |
branches: | |
- main | |
jobs: | |
test-on-pull-request: | |
if: github.event_name == 'pull_request' | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: install go | |
uses: actions/setup-go@v3 | |
with: | |
go-version: "1.22" | |
- name: run unit tests | |
run: make test | |
build-on-push: | |
if: github.event_name == 'push' | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: install spin | |
uses: fermyon/actions/spin/setup@v1 | |
with: | |
github_token: ${{ github.token }} | |
- name: install go | |
uses: actions/setup-go@v3 | |
with: | |
go-version: "1.22" | |
- name: install tinygo | |
uses: rajatjindal/setup-actions/tinygo@v0.0.1 | |
with: | |
version: "v0.32.0" | |
- name: run unit tests | |
run: make test | |
- name: cofiguring rust toolchain version | |
run: rustup toolchain install stable --profile minimal | |
- name: cache cargo registry and git index | |
id: cache-cargo-registry | |
uses: actions/cache@v3 | |
with: | |
path: | | |
~/.cargo/registry | |
~/.cargo/git | |
key: ${{ runner.os }}-cargo-registry-${{ hashFiles('install-script.sh') }} | |
restore-keys: | | |
${{ runner.os }}-cargo-registry- | |
- name: cache cargo binaries | |
id: cache-cargo-bin | |
uses: actions/cache@v3 | |
with: | |
path: ~/.cargo/bin | |
key: ${{ runner.os }}-cargo-bin-${{ hashFiles('install-script.sh') }} | |
restore-keys: | | |
${{ runner.os }}-cargo-bin- | |
- name: install wkg | |
run: cargo install --git https://github.com/bytecodealliance/wasm-pkg-tools wkg --locked --config net.git-fetch-with-cli=true --force | |
if: steps.cache-cargo-bin.outputs.cache-hit != 'true' | |
- name: build spinapp | |
run: spin build | |
- name: login to GitHub container registry | |
uses: docker/login-action@v3 | |
with: | |
registry: ghcr.io | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: push package | |
run: RELEASE_VERSION=$(yq '.application.version' spin.toml) && wkg oci push ghcr.io/fermyon/wasm-pkg/fermyon-experimental/azure-client:$RELEASE_VERSION main.wasm |