-
Notifications
You must be signed in to change notification settings - Fork 0
/
.releaserc.js
89 lines (89 loc) · 4.04 KB
/
.releaserc.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
module.exports = {
branches: ['main', {name: 'beta', prerelease: true}],
plugins: [
[
'@semantic-release/commit-analyzer', {
preset: 'angular',
releaseRules: [
// Example: `type(scope): subject [force release]`
{ subject: '*\\[force release\\]*', release: 'patch' },
],
},
],
'@semantic-release/release-notes-generator',
'@semantic-release/changelog',
[
'@semantic-release/exec',
{
prepareCmd:
'sed -i \'s/VERSION = ".*"/VERSION = "${nextRelease.version}"/g\' lib/agent_ruby/version.rb; ' +
'sed -i \'s/"version": ".*"/"version": "${nextRelease.version}"/g\' package.json; ' +
'sed -i \'s/VERSION = ".*"/VERSION = "${nextRelease.version}"/g\' packages/forest_admin_agent/lib/forest_admin_agent/version.rb; ' +
'sed -i \'s/LIANA_VERSION = ".*"/LIANA_VERSION = "${nextRelease.version}"/g\' packages/forest_admin_agent/lib/forest_admin_agent/utils/schema/schema_emitter.rb; ' +
'sed -i \'s/VERSION = ".*"/VERSION = "${nextRelease.version}"/g\' packages/forest_admin_datasource_active_record/lib/forest_admin_datasource_active_record/version.rb; '+
'sed -i \'s/VERSION = ".*"/VERSION = "${nextRelease.version}"/g\' packages/forest_admin_datasource_toolkit/lib/forest_admin_datasource_toolkit/version.rb; '+
'sed -i \'s/VERSION = ".*"/VERSION = "${nextRelease.version}"/g\' packages/forest_admin_datasource_customizer/lib/forest_admin_datasource_customizer/version.rb; '+
'sed -i \'s/VERSION = ".*"/VERSION = "${nextRelease.version}"/g\' packages/forest_admin_rails/lib/forest_admin_rails/version.rb; ',
successCmd:
'( cd packages/forest_admin_agent && gem build && gem push forest_admin_agent-*.gem );' +
'( cd packages/forest_admin_datasource_active_record && gem build && gem push forest_admin_datasource_active_record-*.gem );' +
'( cd packages/forest_admin_datasource_toolkit && gem build && gem push forest_admin_datasource_toolkit-*.gem );' +
'( cd packages/forest_admin_datasource_customizer && gem build && gem push forest_admin_datasource_customizer-*.gem );' +
'( cd packages/forest_admin_rails && gem build && gem push forest_admin_rails-*.gem );' ,
},
],
[
'@semantic-release/git',
{
assets: [
'CHANGELOG.md',
'lib/agent_ruby/version.rb',
'packages/forest_admin_agent/lib/forest_admin_agent/version.rb',
'packages/forest_admin_agent/lib/forest_admin_agent/utils/schema/schema_emitter.rb',
'packages/forest_admin_datasource_active_record/lib/forest_admin_datasource_active_record/version.rb',
'packages/forest_admin_datasource_toolkit/lib/forest_admin_datasource_toolkit/version.rb',
'packages/forest_admin_datasource_customizer/lib/forest_admin_datasource_customizer/version.rb',
'packages/forest_admin_rails/lib/forest_admin_rails/version.rb',
'package.json'
],
},
],
'@semantic-release/github',
[
'semantic-release-slack-bot',
{
markdownReleaseNotes: true,
notifyOnSuccess: true,
notifyOnFail: false,
onSuccessTemplate: {
text: "📦 $package_name@$npm_package_version has been released!",
blocks: [{
type: 'section',
text: {
type: 'mrkdwn',
text: '*New `$package_name` package released!*'
}
}, {
type: 'context',
elements: [{
type: 'mrkdwn',
text: "📦 *Version:* <$repo_url/releases/tag/v$npm_package_version|$npm_package_version>"
}]
}, {
type: 'divider',
}],
attachments: [{
blocks: [{
type: 'section',
text: {
type: 'mrkdwn',
text: '*Changes* of version $release_notes',
},
}],
}],
},
packageName: 'agent_ruby',
}
],
],
}