name: Test on: push: branches: ["main"] pull_request: branches: ["main"] env: CARGO_TERM_COLOR: always jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Build run: cargo build --verbose - name: Run tests run: cargo test --verbose - uses: "marvinpinto/action-automatic-releases@latest" with: repo_token: "${{ secrets.GITHUB_TOKEN }}" automatic_release_tag: "latest" prerelease: true title: "Development Build" files: | LICENSE target/debug/tree-owners --- name: Release on: push: tags: - "v*" env: CARGO_TERM_COLOR: always jobs: release: runs-on: "ubuntu-latest" steps: - uses: actions/checkout@v3 - name: Check versions run: | CARGO_VER=$(cargo pkgid | sed "s/^.*#/v/") TAG_VER=${{ github.ref_name }} if [[ "$CARGO_VER" != "$TAG_VER" ]]; then exit 1; fi - name: Build run: cargo build --release --verbose - name: Run tests run: cargo test --release --verbose - name: Publish to crates.io run: cargo publish env: CARGO_REGISTRY_TOKEN: "${{ secrets.CRATES_IO_TOKEN }}" - name: Publish to GitHub uses: "marvinpinto/action-automatic-releases@latest" with: repo_token: "${{ secrets.GITHUB_TOKEN }}" prerelease: false files: | LICENSE target/release/tree-owners