Skip to content

workflow for releasing AI proxy #2

workflow for releasing AI proxy

workflow for releasing AI proxy #2

name: Release AI proxy spin app
on:
workflow_dispatch: # Manual trigger
pull_request:
branches: [ main ]
push:
tags:
- 'v*.*.*'
jobs:
build:
name: "Build and test AI proxy"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install dependencies
run: |
curl -fsSL https://developer.fermyon.com/downloads/install.sh | bash
sudo mv spin /usr/local/bin/
rustup target add wasm32-wasi
cargo install cargo-component --locked
spin plugin install -y -u https://github.com/fermyon/spin-test/releases/download/canary/spin-test.json
- name: Check formatting
working-directory: examples/aiproxy
run: |
(cd openai-proxy && cargo fmt --check)
(cd tests && cargo fmt --check)
- name: Build project
working-directory: examples/aiproxy
run: |
spin build
- name: Run tests
working-directory: examples/aiproxy
run: |
spin test
release:
name: "Release"
needs: build
runs-on: ubuntu-latest
# if: startsWith(github.ref, 'refs/tags/')
steps:
- name: Push to registry
run: |
spin registry push ghcr.io/${{ github.repository_owner }}//near-ft-openai-proxy:${{ github.ref }}