Skip to content

Commit 50928bf

Browse files
authored
Add workflow to publish gem
1 parent 2c6d55b commit 50928bf

File tree

1 file changed

+46
-0
lines changed

1 file changed

+46
-0
lines changed

.github/workflows/gem-push.yml

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
name: Ruby Gem
2+
3+
on:
4+
push:
5+
tags: [ 'v*.*.*' ]
6+
release:
7+
types: ['published']
8+
workflow_dispatch: {}
9+
10+
jobs:
11+
build:
12+
name: Build + Publish
13+
runs-on: ubuntu-latest
14+
permissions:
15+
contents: read
16+
packages: write
17+
18+
steps:
19+
- uses: actions/checkout@v3
20+
- name: Set up Ruby 2.7
21+
uses: actions/setup-ruby@v1
22+
with:
23+
ruby-version: 2.7.x
24+
25+
- name: Publish to GPR
26+
run: |
27+
mkdir -p $HOME/.gem
28+
touch $HOME/.gem/credentials
29+
chmod 0600 $HOME/.gem/credentials
30+
printf -- "---\n:github: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
31+
gem build *.gemspec
32+
gem push --KEY github --host https://rubygems.pkg.github.com/${OWNER} *.gem
33+
env:
34+
GEM_HOST_API_KEY: "Bearer ${{secrets.GITHUB_TOKEN}}"
35+
OWNER: ${{ github.repository_owner }}
36+
37+
- name: Publish to RubyGems
38+
run: |
39+
mkdir -p $HOME/.gem
40+
touch $HOME/.gem/credentials
41+
chmod 0600 $HOME/.gem/credentials
42+
printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
43+
gem build *.gemspec
44+
gem push *.gem
45+
env:
46+
GEM_HOST_API_KEY: "${{secrets.RUBYGEMS_AUTH_TOKEN}}"

0 commit comments

Comments
 (0)