.github/workflows/publish_gem.yml in govuk_markdown-1.0.0 vs .github/workflows/publish_gem.yml in govuk_markdown-2.0.0b1
- old
+ new
@@ -1,28 +1,30 @@
+name: Publish gem
on:
- - push
-
+ workflow_dispatch:
+ inputs:
+ tag:
+ description: Tag
+ required: true
jobs:
build:
+ name: Publish to RubyGems.org
runs-on: ubuntu-latest
- if: ${{ github.ref == 'refs/heads/main' }}
steps:
- uses: actions/checkout@v2
- - uses: ruby/setup-ruby@v1
- - name: Install dependencies
- run: gem update --system
+ with:
+ ref: ${{ github.event.inputs.tag }}
- - env:
- GEM_HOST_API_KEY: ${{ secrets.RUBYGEMS_API_KEY }}
- name: Push a new gem version to Rubygems
+ - name: Set up Ruby
+ uses: ruby/setup-ruby@v1
+ with:
+ ruby-version: '2.7.6'
+
+ - name: Install dependencies
run: |
- CURRENT_VERSION=$(rake gem_version)
- PUBLISHED_GEM_VERSION=$(gem list --exact --remote govuk_markdown)
+ gem install bundler
+ bundle install --jobs 4 --retry 3
- if [ "${PUBLISHED_GEM_VERSION}" != "govuk_markdown (${CURRENT_VERSION})" ]; then
- gem build govuk_markdown.gemspec
- gem push "govuk_markdown-${CURRENT_VERSION}.gem"
- fi
- if ! git ls-remote --tags --exit-code origin v${CURRENT_VERSION}; then
- git tag v${CURRENT_VERSION}
- git push --tags
- fi
+ - name: Publish gem
+ uses: dawidd6/action-publish-gem@v1
+ with:
+ api_key: ${{ secrets.RUBYGEMS_API_KEY }}