-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.releaserc.mjs
More file actions
69 lines (65 loc) · 1.49 KB
/
.releaserc.mjs
File metadata and controls
69 lines (65 loc) · 1.49 KB
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
// Get the current branch from environment or git
const getCurrentBranch = () => {
// Check if we're in a CI environment
if (process.env.CI && process.env.GITHUB_REF) {
return process.env.GITHUB_REF.replace("refs/heads/", "");
}
// For local development, you can set BRANCH env var
if (process.env.BRANCH) {
return process.env.BRANCH;
}
// Default to main if we can't determine
return "main";
};
const currentBranch = getCurrentBranch();
const isMainBranch = currentBranch === "main";
export default {
branches: [
"main",
{
name: "dev",
prerelease: true,
},
],
plugins: [
[
"@semantic-release/commit-analyzer",
{
preset: "angular",
releaseRules: [
{
type: "refactor",
release: "patch",
},
],
},
],
"@semantic-release/release-notes-generator",
[
"@semantic-release/changelog",
{
changelogFile: isMainBranch ? "CHANGELOG.md" : "CHANGELOG-DEV.md",
},
],
[
"@semantic-release/npm",
{
npmPublish: true,
tag: isMainBranch ? "latest" : currentBranch,
provenance: true,
},
],
[
"@semantic-release/git",
{
assets: [
"package.json",
isMainBranch ? "CHANGELOG.md" : "CHANGELOG-DEV.md",
],
message:
"chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}",
},
],
"@semantic-release/github",
],
};