name: publish on: workflow_dispatch: inputs: change_type: description: Change type type: choice options: - major - minor - patch default: patch jobs: publish: name: publish permissions: contents: write runs-on: ubuntu-latest steps: - uses: actions/create-github-app-token@v1 id: app-token with: app-id: ${{ vars.REPO_FAIR_MATH_PUBLISHER_ID }} private-key: ${{ secrets.REPO_FAIR_MATH_PUBLISHER_PRIVATE_KEY }} - run: | echo "Change type: $CHANGE_TYPE" env: CHANGE_TYPE: ${{ inputs.change_type }} - name: Checkout sources uses: actions/checkout@v4 with: token: ${{ steps.app-token.outputs.token }} - name: Install Rust toolchain uses: dtolnay/rust-toolchain@stable with: toolchain: stable-gnu - name: Changing version in Cargo.toml run: | chmod +x ${GITHUB_WORKSPACE}/.github/change_version.sh bash ${GITHUB_WORKSPACE}/.github/change_version.sh - name: Pushing Cargo.toml changes to master run: | git config --local user.name 'github-actions' git config --local user.email 'github-actions@github.com' git commit -am "Automated version change in Cargo.toml" git push origin master - run: cargo publish --no-verify --dry-run --token ${REPO_CRATES_TOKEN} env: REPO_CRATES_TOKEN: ${{ secrets.REPO_CRATES_TOKEN }}