name: Release on: workflow_dispatch jobs: release: runs-on: ubuntu-latest if: github.repository == 'puppetlabs/beaker-vmpooler' steps: - uses: actions/checkout@v3 - name: Get Version id: gv run: | version=$(grep VERSION lib/beaker-vmpooler/version.rb |rev |cut -d "'" -f2 |rev) echo "version=$version" >> $GITHUB_OUTPUT echo "Found version $version from lib/beaker-vmpooler/version.rb" - name: Tag Release uses: ncipollo/release-action@v1 with: tag: ${{ steps.gv.outputs.version }} token: ${{ secrets.GITHUB_TOKEN }} draft: false prerelease: false generateReleaseNotes: true - name: Install Ruby 2.7 uses: ruby/setup-ruby@v1 with: ruby-version: '2.7' - name: Build gem run: gem build *.gemspec - name: Publish gem run: | mkdir -p $HOME/.gem touch $HOME/.gem/credentials chmod 0600 $HOME/.gem/credentials printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials gem push *.gem env: GEM_HOST_API_KEY: '${{ secrets.RUBYGEMS_AUTH_TOKEN }}'