summaryrefslogtreecommitdiff
path: root/.github/workflows/cargo_publish.yml
blob: 6da233cb955d07a15497af9394166e7f54f66c0d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
name: cargo_publish

on: workflow_dispatch

jobs:
  build:
    name: cargo publish
    runs-on: ubuntu-20.04-xl
    timeout-minutes: 90

    env:
      CARGO_TERM_COLOR: always
      RUST_BACKTRACE: full
      RUSTC_FORCE_INCREMENTAL: 1

    steps:
      - name: Configure git
        run: |
          git config --global core.symlinks true
          git config --global fetch.parallel 32

      - name: Clone repository
        uses: actions/checkout@v2
        with:
          token: ${{ secrets.DENOBOT_PAT }}
          submodules: recursive

      - uses: dtolnay/rust-toolchain@stable

      - name: Install deno
        uses: denoland/setup-deno@v1
        with:
          deno-version: v1.19.3

      - name: Publish
        env:
          CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
        run: ./tools/release/03_publish_crates.ts --real

      - name: Create release tag and check forward commit to main
        env:
          # the default secrets.GITHUB_TOKEN won't trigger a workflow run
          # when tagging, but it will if we provide a custom PAT
          GITHUB_TOKEN: ${{ secrets.DENOBOT_PAT }}
          GH_WORKFLOW_ACTOR: ${{ github.actor }}
        run: |
          git config user.email "propelml@gmail.com"
          git config user.name "denobot"
          ./tools/release/04_post_publish.ts