name: Rust on: push: paths-ignore: - "**.md" branches: - master env: CARGO_TERM_COLOR: always jobs: build: runs-on: ubuntu-18.04 steps: - uses: actions/checkout@v2 - name: Cache Packages uses: Swatinem/rust-cache@v1.0.1 - name: Build run: cargo build --release - name: Publish to crates.io continue-on-error: true run: cargo publish --no-verify --token ${{ secrets.CARGO_REGISTRY_TOKEN }} - uses: actions/upload-artifact@v2.2.1 name: Upload a Build Artifact with: name: libreddit path: target/release/libreddit - name: Versions id: version run: | echo "::set-output name=version::$(cargo metadata --format-version 1 --no-deps | jq .packages[0].version -r | sed 's/^/v/')" echo "::set-output name=tag::$(git describe --tags)" - name: Calculate SHA512 checksum run: sha512sum target/release/libreddit > libreddit.sha512 - name: Release uses: softprops/action-gh-release@v1 if: github.base_ref != 'master' with: tag_name: ${{ steps.version.outputs.version }} name: ${{ steps.version.outputs.version }} - ${{ github.event.head_commit.message }} draft: true files: | target/release/libreddit libreddit.sha512 body: | - ${{ github.event.head_commit.message }} ${{ github.sha }} generate_release_notes: true env: GITHUB_TOKEN: ${{ secrets.RELEASE_TOKEN }}