mirror of
https://github.com/cycjimmy/semantic-release-action.git
synced 2026-04-07 16:09:24 +00:00
feat(branches): support branches of semantic-release v16+
support branches of semantic-release v16+ #24 #25
This commit is contained in:
parent
c7a37752d9
commit
706c0ef960
8 changed files with 97 additions and 26 deletions
|
|
@ -1,29 +1,44 @@
|
|||
const core = require('@actions/core');
|
||||
const stringToJson = require('@cycjimmy/awesome-js-funcs/typeConversion/stringToJson').default;
|
||||
const inputs = require('./inputs.json');
|
||||
|
||||
/**
|
||||
* Handle Branch Option
|
||||
* Handle Branches Option
|
||||
* @returns {{}|{branch: string}}
|
||||
*/
|
||||
exports.handleBranchOption = () => {
|
||||
const branchOption = {};
|
||||
exports.handleBranchesOption = () => {
|
||||
const branchesOption = {};
|
||||
const branches = core.getInput(inputs.branches);
|
||||
const branch = core.getInput(inputs.branch);
|
||||
|
||||
if (!branch) {
|
||||
return branchOption;
|
||||
}
|
||||
core.debug(`branches input: ${branches}`);
|
||||
core.debug(`branch input: ${branch}`);
|
||||
|
||||
const semanticVersion = require('semantic-release/package.json').version;
|
||||
const semanticMajorVersion = Number(semanticVersion.replace(/\..+/g, ''));
|
||||
core.debug(`semanticMajorVersion: ${semanticMajorVersion}`);
|
||||
|
||||
// older than v16
|
||||
if (semanticMajorVersion < 16) {
|
||||
branchOption.branch = branch;
|
||||
} else {
|
||||
branchOption.branches = [branch];
|
||||
if (!branch) {
|
||||
return branchesOption;
|
||||
}
|
||||
|
||||
branchesOption.branch = branch;
|
||||
return branchesOption;
|
||||
}
|
||||
|
||||
return branchOption;
|
||||
// above v16
|
||||
const strNeedConvertToJson = branches || branch || '';
|
||||
|
||||
if (!strNeedConvertToJson) {
|
||||
return branchesOption;
|
||||
}
|
||||
|
||||
const jsonOrStr = stringToJson('' + strNeedConvertToJson);
|
||||
core.debug(`Converted branches attribute: ${JSON.stringify(jsonOrStr)}`);
|
||||
branchesOption.branches = jsonOrStr;
|
||||
return branchesOption;
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
const core = require('@actions/core');
|
||||
const {handleBranchOption, handleDryRunOption} = require('./handleOptions');
|
||||
const {handleBranchesOption, handleDryRunOption} = require('./handleOptions');
|
||||
const setUpJob = require('./setUpJob.task');
|
||||
const installSpecifyingVersionSemantic = require('./installSpecifyingVersionSemantic.task');
|
||||
const preInstallPlugins = require('./preInstallPlugins.task');
|
||||
|
|
@ -17,7 +17,7 @@ const release = async () => {
|
|||
|
||||
const semanticRelease = require('semantic-release');
|
||||
const result = await semanticRelease({
|
||||
...(handleBranchOption()),
|
||||
...(handleBranchesOption()),
|
||||
...(handleDryRunOption()),
|
||||
});
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
{
|
||||
"branch": "branch",
|
||||
"semantic_version": "semantic_version",
|
||||
"branches": "branches",
|
||||
"branch": "branch",
|
||||
"extra_plugins": "extra_plugins",
|
||||
"dry_run": "dry_run"
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue