@saferun/cli 0.5.29 ā 0.5.31
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/dist/commands/shell-init.d.ts +1 -0
- package/dist/commands/shell-init.js +9 -1
- package/dist/commands/shell-init.js.map +1 -1
- package/dist/utils/api-client.js +8 -0
- package/dist/utils/api-client.js.map +1 -1
- package/dist/utils/credentials.d.ts +4 -0
- package/dist/utils/credentials.js +33 -0
- package/dist/utils/credentials.js.map +1 -1
- package/package.json +1 -1
|
@@ -15,9 +15,17 @@ const path_1 = __importDefault(require("path"));
|
|
|
15
15
|
class ShellInitCommand {
|
|
16
16
|
async run(options) {
|
|
17
17
|
const shell = options.shell || this.detectShell();
|
|
18
|
+
const snippet = this.generateSnippet(shell);
|
|
19
|
+
// If called as eval "$(saferun shell-init)" - just output the snippet
|
|
20
|
+
// Detect by checking if stdout is not a TTY (piped)
|
|
21
|
+
const isPiped = !process.stdout.isTTY;
|
|
22
|
+
if (isPiped || options.quiet) {
|
|
23
|
+
// Output only shell code for eval
|
|
24
|
+
console.log(snippet);
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
18
27
|
console.log(chalk_1.default.cyan('\nš SafeRun Shell Integration Setup\n'));
|
|
19
28
|
console.log(chalk_1.default.gray(`Detected shell: ${shell}`));
|
|
20
|
-
const snippet = this.generateSnippet(shell);
|
|
21
29
|
if (options.auto) {
|
|
22
30
|
await this.autoInstall(shell, snippet);
|
|
23
31
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shell-init.js","sourceRoot":"","sources":["../../src/commands/shell-init.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;AAEH,kDAA0B;AAC1B,4CAAoB;AACpB,4CAAoB;AACpB,gDAAwB;AAExB,MAAa,gBAAgB;IAC3B,KAAK,CAAC,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"shell-init.js","sourceRoot":"","sources":["../../src/commands/shell-init.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;AAEH,kDAA0B;AAC1B,4CAAoB;AACpB,4CAAoB;AACpB,gDAAwB;AAExB,MAAa,gBAAgB;IAC3B,KAAK,CAAC,GAAG,CAAC,OAA4D;QACpE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QAClD,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAE5C,sEAAsE;QACtE,oDAAoD;QACpD,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;QAEtC,IAAI,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAC7B,kCAAkC;YAClC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mBAAmB,KAAK,EAAE,CAAC,CAAC,CAAC;QAEpD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IAEO,WAAW;QACjB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;QAE1C,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAC5C,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC;QAC9C,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC;QAE9C,OAAO,MAAM,CAAC,CAAC,UAAU;IAC3B,CAAC;IAEO,eAAe,CAAC,KAAa;QACnC,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACpC,CAAC;QAED,mBAAmB;QACnB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsFV,CAAC;IACA,CAAC;IAEO,mBAAmB;QACzB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqDV,CAAC;IACA,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,OAAe;QACtD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAErC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,oBAAoB,KAAK,cAAc,CAAC,CAAC,CAAC;YAClE,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAC5C,OAAO;QACT,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mCAAmC,MAAM,OAAO,CAAC,CAAC,CAAC;QAE1E,6BAA6B;QAC7B,IAAI,YAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,YAAE,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACjD,IAAI,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAAC,EAAE,CAAC;gBAClD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,iDAAiD,CAAC,CAAC,CAAC;gBAC7E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mDAAmD,GAAG,MAAM,CAAC,CAAC,CAAC;gBACtF,OAAO;YACT,CAAC;QACH,CAAC;QAED,iBAAiB;QACjB,YAAE,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,GAAG,OAAO,EAAE,OAAO,CAAC,CAAC;QAEnD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC,CAAC;QAC1F,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACpD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,CAAC;QAC/D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,eAAe,MAAM,EAAE,CAAC,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAC,CAAC;QAC3F,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC,CAAC;IACvE,CAAC;IAEO,sBAAsB,CAAC,KAAa,EAAE,OAAe;QAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,MAAM,KAAK,IAAI,CAAC;QAExD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,wBAAwB,MAAM,GAAG,CAAC,CAAC,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,YAAY,MAAM,EAAE,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAC1D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,CAAC;IACzD,CAAC;IAEO,SAAS,CAAC,KAAa;QAC7B,MAAM,IAAI,GAAG,YAAE,CAAC,OAAO,EAAE,CAAC;QAE1B,MAAM,KAAK,GAA6B;YACtC,GAAG,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC;YAC5B,IAAI,EAAE,CAAC,SAAS,EAAE,eAAe,EAAE,UAAU,CAAC;YAC9C,IAAI,EAAE,CAAC,0BAA0B,CAAC;SACnC,CAAC;QAEF,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC;QAE9C,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACvC,IAAI,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5B,OAAO,QAAQ,CAAC;YAClB,CAAC;QACH,CAAC;QAED,uCAAuC;QACvC,OAAO,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;CACF;AAnQD,4CAmQC"}
|
package/dist/utils/api-client.js
CHANGED
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.createSafeRunClient = createSafeRunClient;
|
|
4
4
|
exports.resolveApiKey = resolveApiKey;
|
|
5
5
|
const sdk_1 = require("@saferun/sdk");
|
|
6
|
+
const credentials_1 = require("./credentials");
|
|
6
7
|
/**
|
|
7
8
|
* Creates a SafeRun API client.
|
|
8
9
|
*
|
|
@@ -27,12 +28,19 @@ function createSafeRunClient(context) {
|
|
|
27
28
|
});
|
|
28
29
|
}
|
|
29
30
|
function resolveApiKey(config) {
|
|
31
|
+
// 1. Check local config
|
|
30
32
|
if (config.api.key && config.api.key.length > 0 && !isEnvPlaceholder(config.api.key)) {
|
|
31
33
|
return config.api.key;
|
|
32
34
|
}
|
|
35
|
+
// 2. Check environment variable
|
|
33
36
|
if (process.env.SAFERUN_API_KEY && process.env.SAFERUN_API_KEY.length > 0) {
|
|
34
37
|
return process.env.SAFERUN_API_KEY;
|
|
35
38
|
}
|
|
39
|
+
// 3. Check global credentials (~/.saferun/credentials)
|
|
40
|
+
const globalCreds = (0, credentials_1.loadGlobalCredentialsSync)();
|
|
41
|
+
if (globalCreds.api_key) {
|
|
42
|
+
return globalCreds.api_key;
|
|
43
|
+
}
|
|
36
44
|
return undefined;
|
|
37
45
|
}
|
|
38
46
|
function isEnvPlaceholder(value) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../src/utils/api-client.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../src/utils/api-client.ts"],"names":[],"mappings":";;AAeA,kDAkBC;AAED,sCAkBC;AArDD,sCAA6C;AAE7C,+CAA0D;AAM1D;;;;;;GAMG;AACH,SAAgB,mBAAmB,CAAC,OAA6B;;IAC/D,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAE3B,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAErC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,0FAA0F,CAAC,CAAC;IAC9G,CAAC;IAED,MAAM,OAAO,GAAG,MAAA,MAAM,CAAC,GAAG,CAAC,OAAO,mCAAI,IAAI,CAAC;IAC3C,MAAM,OAAO,GAAG,MAAA,MAAM,CAAC,GAAG,CAAC,WAAW,mCAAI,CAAC,CAAC;IAE5C,OAAO,IAAI,mBAAa,CAAC;QACvB,MAAM;QACN,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG;QACtB,OAAO;QACP,UAAU,EAAE,OAAO;KACpB,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,aAAa,CAAC,MAAqB;IACjD,wBAAwB;IACxB,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QACrF,OAAO,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;IACxB,CAAC;IAED,gCAAgC;IAChC,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1E,OAAO,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;IACrC,CAAC;IAED,uDAAuD;IACvD,MAAM,WAAW,GAAG,IAAA,uCAAyB,GAAE,CAAC;IAChD,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;QACxB,OAAO,WAAW,CAAC,OAAO,CAAC;IAC7B,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa;IACrC,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AACrD,CAAC"}
|
|
@@ -11,6 +11,10 @@ export interface GlobalCredentials {
|
|
|
11
11
|
* Ensure global config directory exists with secure permissions
|
|
12
12
|
*/
|
|
13
13
|
export declare function ensureGlobalConfigDir(): Promise<void>;
|
|
14
|
+
/**
|
|
15
|
+
* Load credentials from global config (sync version for use in api-client)
|
|
16
|
+
*/
|
|
17
|
+
export declare function loadGlobalCredentialsSync(): GlobalCredentials;
|
|
14
18
|
/**
|
|
15
19
|
* Load credentials from global config
|
|
16
20
|
*/
|
|
@@ -8,6 +8,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
8
8
|
};
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
10
|
exports.ensureGlobalConfigDir = ensureGlobalConfigDir;
|
|
11
|
+
exports.loadGlobalCredentialsSync = loadGlobalCredentialsSync;
|
|
11
12
|
exports.loadGlobalCredentials = loadGlobalCredentials;
|
|
12
13
|
exports.saveGlobalCredentials = saveGlobalCredentials;
|
|
13
14
|
exports.resolveApiKey = resolveApiKey;
|
|
@@ -30,6 +31,38 @@ async function ensureGlobalConfigDir() {
|
|
|
30
31
|
await fs_1.default.promises.mkdir(GLOBAL_CONFIG_DIR, { mode: 0o700, recursive: true });
|
|
31
32
|
}
|
|
32
33
|
}
|
|
34
|
+
/**
|
|
35
|
+
* Load credentials from global config (sync version for use in api-client)
|
|
36
|
+
*/
|
|
37
|
+
function loadGlobalCredentialsSync() {
|
|
38
|
+
try {
|
|
39
|
+
if (!fs_1.default.existsSync(CREDENTIALS_FILE)) {
|
|
40
|
+
return {};
|
|
41
|
+
}
|
|
42
|
+
const content = fs_1.default.readFileSync(CREDENTIALS_FILE, 'utf-8');
|
|
43
|
+
const credentials = {};
|
|
44
|
+
for (const line of content.split('\n')) {
|
|
45
|
+
const trimmed = line.trim();
|
|
46
|
+
if (!trimmed || trimmed.startsWith('#'))
|
|
47
|
+
continue;
|
|
48
|
+
const [key, ...valueParts] = trimmed.split('=');
|
|
49
|
+
const value = valueParts.join('=').trim();
|
|
50
|
+
if (key === 'api_key' || key === 'SAFERUN_API_KEY') {
|
|
51
|
+
credentials.api_key = value;
|
|
52
|
+
}
|
|
53
|
+
else if (key === 'created_at') {
|
|
54
|
+
credentials.created_at = value;
|
|
55
|
+
}
|
|
56
|
+
else if (key === 'updated_at') {
|
|
57
|
+
credentials.updated_at = value;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
return credentials;
|
|
61
|
+
}
|
|
62
|
+
catch {
|
|
63
|
+
return {};
|
|
64
|
+
}
|
|
65
|
+
}
|
|
33
66
|
/**
|
|
34
67
|
* Load credentials from global config
|
|
35
68
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../src/utils/credentials.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;AAmBH,sDAIC;AAKD,sDAgCC;AAKD,sDAmBC;AAQD,sCAkBC;AAKD,8BAGC;AAKD,kDAGC;AAKD,gCAGC;AAKD,gDAEC;AAKD,gDAEC;
|
|
1
|
+
{"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../src/utils/credentials.ts"],"names":[],"mappings":"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"}
|