Skip to content

Commit 7d3aab3

Browse files
committed
chore: add semantic release [skip ci]
1 parent 0ea2a92 commit 7d3aab3

File tree

3 files changed

+159
-0
lines changed

3 files changed

+159
-0
lines changed

.github/workflows/ci.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,3 +17,14 @@ jobs:
1717
bundler-cache: true
1818
ruby-version: ${{ matrix.ruby }}
1919
- run: bundle exec rake
20+
publish:
21+
name: Release
22+
runs-on: ubuntu-latest
23+
if: github.ref == 'refs/heads/master'
24+
needs: [test]
25+
steps:
26+
- name: Dispatch Release
27+
uses: benc-uk/workflow-dispatch@v1
28+
with:
29+
workflow: Generate New Release
30+
token: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/release.yml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
---
2+
name: Generate New Release
3+
4+
on:
5+
workflow_dispatch:
6+
7+
jobs:
8+
release:
9+
name: Release
10+
runs-on: ubuntu-latest
11+
steps:
12+
- name: Checkout
13+
uses: actions/checkout@v3
14+
with:
15+
submodules: true
16+
persist-credentials: false
17+
- name: Set up Ruby
18+
uses: ruby/setup-ruby@v1
19+
with:
20+
ruby-version: "3.1"
21+
- name: Build
22+
run: |
23+
gem install bundler
24+
git submodule update --init --recursive
25+
bundle install --jobs 4 --retry 3
26+
- name: Setup Node.js
27+
uses: actions/setup-node@v2
28+
with:
29+
node-version: 14
30+
- name: Install Dependencies
31+
run: yarn install --frozen-lockfile
32+
- name: Release
33+
env:
34+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
35+
GEM_HOST_API_KEY: ${{ secrets.GEM_HOST_API_KEY }}
36+
run: node_modules/.bin/semantic-release
37+

package.json

Lines changed: 111 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,111 @@
1+
{
2+
"name": "graphiti_spec_helpers",
3+
"version": "1.1.0",
4+
"repository": {
5+
"type": "git",
6+
"url": "git+https://github.com/graphiti-api/graphiti_spec_helpers.git"
7+
},
8+
"license": "MIT",
9+
"bugs": {
10+
"url": "https://github.com/graphiti-api/graphiti_spec_helpers/issues"
11+
},
12+
"homepage": "https://github.com/graphiti-api/graphiti_spec_helpers",
13+
"scripts": {
14+
"semantic-release": "semantic-release"
15+
},
16+
"devDependencies": {
17+
"semantic-release-rubygem": "^1.2.0",
18+
"semantic-release": "^19.0.3",
19+
"@semantic-release/changelog": "^6.0.1",
20+
"@semantic-release/git": "^10.0.1"
21+
},
22+
"release": {
23+
"branches": [
24+
"master",
25+
{
26+
"name": "beta",
27+
"prerelease": true
28+
},
29+
{
30+
"name": "alpha",
31+
"prerelease": true
32+
}
33+
],
34+
"plugins": [
35+
[
36+
"@semantic-release/commit-analyzer",
37+
{
38+
"releaseRules": [
39+
{
40+
"type": "*!",
41+
"release": "major"
42+
},
43+
{
44+
"type": "feat",
45+
"release": "minor"
46+
},
47+
{
48+
"type": "build",
49+
"release": "patch"
50+
},
51+
{
52+
"type": "ci",
53+
"release": "patch"
54+
},
55+
{
56+
"type": "chore",
57+
"release": "patch"
58+
},
59+
{
60+
"type": "docs",
61+
"release": "patch"
62+
},
63+
{
64+
"type": "refactor",
65+
"release": "patch"
66+
},
67+
{
68+
"type": "style",
69+
"release": "patch"
70+
},
71+
{
72+
"type": "test",
73+
"release": "patch"
74+
}
75+
],
76+
"parserOpts": {
77+
"noteKeywords": [
78+
"BREAKING CHANGE",
79+
"BREAKING CHANGES",
80+
"BREAKING",
81+
"BREAKING CHANGE!",
82+
"BREAKING CHANGES!",
83+
"BREAKING!"
84+
]
85+
}
86+
}
87+
],
88+
"@semantic-release/release-notes-generator",
89+
[
90+
"@semantic-release/changelog",
91+
{
92+
"changelogTitle": "graphiti changelog",
93+
"changelogFile": "CHANGELOG.md"
94+
}
95+
],
96+
"semantic-release-rubygem",
97+
"@semantic-release/github",
98+
[
99+
"@semantic-release/git",
100+
{
101+
"assets": [
102+
"CHANGELOG.md"
103+
],
104+
"message": "${nextRelease.version} CHANGELOG [skip ci]\n\n${nextRelease.notes}"
105+
}
106+
]
107+
],
108+
"debug": true,
109+
"dryRun": false
110+
}
111+
}

0 commit comments

Comments
 (0)