@leverege/build-tools 2.69.4 → 2.70.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/leverege-build-tools-2.21.13.tgz +0 -0
- package/lib/server/build-tools.js +138 -0
- package/lib/server/firebaseDeploy.js +195 -0
- package/lib/server/firebaseServe.js +116 -0
- package/lib/server/getfbcfg.js +25 -0
- package/lib/server/getjson.js +70 -0
- package/lib/server/overwhelm.js +447 -0
- package/lib/server/push-my-chart.js +18 -0
- package/lib/server/refresh-npm-token.js +135 -0
- package/lib/server/tag-release.js +681 -0
- package/lib/server/unleash.js +50 -0
- package/lib/web/build-tools.js +138 -0
- package/lib/web/firebaseDeploy.js +195 -0
- package/lib/web/firebaseServe.js +116 -0
- package/lib/web/getfbcfg.js +25 -0
- package/lib/web/getjson.js +70 -0
- package/lib/web/overwhelm.js +447 -0
- package/lib/web/push-my-chart.js +18 -0
- package/lib/web/refresh-npm-token.js +135 -0
- package/lib/web/tag-release.js +681 -0
- package/lib/web/unleash.js +50 -0
- package/package.json +4 -2
- package/src/count-lines-of-code.mjs +39 -0
- package/.vscode/build-tools.code-workspace +0 -8
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
|
|
4
|
+
var _execa = _interopRequireDefault(require("execa"));
|
|
5
|
+
var _simpleGit = _interopRequireDefault(require("simple-git"));
|
|
6
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
7
|
+
const git = new _simpleGit.default();
|
|
8
|
+
const getCurrentBranchName = async () => {
|
|
9
|
+
const branchInfo = await git.branch();
|
|
10
|
+
|
|
11
|
+
// first check to see if there are no branches - new repo?
|
|
12
|
+
if (Object.keys(branchInfo.branches).length === 0) {
|
|
13
|
+
return '';
|
|
14
|
+
}
|
|
15
|
+
return Object.entries(branchInfo.branches).find(([name, info]) => info.current)[0];
|
|
16
|
+
};
|
|
17
|
+
const isProtected = async () => {
|
|
18
|
+
const theBranch = await getCurrentBranchName();
|
|
19
|
+
const protectedBranches = ['main', 'master', 'development'];
|
|
20
|
+
const additionalProtectedBranches = [...process.argv.slice(2)];
|
|
21
|
+
|
|
22
|
+
// Check if the current branch starts with any of the additional
|
|
23
|
+
// protected branch name
|
|
24
|
+
let matchesAdditionalBranch = false;
|
|
25
|
+
for (let i = 0; i < additionalProtectedBranches.length; i++) {
|
|
26
|
+
matchesAdditionalBranch = matchesAdditionalBranch || theBranch.startsWith(additionalProtectedBranches[i]);
|
|
27
|
+
}
|
|
28
|
+
return protectedBranches.includes(theBranch) || matchesAdditionalBranch;
|
|
29
|
+
};
|
|
30
|
+
const npmRunner = async script => {
|
|
31
|
+
try {
|
|
32
|
+
const results = await (0, _execa.default)('npm', ['run', script], {
|
|
33
|
+
stdio: 'inherit'
|
|
34
|
+
});
|
|
35
|
+
return results;
|
|
36
|
+
} catch (err) {
|
|
37
|
+
process.exit(1);
|
|
38
|
+
}
|
|
39
|
+
return undefined;
|
|
40
|
+
};
|
|
41
|
+
(async () => {
|
|
42
|
+
if (await isProtected()) {
|
|
43
|
+
const script = ['test', 'lint'];
|
|
44
|
+
for (let i = 0; i < script.length; i++) {
|
|
45
|
+
await npmRunner(script[i]); // eslint-disable-line no-await-in-loop
|
|
46
|
+
}
|
|
47
|
+
} else {
|
|
48
|
+
process.exit(0);
|
|
49
|
+
}
|
|
50
|
+
})();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@leverege/build-tools",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.70.4",
|
|
4
4
|
"description": "A collection of build / support tools for Leverege developers",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"repository": {
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"scripts": {
|
|
11
11
|
"clean": "rm -rf lib",
|
|
12
12
|
"lint": "find ./src -name \\*.\\*js | xargs npx eslint --report-unused-disable-directives",
|
|
13
|
-
"prepare": "[ $SKIP_PREPARE ] && exit 0 || hook-and-release",
|
|
13
|
+
"prepare": "[ $SKIP_PREPARE ] && exit 0 || ./src/hook-and-release.mjs",
|
|
14
14
|
"test": "echo \"no tests specified\" && exit 0"
|
|
15
15
|
},
|
|
16
16
|
"bin": {
|
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
"chart-to-registry": "src/chart-to-registry.mjs",
|
|
22
22
|
"circleate": "src/circleate.sh",
|
|
23
23
|
"clone-cnpg-from-snapshot": "src/clone-cnpg-from-snapshot.mjs",
|
|
24
|
+
"count-lines-of-code": "src/count-lines-of-code.mjs",
|
|
24
25
|
"decrypt-secrets": "src/decrypt-secrets.sh",
|
|
25
26
|
"dirty-git": "src/dirty-git.sh",
|
|
26
27
|
"dockreate": "src/dockreate.sh",
|
|
@@ -85,6 +86,7 @@
|
|
|
85
86
|
"semver": "^7.7.2",
|
|
86
87
|
"shell-quote": "^1.8.3",
|
|
87
88
|
"simple-git": "^3.28.0",
|
|
89
|
+
"sloc": "^0.3.2",
|
|
88
90
|
"toml": "^3.0.0",
|
|
89
91
|
"zx": "^8.7.1"
|
|
90
92
|
},
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import path from 'node:path'
|
|
3
|
+
import { $, fs, chalk } from 'zx'
|
|
4
|
+
|
|
5
|
+
const $$ = $( {
|
|
6
|
+
stdio : 'inherit'
|
|
7
|
+
} )
|
|
8
|
+
|
|
9
|
+
const rootDir = process.cwd()
|
|
10
|
+
const pkgJSON = await fs.readJSON( path.join( rootDir, 'package.json' ) )
|
|
11
|
+
|
|
12
|
+
const hasWorkspace = pkgJSON.workspaces != null
|
|
13
|
+
|
|
14
|
+
if ( !hasWorkspace ) {
|
|
15
|
+
await getLinesOfCodeForDirectory( rootDir )
|
|
16
|
+
} else {
|
|
17
|
+
const dirs = await fs.readdir( './packages' )
|
|
18
|
+
if ( dirs.length > 0 ) {
|
|
19
|
+
for ( let i = 0; i < dirs.length; i++ ) {
|
|
20
|
+
const dir = dirs[i]
|
|
21
|
+
|
|
22
|
+
await getLinesOfCodeForDirectory( path.join( rootDir, 'packages', dir ) )
|
|
23
|
+
}
|
|
24
|
+
} else {
|
|
25
|
+
console.log( chalk.redBright( 'No workspace directories for which to count code' ) )
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
async function getLinesOfCodeForDirectory( directory ) {
|
|
30
|
+
const srcDir = path.join( directory, 'src' )
|
|
31
|
+
const hasSrc = await fs.exists( srcDir )
|
|
32
|
+
|
|
33
|
+
if ( hasSrc ) {
|
|
34
|
+
console.log( `${chalk.greenBright( srcDir )}:` )
|
|
35
|
+
await $$`sloc ${srcDir} --format cli-table`
|
|
36
|
+
} else {
|
|
37
|
+
console.log( chalk.redBright( `No src directory at ${directory}` ) )
|
|
38
|
+
}
|
|
39
|
+
}
|