@tinymce/beehive-flow
Version:
A CLI tool implementing the beehive flow git branching process
40 lines • 2 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.advanceCi = exports.advance = void 0;
const tslib_1 = require("tslib");
const simple_git_1 = require("simple-git");
const Git = tslib_1.__importStar(require("../utils/Git"));
const BranchLogic_1 = require("../core/BranchLogic");
const PromiseUtils = tslib_1.__importStar(require("../utils/PromiseUtils"));
const AdvanceVersion = tslib_1.__importStar(require("../core/AdvanceVersion"));
const Messages_1 = require("../core/Messages");
const go = async (version, module, git, args, dir) => {
await AdvanceVersion.advancePatch(version, module.packageJson, module.packageJsonFile, git);
await Git.pushUnlessDryRun(dir, git, args.dryRun);
};
const advance = async (args) => {
(0, Messages_1.printHeaderMessage)(args);
const gitUrl = await Git.resolveGitUrl(args.gitUrl, args.workingDir);
const { dir, git } = await Git.cloneInTempFolder(gitUrl, args.temp);
await Git.checkout(git, args.branchName);
const branchDetails = await (0, BranchLogic_1.getBranchDetails)(dir);
if (branchDetails.branchState !== "releaseReady" /* BranchState.ReleaseReady */) {
return PromiseUtils.fail('Branch is not in release ready state - can\'t advance. Check that the version is x.y.z with no suffix.');
}
await go(branchDetails.version, branchDetails.rootModule, git, args, dir);
};
exports.advance = advance;
const advanceCi = async (args) => {
(0, Messages_1.printHeaderMessage)(args);
const dir = args.workingDir;
const branchDetails = await (0, BranchLogic_1.getBranchDetails)(dir);
if (branchDetails.branchState !== "releaseReady" /* BranchState.ReleaseReady */) {
console.log('Not in release ready state - not advancing version.');
}
else {
const git = (0, simple_git_1.gitP)(dir);
await go(branchDetails.version, branchDetails.rootModule, git, args, dir);
}
};
exports.advanceCi = advanceCi;
//# sourceMappingURL=Advance.js.map