mirror of
https://github.com/scm-manager/scm-manager.git
synced 2025-11-07 05:55:44 +01:00
added publish command to ui-scripts
This commit is contained in:
26
scm-ui/ui-scripts/src/commands/publish.js
Normal file
26
scm-ui/ui-scripts/src/commands/publish.js
Normal file
@@ -0,0 +1,26 @@
|
||||
const lerna = require("../lerna");
|
||||
const versions = require("../versions");
|
||||
|
||||
const args = process.argv.slice(2);
|
||||
|
||||
if (args.length < 1) {
|
||||
console.log("usage ui-scripts publish version");
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
const version = args[0];
|
||||
const index = version.indexOf("-SNAPSHOT");
|
||||
if (index > 0) {
|
||||
const snapshotVersion = version.substring(0, index) + "-" + versions.createSnapshotVersion();
|
||||
console.log("publish snapshot release " + snapshotVersion);
|
||||
lerna.version(snapshotVersion);
|
||||
lerna.publish();
|
||||
lerna.version(version);
|
||||
} else {
|
||||
// ?? not sure
|
||||
lerna.publish();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
33
scm-ui/ui-scripts/src/lerna.js
Normal file
33
scm-ui/ui-scripts/src/lerna.js
Normal file
@@ -0,0 +1,33 @@
|
||||
const { spawnSync } = require("child_process");
|
||||
|
||||
const yarn = args => {
|
||||
const result = spawnSync("yarn", args, { stdio: "inherit" });
|
||||
if (result.error) {
|
||||
console.log("could not start yarn command:", result.error);
|
||||
process.exit(2);
|
||||
} else if (result.status !== 0) {
|
||||
console.log("yarn process ends with status code:", result.status);
|
||||
process.exit(3);
|
||||
}
|
||||
};
|
||||
|
||||
const version = version => {
|
||||
yarn([
|
||||
"run",
|
||||
"lerna",
|
||||
"--no-git-tag-version",
|
||||
"--no-push",
|
||||
"version",
|
||||
"--yes",
|
||||
version
|
||||
]);
|
||||
};
|
||||
|
||||
const publish = () => {
|
||||
yarn(["run", "lerna", "publish", "from-package", "--yes"]);
|
||||
};
|
||||
|
||||
module.exports = {
|
||||
version,
|
||||
publish
|
||||
};
|
||||
16
scm-ui/ui-scripts/src/versions.js
Normal file
16
scm-ui/ui-scripts/src/versions.js
Normal file
@@ -0,0 +1,16 @@
|
||||
const createSnapshotVersion = (baseVersion) => {
|
||||
const date = new Date();
|
||||
const year = date.getFullYear();
|
||||
const month = date.getMonth().toString().padStart(2, "0");
|
||||
const day = date.getDate().toString().padStart(2, "0");
|
||||
|
||||
const hours = date.getHours().toString().padStart(2, "0");
|
||||
const minutes = date.getMinutes().toString().padStart(2, "0");
|
||||
const seconds = date.getSeconds().toString().padStart(2, "0");
|
||||
|
||||
return `${year}${month}${day}-${hours}${minutes}${seconds}`;
|
||||
};
|
||||
|
||||
module.exports = {
|
||||
createSnapshotVersion
|
||||
};
|
||||
Reference in New Issue
Block a user