name: Release on: push: branches: [main] permissions: contents: write issues: write pull-requests: write jobs: test: name: Test runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Setup Rust toolchain uses: actions-rust-lang/setup-rust-toolchain@v1 - name: Build run: cargo build --release - name: Test run: cargo test release: name: Semantic Release needs: [test] runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 with: fetch-depth: 0 - name: Setup Rust toolchain uses: actions-rust-lang/setup-rust-toolchain@v1 - name: Setup Node.js uses: actions/setup-node@v4 with: node-version: "lts/*" - name: Install semantic-release run: | npm install -D \ semantic-release \ @semantic-release/exec \ @semantic-release/git \ @semantic-release/changelog \ @semantic-release/github - name: Run semantic-release env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: npx semantic-release