@saferun/cli 0.5.30 → 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/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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"}
|