publish.yml 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. name: publish
  2. on:
  3. workflow_dispatch:
  4. inputs:
  5. change_type:
  6. description: Change type
  7. type: choice
  8. options:
  9. - major
  10. - minor
  11. - patch
  12. default: patch
  13. jobs:
  14. publish:
  15. name: publish
  16. permissions:
  17. contents: write
  18. runs-on: ubuntu-latest
  19. steps:
  20. - run: |
  21. echo "Change type: $CHANGE_TYPE"
  22. env:
  23. CHANGE_TYPE: ${{ inputs.change_type }}
  24. - name: Checkout sources
  25. uses: actions/checkout@v4
  26. - name: Install Rust toolchain
  27. uses: dtolnay/rust-toolchain@stable
  28. with:
  29. toolchain: stable-gnu
  30. - name: Changing version in Cargo.toml
  31. run: |
  32. chmod +x ${GITHUB_WORKSPACE}/.github/change_version.sh
  33. bash ${GITHUB_WORKSPACE}/.github/change_version.sh
  34. - name: Pushing Cargo.toml changes to master
  35. run: |
  36. git config --local user.name 'Hovsep Papoyan'
  37. git config --local user.email 'papoyanhovsep93@gmail.com'
  38. git commit -am "Automated version change in Cargo.toml"
  39. git push origin master
  40. - run: cargo publish --no-verify --token ${CRATES_TOKEN}
  41. env:
  42. CRATES_TOKEN: ${{ secrets.CRATES_TOKEN }}