Skip to content

Commit 4c5d8c5

Browse files
committed
check in prod dependencies
1 parent f5c2b14 commit 4c5d8c5

File tree

3,009 files changed

+386176
-3
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

3,009 files changed

+386176
-3
lines changed

.gitignore

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
__tests__/runner/*
22

33
# comment out in distribution branches
4-
node_modules/
5-
lib/
4+
# node_modules/
5+
# lib/
66

77
# Rest pulled from https://github.com/github/gitignore/blob/master/Node.gitignore
88
# Logs

lib/action.js

Lines changed: 189 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,189 @@
1+
"use strict";
2+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3+
if (k2 === undefined) k2 = k;
4+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5+
}) : (function(o, m, k, k2) {
6+
if (k2 === undefined) k2 = k;
7+
o[k2] = m[k];
8+
}));
9+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10+
Object.defineProperty(o, "default", { enumerable: true, value: v });
11+
}) : function(o, v) {
12+
o["default"] = v;
13+
});
14+
var __importStar = (this && this.__importStar) || function (mod) {
15+
if (mod && mod.__esModule) return mod;
16+
var result = {};
17+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18+
__setModuleDefault(result, mod);
19+
return result;
20+
};
21+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
22+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
23+
return new (P || (P = Promise))(function (resolve, reject) {
24+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
25+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
26+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
27+
step((generator = generator.apply(thisArg, _arguments || [])).next());
28+
});
29+
};
30+
var __rest = (this && this.__rest) || function (s, e) {
31+
var t = {};
32+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
33+
t[p] = s[p];
34+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
35+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
36+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
37+
t[p[i]] = s[p[i]];
38+
}
39+
return t;
40+
};
41+
Object.defineProperty(exports, "__esModule", { value: true });
42+
const core = __importStar(require("@actions/core"));
43+
const semver_1 = require("semver");
44+
const commit_analyzer_1 = require("@semantic-release/commit-analyzer");
45+
const release_notes_generator_1 = require("@semantic-release/release-notes-generator");
46+
const utils_1 = require("./utils");
47+
const github_1 = require("./github");
48+
function main() {
49+
return __awaiter(this, void 0, void 0, function* () {
50+
const defaultBump = core.getInput('default_bump');
51+
const tagPrefix = core.getInput('tag_prefix');
52+
const customTag = core.getInput('custom_tag');
53+
const releaseBranches = core.getInput('release_branches');
54+
const preReleaseBranches = core.getInput('pre_release_branches');
55+
const appendToPreReleaseTag = core.getInput('append_to_pre_release_tag');
56+
const createAnnotatedTag = !!core.getInput('create_annotated_tag');
57+
const dryRun = core.getInput('dry_run');
58+
const customReleaseRules = core.getInput('custom_release_rules');
59+
const shouldFetchAllTags = core.getInput('fetch_all_tags');
60+
let mappedReleaseRules;
61+
if (customReleaseRules) {
62+
mappedReleaseRules = utils_1.mapCustomReleaseRules(customReleaseRules);
63+
}
64+
const { GITHUB_REF, GITHUB_SHA } = process.env;
65+
if (!GITHUB_REF) {
66+
core.setFailed('Missing GITHUB_REF.');
67+
return;
68+
}
69+
if (!GITHUB_SHA) {
70+
core.setFailed('Missing GITHUB_SHA.');
71+
return;
72+
}
73+
const currentBranch = utils_1.getBranchFromRef(GITHUB_REF);
74+
const isReleaseBranch = releaseBranches
75+
.split(',')
76+
.some((branch) => currentBranch.match(branch));
77+
const isPreReleaseBranch = preReleaseBranches
78+
.split(',')
79+
.some((branch) => currentBranch.match(branch));
80+
const isPullRequest = utils_1.isPr(GITHUB_REF);
81+
const isPrerelease = !isReleaseBranch && !isPullRequest && isPreReleaseBranch;
82+
const identifier = appendToPreReleaseTag
83+
? appendToPreReleaseTag
84+
: currentBranch;
85+
const prefixRegex = new RegExp(`^${tagPrefix}`);
86+
const validTags = yield utils_1.getValidTags(prefixRegex, /true/i.test(shouldFetchAllTags));
87+
const latestTag = utils_1.getLatestTag(validTags, prefixRegex, tagPrefix);
88+
const latestPrereleaseTag = utils_1.getLatestPrereleaseTag(validTags, identifier, prefixRegex);
89+
let commits;
90+
let newVersion;
91+
if (customTag) {
92+
commits = yield utils_1.getCommits(latestTag.commit.sha, GITHUB_SHA);
93+
core.setOutput('release_type', 'custom');
94+
newVersion = customTag;
95+
}
96+
else {
97+
let previousTag;
98+
let previousVersion;
99+
if (!latestPrereleaseTag) {
100+
previousTag = latestTag;
101+
}
102+
else {
103+
previousTag = semver_1.gte(latestTag.name.replace(prefixRegex, ''), latestPrereleaseTag.name.replace(prefixRegex, ''))
104+
? latestTag
105+
: latestPrereleaseTag;
106+
}
107+
if (!previousTag) {
108+
core.setFailed('Could not find previous tag.');
109+
return;
110+
}
111+
previousVersion = semver_1.parse(previousTag.name.replace(prefixRegex, ''));
112+
if (!previousVersion) {
113+
core.setFailed('Could not parse previous tag.');
114+
return;
115+
}
116+
core.info(`Previous tag was ${previousTag.name}, previous version was ${previousVersion.version}.`);
117+
core.setOutput('previous_version', previousVersion.version);
118+
core.setOutput('previous_tag', previousTag.name);
119+
commits = yield utils_1.getCommits(previousTag.commit.sha, GITHUB_SHA);
120+
let bump = yield commit_analyzer_1.analyzeCommits({
121+
releaseRules: mappedReleaseRules
122+
? // analyzeCommits doesn't appreciate rules with a section /shrug
123+
mappedReleaseRules.map((_a) => {
124+
var { section } = _a, rest = __rest(_a, ["section"]);
125+
return (Object.assign({}, rest));
126+
})
127+
: undefined,
128+
}, { commits, logger: { log: console.info.bind(console) } });
129+
if (!bump && defaultBump === 'false') {
130+
core.debug('No commit specifies the version bump. Skipping the tag creation.');
131+
return;
132+
}
133+
// If somebody uses custom release rules on a prerelease branch they might create a 'preprepatch' bump.
134+
const preReg = /^pre/;
135+
if (isPrerelease && preReg.test(bump)) {
136+
bump = bump.replace(preReg, '');
137+
}
138+
const releaseType = isPrerelease
139+
? `pre${bump || defaultBump}`
140+
: bump || defaultBump;
141+
core.setOutput('release_type', releaseType);
142+
const incrementedVersion = semver_1.inc(previousVersion, releaseType, identifier);
143+
if (!incrementedVersion) {
144+
core.setFailed('Could not increment version.');
145+
return;
146+
}
147+
if (!semver_1.valid(incrementedVersion)) {
148+
core.setFailed(`${incrementedVersion} is not a valid semver.`);
149+
return;
150+
}
151+
newVersion = incrementedVersion;
152+
}
153+
core.info(`New version is ${newVersion}.`);
154+
core.setOutput('new_version', newVersion);
155+
const newTag = `${tagPrefix}${newVersion}`;
156+
core.info(`New tag after applying prefix is ${newTag}.`);
157+
core.setOutput('new_tag', newTag);
158+
const changelog = yield release_notes_generator_1.generateNotes({
159+
preset: 'conventionalcommits',
160+
presetConfig: {
161+
types: utils_1.mergeWithDefaultChangelogRules(mappedReleaseRules),
162+
},
163+
}, {
164+
commits,
165+
logger: { log: console.info.bind(console) },
166+
options: {
167+
repositoryUrl: `https://github.com/${process.env.GITHUB_REPOSITORY}`,
168+
},
169+
lastRelease: { gitTag: latestTag.name },
170+
nextRelease: { gitTag: newTag, version: newVersion },
171+
});
172+
core.info(`Changelog is ${changelog}.`);
173+
core.setOutput('changelog', changelog);
174+
if (!isReleaseBranch && !isPreReleaseBranch) {
175+
core.info('This branch is neither a release nor a pre-release branch. Skipping the tag creation.');
176+
return;
177+
}
178+
if (validTags.map((tag) => tag.name).includes(newTag)) {
179+
core.info('This tag already exists. Skipping the tag creation.');
180+
return;
181+
}
182+
if (/true/i.test(dryRun)) {
183+
core.info('Dry run: not performing tag action.');
184+
return;
185+
}
186+
yield github_1.createTag(newTag, createAnnotatedTag, GITHUB_SHA);
187+
});
188+
}
189+
exports.default = main;

lib/defaults.js

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
"use strict";
2+
Object.defineProperty(exports, "__esModule", { value: true });
3+
exports.defaultChangelogRules = void 0;
4+
/**
5+
* Default sections & changelog rules mentioned in `conventional-changelog-angular` & `conventional-changelog-conventionalcommits`.
6+
* References:
7+
* https://github.com/conventional-changelog/conventional-changelog/blob/master/packages/conventional-changelog-angular/writer-opts.js
8+
* https://github.com/conventional-changelog/conventional-changelog/blob/master/packages/conventional-changelog-conventionalcommits/writer-opts.js
9+
*/
10+
exports.defaultChangelogRules = Object.freeze({
11+
feat: { type: 'feat', section: 'Features' },
12+
fix: { type: 'fix', section: 'Bug Fixes' },
13+
perf: { type: 'perf', section: 'Performance Improvements' },
14+
revert: { type: 'revert', section: 'Reverts' },
15+
docs: { type: 'docs', section: 'Documentation' },
16+
style: { type: 'style', section: 'Styles' },
17+
refactor: { type: 'refactor', section: 'Code Refactoring' },
18+
test: { type: 'test', section: 'Tests' },
19+
build: { type: 'build', section: 'Build Systems' },
20+
ci: { type: 'ci', section: 'Continuous Integration' },
21+
});

