name: Release on: push: tags: - "v*" jobs: build_linux: name: Build Linux runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - run: | sudo apt-get update sudo apt-get install -y libspeechd-dev cargo build --release rustup target add wasm32-unknown-unknown cargo build --release --target wasm32-unknown-unknown build_windows: name: Build Windows runs-on: windows-latest steps: - uses: actions/checkout@v2 - run: | choco install -y llvm cargo build --release build_macos: name: Build MacOS runs-on: macos-latest steps: - uses: actions/checkout@v2 - run: | cargo build --release publish_winrt_bindings: name: Publish winrt_bindings runs-on: windows-latest needs: [build_windows] env: CARGO_TOKEN: ${{ secrets.CARGO_TOKEN }} steps: - uses: actions/checkout@v2 - run: | choco install -y llvm cargo login $CARGO_TOKEN cd winrt_bindings cargo package cargo publish publish: name: Publish runs-on: ubuntu-latest needs: [build_linux, build_windows, build_macos] env: CARGO_TOKEN: ${{ secrets.CARGO_TOKEN }} steps: - uses: actions/checkout@v2 - run: | sudo apt-get update sudo apt-get install -y libspeechd-dev cargo login $CARGO_TOKEN cargo publish