From 646d5e3f28c858a5e5291686fb95376b41ba44ca Mon Sep 17 00:00:00 2001 From: Matt McMahand Date: Tue, 21 Dec 2021 11:13:08 -0500 Subject: [PATCH] add support for publishing gems via github actions --- .github/workflows/main.yml | 4 ++-- .github/workflows/release.yml | 36 +++++++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 8fa7009..1f917ac 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,7 +1,7 @@ -name: Main +name: main on: [push] jobs: - Build-And-Run-Tests: + build-and-run-tests: runs-on: ubuntu-latest strategy: matrix: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..da93ddb --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,36 @@ +name: release +on: + push: + branches: [master] +jobs: + release: + runs-on: ubuntu-latest + env: + RUBY_VERSION: 3.0.3 + steps: + - uses: GoogleCloudPlatform/release-please-action@v2 + id: release + with: + release-type: ruby + package-name: impressionist + bump-minor-pre-major: true + version-file: "lib/impressionist/version.rb" + - uses: actions/checkout@v2 + if: ${{ steps.release.outputs.release_created }} + - uses: ruby/setup-ruby@v1 + with: + ruby-version: ${{ env.RUBY_VERSION }} + if: ${{ steps.release.outputs.release_created }} + - run: bundle + if: $${{ steps.release.outputs.release_created }} + - 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 build *.gemspec + gem push *.gem + env: + GEM_HOST_API_KEY: "${{secrets.RUBYGEMS_AUTH_TOKEN}}" + if: ${{ steps.release.outputs.release_created }}