Skip to content

Commit 553ffdf

Browse files
committed
release: metanorma/ci reusable workflow (workflow_dispatch + repository_dispatch)
1 parent 898124d commit 553ffdf

1 file changed

Lines changed: 20 additions & 47 deletions

File tree

.github/workflows/release.yml

Lines changed: 20 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -1,53 +1,26 @@
11
name: release
22

3+
permissions:
4+
contents: write
5+
packages: write
6+
id-token: write
7+
38
on:
4-
push:
5-
tags:
6-
- 'v*'
9+
workflow_dispatch:
10+
inputs:
11+
next_version:
12+
description: |
13+
Next release version. Possible values: x.y.z, major, minor, patch or pre|rc|etc
14+
required: true
15+
default: "skip"
16+
repository_dispatch:
17+
types: [do-release]
718

819
jobs:
920
release:
10-
runs-on: ubuntu-latest
11-
steps:
12-
- name: Checkout monorepo
13-
uses: actions/checkout@v7
14-
with:
15-
repository: interscript/interscript
16-
17-
- name: Bootstrap packages
18-
run: ruby bootstrap.rb
19-
20-
- uses: ruby/setup-ruby@v1
21-
with:
22-
ruby-version: '3.3'
23-
bundler-cache: true
24-
working-directory: ruby
25-
26-
- uses: actions/setup-node@v7
27-
with:
28-
node-version: '22'
29-
cache: npm
30-
cache-dependency-path: js/package-lock.json
31-
32-
- name: Install gems
33-
working-directory: ruby
34-
run: bundle install --jobs 4 --retry 3 --with jsexec --without secryst
35-
36-
- name: Test Ruby package
37-
working-directory: ruby
38-
run: bundle exec rake
39-
40-
- name: Test JS package
41-
working-directory: js
42-
run: npm install && npm run prepareMaps && npm test
43-
44-
- name: Publish to rubygems.org
45-
env:
46-
RUBYGEMS_API_KEY: ${{ secrets.INTERSCRIPT_RUBYGEMS_API_KEY }}
47-
working-directory: ruby
48-
run: |
49-
mkdir -p ~/.gem
50-
printf -- "---\n:rubygems_api_key: %s\n" "$RUBYGEMS_API_KEY" > ~/.gem/credentials
51-
chmod 0600 ~/.gem/credentials
52-
gem install gem-release
53-
gem release
21+
uses: metanorma/ci/.github/workflows/rubygems-release.yml@main
22+
with:
23+
next_version: ${{ github.event.inputs.next_version }}
24+
secrets:
25+
rubygems-api-key: ${{ secrets.INTERSCRIPT_RUBYGEMS_API_KEY }}
26+
pat_token: ${{ secrets.GITHUB_TOKEN }}

0 commit comments

Comments
 (0)