lib/github.js

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
"use strict";
2+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3+
if (k2 === undefined) k2 = k;
4+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5+
}) : (function(o, m, k, k2) {
6+
if (k2 === undefined) k2 = k;
7+
o[k2] = m[k];
8+
}));
9+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10+
Object.defineProperty(o, "default", { enumerable: true, value: v });
11+
}) : function(o, v) {
12+
o["default"] = v;
13+
});
14+
var __importStar = (this && this.__importStar) || function (mod) {
15+
if (mod && mod.__esModule) return mod;
16+
var result = {};
17+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18+
__setModuleDefault(result, mod);
19+
return result;
20+
};
21+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
22+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
23+
return new (P || (P = Promise))(function (resolve, reject) {
24+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
25+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
26+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
27+
step((generator = generator.apply(thisArg, _arguments || [])).next());
28+
});
29+
};
30+
Object.defineProperty(exports, "__esModule", { value: true });
31+
exports.createTag = exports.compareCommits = exports.listTags = exports.getOctokitSingleton = void 0;
32+
const github_1 = require("@actions/github");
33+
const core = __importStar(require("@actions/core"));
34+
let octokitSingleton;
35+
function getOctokitSingleton() {
36+
if (octokitSingleton) {
37+
return octokitSingleton;
38+
}
39+
const githubToken = core.getInput('github_token');
40+
octokitSingleton = github_1.getOctokit(githubToken);
41+
return octokitSingleton;
42+
}
43+
exports.getOctokitSingleton = getOctokitSingleton;
44+
/**
45+
* Fetch all tags for a given repository recursively
46+
*/
47+
function listTags(shouldFetchAllTags = false, fetchedTags = [], page = 1) {
48+
return __awaiter(this, void 0, void 0, function* () {
49+
const octokit = getOctokitSingleton();
50+
const tags = yield octokit.repos.listTags(Object.assign(Object.assign({}, github_1.context.repo), { per_page: 100, page }));
51+
if (tags.data.length < 100 || shouldFetchAllTags === false) {
52+
return [...fetchedTags, ...tags.data];
53+
}
54+
return listTags(shouldFetchAllTags, [...fetchedTags, ...tags.data], page + 1);
55+
});
56+
}
57+
exports.listTags = listTags;
58+
/**
59+
* Compare `headRef` to `baseRef` (i.e. baseRef...headRef)
60+
* @param baseRef - old commit
61+
* @param headRef - new commit
62+
*/
63+
function compareCommits(baseRef, headRef) {
64+
return __awaiter(this, void 0, void 0, function* () {
65+
const octokit = getOctokitSingleton();
66+
core.debug(`Comparing commits (${baseRef}...${headRef})`);
67+
const commits = yield octokit.repos.compareCommits(Object.assign(Object.assign({}, github_1.context.repo), { base: baseRef, head: headRef }));
68+
return commits.data.commits;
69+
});
70+
}
71+
exports.compareCommits = compareCommits;
72+
function createTag(newTag, createAnnotatedTag, GITHUB_SHA) {
73+
return __awaiter(this, void 0, void 0, function* () {
74+
const octokit = getOctokitSingleton();
75+
let annotatedTag = undefined;
76+
if (createAnnotatedTag) {
77+
core.debug(`Creating annotated tag.`);
78+
annotatedTag = yield octokit.git.createTag(Object.assign(Object.assign({}, github_1.context.repo), { tag: newTag, message: newTag, object: GITHUB_SHA, type: 'commit' }));
79+
}
80+
core.debug(`Pushing new tag to the repo.`);
81+
yield octokit.git.createRef(Object.assign(Object.assign({}, github_1.context.repo), { ref: `refs/tags/${newTag}`, sha: annotatedTag ? annotatedTag.data.sha : GITHUB_SHA }));
82+
});
83+
}
84+
exports.createTag = createTag;

