name: "publish-crates" on: push: branches: - "master" jobs: cargo-publish: name: "Publish crates" runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v3 - name: Setup rust toolchain uses: actions-rust-lang/setup-rust-toolchain@v1 - name: Install cargo-workspaces run: cargo install cargo-workspaces - name: Login to crates.io run: cargo login ${{ secrets.CRATES_IO_TOKEN }} - name: Publish to crates.io run: cargo ws publish --no-git-commit --from-git --skip-published --yes