lib/main.js

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
"use strict";
2+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3+
if (k2 === undefined) k2 = k;
4+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5+
}) : (function(o, m, k, k2) {
6+
if (k2 === undefined) k2 = k;
7+
o[k2] = m[k];
8+
}));
9+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10+
Object.defineProperty(o, "default", { enumerable: true, value: v });
11+
}) : function(o, v) {
12+
o["default"] = v;
13+
});
14+
var __importStar = (this && this.__importStar) || function (mod) {
15+
if (mod && mod.__esModule) return mod;
16+
var result = {};
17+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18+
__setModuleDefault(result, mod);
19+
return result;
20+
};
21+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
22+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
23+
return new (P || (P = Promise))(function (resolve, reject) {
24+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
25+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
26+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
27+
step((generator = generator.apply(thisArg, _arguments || [])).next());
28+
});
29+
};
30+
var __importDefault = (this && this.__importDefault) || function (mod) {
31+
return (mod && mod.__esModule) ? mod : { "default": mod };
32+
};
33+
Object.defineProperty(exports, "__esModule", { value: true });
34+
const core = __importStar(require("@actions/core"));
35+
const action_1 = __importDefault(require("./action"));
36+
function run() {
37+
return __awaiter(this, void 0, void 0, function* () {
38+
try {
39+
yield action_1.default();
40+
}
41+
catch (error) {
42+
core.setFailed(error.message);
43+
}
44+
});
45+
}
46+
run();

lib/ts.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
"use strict";
2+
Object.defineProperty(exports, "__esModule", { value: true });

0 commit comments

Comments
 (0)