@credibledata/cred-cli 0.0.7 → 0.0.102
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/README-DEV.md +2 -2
- package/bun.lock +113 -337
- package/dist/client/api.js +2999 -1953
- package/dist/client/api.js.map +1 -1
- package/dist/client/base.js +1 -1
- package/dist/client/common.js +1 -1
- package/dist/client/configuration.js +1 -1
- package/dist/client/index.js +1 -1
- package/dist/clientconfiguration.js +59 -24
- package/dist/clientconfiguration.js.map +1 -1
- package/dist/clientconfiguration.spec.js +69 -37
- package/dist/clientconfiguration.spec.js.map +1 -1
- package/dist/commands/add.js +18 -5
- package/dist/commands/add.js.map +1 -1
- package/dist/commands/connection/createconnections.js +4 -4
- package/dist/commands/connection/createconnections.js.map +1 -1
- package/dist/commands/connection/createconnections.spec.js +11 -1
- package/dist/commands/connection/createconnections.spec.js.map +1 -1
- package/dist/commands/connection/deleteconnection.js +4 -4
- package/dist/commands/connection/deleteconnection.js.map +1 -1
- package/dist/commands/connection/deleteconnection.spec.js +1 -1
- package/dist/commands/connection/deleteconnection.spec.js.map +1 -1
- package/dist/commands/connection/listconnections.js +4 -4
- package/dist/commands/connection/listconnections.js.map +1 -1
- package/dist/commands/connection/listconnections.spec.js +1 -1
- package/dist/commands/connection/listconnections.spec.js.map +1 -1
- package/dist/commands/{project/createproject.js → environment/createenvironment.js} +17 -14
- package/dist/commands/environment/createenvironment.js.map +1 -0
- package/dist/commands/{project/createproject.spec.js → environment/createenvironment.spec.js} +46 -46
- package/dist/commands/environment/createenvironment.spec.js.map +1 -0
- package/dist/commands/{project/deleteproject.js → environment/deleteenvironment.js} +9 -9
- package/dist/commands/environment/deleteenvironment.js.map +1 -0
- package/dist/commands/{project/deleteproject.spec.js → environment/deleteenvironment.spec.js} +29 -29
- package/dist/commands/environment/deleteenvironment.spec.js.map +1 -0
- package/dist/commands/{project/getproject.js → environment/getenvironment.js} +8 -8
- package/dist/commands/environment/getenvironment.js.map +1 -0
- package/dist/commands/{project/getproject.spec.js → environment/getenvironment.spec.js} +32 -33
- package/dist/commands/environment/getenvironment.spec.js.map +1 -0
- package/dist/commands/{project/listprojects.js → environment/listenvironments.js} +10 -10
- package/dist/commands/environment/listenvironments.js.map +1 -0
- package/dist/commands/{project/listprojects.spec.js → environment/listenvironments.spec.js} +35 -35
- package/dist/commands/environment/listenvironments.spec.js.map +1 -0
- package/dist/commands/{project/setproject.js → environment/setenvironment.js} +6 -5
- package/dist/commands/environment/setenvironment.js.map +1 -0
- package/dist/commands/{project/setproject.spec.js → environment/setenvironment.spec.js} +9 -9
- package/dist/commands/environment/setenvironment.spec.js.map +1 -0
- package/dist/commands/{project/updateproject.js → environment/updateenvironment.js} +13 -13
- package/dist/commands/environment/updateenvironment.js.map +1 -0
- package/dist/commands/{project/updateproject.spec.js → environment/updateenvironment.spec.js} +44 -44
- package/dist/commands/environment/updateenvironment.spec.js.map +1 -0
- package/dist/commands/get.js +15 -5
- package/dist/commands/get.js.map +1 -1
- package/dist/commands/legacy.js +9 -0
- package/dist/commands/legacy.js.map +1 -0
- package/dist/commands/list.js +17 -4
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/misc/login.js +2 -2
- package/dist/commands/misc/login.js.map +1 -1
- package/dist/commands/misc/login.spec.js +41 -5
- package/dist/commands/misc/login.spec.js.map +1 -1
- package/dist/commands/package/deletepackage.js +4 -4
- package/dist/commands/package/deletepackage.js.map +1 -1
- package/dist/commands/package/deletepackage.spec.js +1 -1
- package/dist/commands/package/deletepackage.spec.js.map +1 -1
- package/dist/commands/package/listpackages.js +4 -4
- package/dist/commands/package/listpackages.js.map +1 -1
- package/dist/commands/package/listpackages.spec.js +1 -1
- package/dist/commands/package/listpackages.spec.js.map +1 -1
- package/dist/commands/package/publish.js +10 -10
- package/dist/commands/package/publish.js.map +1 -1
- package/dist/commands/package/publish.spec.js +34 -6
- package/dist/commands/package/publish.spec.js.map +1 -1
- package/dist/commands/package/updatepackage.js +4 -4
- package/dist/commands/package/updatepackage.js.map +1 -1
- package/dist/commands/package/updatepackage.spec.js +1 -1
- package/dist/commands/package/updatepackage.spec.js.map +1 -1
- package/dist/commands/rm.js +15 -4
- package/dist/commands/rm.js.map +1 -1
- package/dist/commands/set.js +12 -4
- package/dist/commands/set.js.map +1 -1
- package/dist/commands/update.js +19 -6
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/version/archive-unarchive-version.js +4 -5
- package/dist/commands/version/archive-unarchive-version.js.map +1 -1
- package/dist/commands/version/archive-unarchive-version.spec.js +4 -4
- package/dist/commands/version/archive-unarchive-version.spec.js.map +1 -1
- package/dist/commands/version/listversions.js +4 -4
- package/dist/commands/version/listversions.js.map +1 -1
- package/dist/commands/version/listversions.spec.js +1 -1
- package/dist/commands/version/listversions.spec.js.map +1 -1
- package/dist/constants.js +47 -19
- package/dist/constants.js.map +1 -1
- package/dist/constants.spec.js +90 -0
- package/dist/constants.spec.js.map +1 -0
- package/dist/index.js +74 -16
- package/dist/index.js.map +1 -1
- package/package.json +7 -8
- package/src/client/api.ts +3552 -2182
- package/src/client/base.ts +1 -1
- package/src/client/common.ts +1 -1
- package/src/client/configuration.ts +1 -1
- package/src/client/index.ts +1 -1
- package/src/clientconfiguration.spec.ts +113 -114
- package/src/clientconfiguration.ts +69 -28
- package/src/commands/add.ts +35 -12
- package/src/commands/connection/createconnections.spec.ts +11 -1
- package/src/commands/connection/createconnections.ts +4 -4
- package/src/commands/connection/deleteconnection.spec.ts +1 -1
- package/src/commands/connection/deleteconnection.ts +4 -4
- package/src/commands/connection/listconnections.spec.ts +1 -1
- package/src/commands/connection/listconnections.ts +4 -4
- package/src/commands/{project/createproject.spec.ts → environment/createenvironment.spec.ts} +56 -54
- package/src/commands/{project/createproject.ts → environment/createenvironment.ts} +17 -14
- package/src/commands/{project/deleteproject.spec.ts → environment/deleteenvironment.spec.ts} +59 -30
- package/src/commands/{project/deleteproject.ts → environment/deleteenvironment.ts} +10 -10
- package/src/commands/environment/getenvironment.spec.ts +110 -0
- package/src/commands/{project/getproject.ts → environment/getenvironment.ts} +9 -9
- package/src/commands/{project/listprojects.spec.ts → environment/listenvironments.spec.ts} +37 -35
- package/src/commands/{project/listprojects.ts → environment/listenvironments.ts} +13 -8
- package/src/commands/{project/setproject.spec.ts → environment/setenvironment.spec.ts} +8 -8
- package/src/commands/{project/setproject.ts → environment/setenvironment.ts} +4 -4
- package/src/commands/{project/updateproject.spec.ts → environment/updateenvironment.spec.ts} +53 -51
- package/src/commands/{project/updateproject.ts → environment/updateenvironment.ts} +19 -17
- package/src/commands/get.ts +22 -9
- package/src/commands/legacy.ts +5 -0
- package/src/commands/list.ts +33 -9
- package/src/commands/misc/login.spec.ts +47 -5
- package/src/commands/misc/login.ts +6 -2
- package/src/commands/package/deletepackage.spec.ts +1 -1
- package/src/commands/package/deletepackage.ts +4 -4
- package/src/commands/package/listpackages.spec.ts +1 -1
- package/src/commands/package/listpackages.ts +4 -4
- package/src/commands/package/publish.spec.ts +36 -6
- package/src/commands/package/publish.ts +12 -8
- package/src/commands/package/updatepackage.spec.ts +1 -1
- package/src/commands/package/updatepackage.ts +4 -4
- package/src/commands/rm.ts +25 -9
- package/src/commands/set.ts +13 -4
- package/src/commands/update.ts +32 -12
- package/src/commands/version/archive-unarchive-version.spec.ts +4 -4
- package/src/commands/version/archive-unarchive-version.ts +4 -7
- package/src/commands/version/listversions.spec.ts +1 -1
- package/src/commands/version/listversions.ts +4 -4
- package/src/constants.spec.ts +111 -0
- package/src/constants.ts +81 -18
- package/src/index.ts +103 -17
- package/dist/commands/project/createproject.js.map +0 -1
- package/dist/commands/project/createproject.spec.js.map +0 -1
- package/dist/commands/project/deleteproject.js.map +0 -1
- package/dist/commands/project/deleteproject.spec.js.map +0 -1
- package/dist/commands/project/getproject.js.map +0 -1
- package/dist/commands/project/getproject.spec.js.map +0 -1
- package/dist/commands/project/listprojects.js.map +0 -1
- package/dist/commands/project/listprojects.spec.js.map +0 -1
- package/dist/commands/project/setproject.js.map +0 -1
- package/dist/commands/project/setproject.spec.js.map +0 -1
- package/dist/commands/project/updateproject.js.map +0 -1
- package/dist/commands/project/updateproject.spec.js.map +0 -1
- package/src/commands/project/getproject.spec.ts +0 -109
package/dist/client/base.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
/* eslint-disable */
|
|
4
4
|
/**
|
|
5
5
|
* Credible Admin API
|
|
6
|
-
* The Credible Admin API is a comprehensive REST API that empowers organizations to manage their Malloy data modeling ecosystem with enterprise-grade security and governance. This API provides programmatic access to all administrative functions, enabling seamless integration with existing workflows and automation systems. ## Key Features - **Organization Management**: Create and manage organizations with fine-grained access controls - **
|
|
6
|
+
* The Credible Admin API is a comprehensive REST API that empowers organizations to manage their Malloy data modeling ecosystem with enterprise-grade security and governance. This API provides programmatic access to all administrative functions, enabling seamless integration with existing workflows and automation systems. ## Key Features - **Organization Management**: Create and manage organizations with fine-grained access controls - **Environment & Package Lifecycle**: Full CRUD operations for environments, packages, and versions - **Connection Management**: Secure database connection configuration and management - **Permission Management**: Granular role-based access control (RBAC) at organization, environment, package, workspace, and document levels - **Workspace Management**: Collaborative workspaces for data modeling and analysis - **User & Group Management**: Comprehensive user administration with group-based permissions ## Resource Hierarchy The API follows a hierarchical resource structure with fine-grained permission management at each level: ``` Organizations ├── Permissions ├── Environments │ ├── Permissions │ ├── Packages │ │ ├── Permissions │ │ └── Versions │ └── Connections ├── Workspaces │ ├── Permissions │ └── Documents │ └── Permissions └── Groups ├── Permissions └── Members System-Level Resources: ├── Users ├── System Permissions └── Demo Operations ``` ## Authentication & Authorization All API endpoints require proper authentication. The API implements fine-grained authorization using role-based permissions: - **Admin**: Full access to all resources within scope - **Modeler**: Can create and modify data models and packages - **Viewer**: Read-only access to resources - **Manager**: Workspace management capabilities - **Editor**: Document editing permissions ## Rate Limiting & Best Practices - API requests are rate-limited to ensure system stability - Implement proper error handling and retry logic - Cache responses when appropriate to reduce API calls ## Support & Documentation For additional support, examples, and integration guides, visit our developer documentation or contact our support team.
|
|
7
7
|
*
|
|
8
8
|
* The version of the OpenAPI document: v0
|
|
9
9
|
* Contact: support@credibledata.com
|
package/dist/client/common.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
/* eslint-disable */
|
|
4
4
|
/**
|
|
5
5
|
* Credible Admin API
|
|
6
|
-
* The Credible Admin API is a comprehensive REST API that empowers organizations to manage their Malloy data modeling ecosystem with enterprise-grade security and governance. This API provides programmatic access to all administrative functions, enabling seamless integration with existing workflows and automation systems. ## Key Features - **Organization Management**: Create and manage organizations with fine-grained access controls - **
|
|
6
|
+
* The Credible Admin API is a comprehensive REST API that empowers organizations to manage their Malloy data modeling ecosystem with enterprise-grade security and governance. This API provides programmatic access to all administrative functions, enabling seamless integration with existing workflows and automation systems. ## Key Features - **Organization Management**: Create and manage organizations with fine-grained access controls - **Environment & Package Lifecycle**: Full CRUD operations for environments, packages, and versions - **Connection Management**: Secure database connection configuration and management - **Permission Management**: Granular role-based access control (RBAC) at organization, environment, package, workspace, and document levels - **Workspace Management**: Collaborative workspaces for data modeling and analysis - **User & Group Management**: Comprehensive user administration with group-based permissions ## Resource Hierarchy The API follows a hierarchical resource structure with fine-grained permission management at each level: ``` Organizations ├── Permissions ├── Environments │ ├── Permissions │ ├── Packages │ │ ├── Permissions │ │ └── Versions │ └── Connections ├── Workspaces │ ├── Permissions │ └── Documents │ └── Permissions └── Groups ├── Permissions └── Members System-Level Resources: ├── Users ├── System Permissions └── Demo Operations ``` ## Authentication & Authorization All API endpoints require proper authentication. The API implements fine-grained authorization using role-based permissions: - **Admin**: Full access to all resources within scope - **Modeler**: Can create and modify data models and packages - **Viewer**: Read-only access to resources - **Manager**: Workspace management capabilities - **Editor**: Document editing permissions ## Rate Limiting & Best Practices - API requests are rate-limited to ensure system stability - Implement proper error handling and retry logic - Cache responses when appropriate to reduce API calls ## Support & Documentation For additional support, examples, and integration guides, visit our developer documentation or contact our support team.
|
|
7
7
|
*
|
|
8
8
|
* The version of the OpenAPI document: v0
|
|
9
9
|
* Contact: support@credibledata.com
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
/* eslint-disable */
|
|
4
4
|
/**
|
|
5
5
|
* Credible Admin API
|
|
6
|
-
* The Credible Admin API is a comprehensive REST API that empowers organizations to manage their Malloy data modeling ecosystem with enterprise-grade security and governance. This API provides programmatic access to all administrative functions, enabling seamless integration with existing workflows and automation systems. ## Key Features - **Organization Management**: Create and manage organizations with fine-grained access controls - **
|
|
6
|
+
* The Credible Admin API is a comprehensive REST API that empowers organizations to manage their Malloy data modeling ecosystem with enterprise-grade security and governance. This API provides programmatic access to all administrative functions, enabling seamless integration with existing workflows and automation systems. ## Key Features - **Organization Management**: Create and manage organizations with fine-grained access controls - **Environment & Package Lifecycle**: Full CRUD operations for environments, packages, and versions - **Connection Management**: Secure database connection configuration and management - **Permission Management**: Granular role-based access control (RBAC) at organization, environment, package, workspace, and document levels - **Workspace Management**: Collaborative workspaces for data modeling and analysis - **User & Group Management**: Comprehensive user administration with group-based permissions ## Resource Hierarchy The API follows a hierarchical resource structure with fine-grained permission management at each level: ``` Organizations ├── Permissions ├── Environments │ ├── Permissions │ ├── Packages │ │ ├── Permissions │ │ └── Versions │ └── Connections ├── Workspaces │ ├── Permissions │ └── Documents │ └── Permissions └── Groups ├── Permissions └── Members System-Level Resources: ├── Users ├── System Permissions └── Demo Operations ``` ## Authentication & Authorization All API endpoints require proper authentication. The API implements fine-grained authorization using role-based permissions: - **Admin**: Full access to all resources within scope - **Modeler**: Can create and modify data models and packages - **Viewer**: Read-only access to resources - **Manager**: Workspace management capabilities - **Editor**: Document editing permissions ## Rate Limiting & Best Practices - API requests are rate-limited to ensure system stability - Implement proper error handling and retry logic - Cache responses when appropriate to reduce API calls ## Support & Documentation For additional support, examples, and integration guides, visit our developer documentation or contact our support team.
|
|
7
7
|
*
|
|
8
8
|
* The version of the OpenAPI document: v0
|
|
9
9
|
* Contact: support@credibledata.com
|
package/dist/client/index.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
/* eslint-disable */
|
|
4
4
|
/**
|
|
5
5
|
* Credible Admin API
|
|
6
|
-
* The Credible Admin API is a comprehensive REST API that empowers organizations to manage their Malloy data modeling ecosystem with enterprise-grade security and governance. This API provides programmatic access to all administrative functions, enabling seamless integration with existing workflows and automation systems. ## Key Features - **Organization Management**: Create and manage organizations with fine-grained access controls - **
|
|
6
|
+
* The Credible Admin API is a comprehensive REST API that empowers organizations to manage their Malloy data modeling ecosystem with enterprise-grade security and governance. This API provides programmatic access to all administrative functions, enabling seamless integration with existing workflows and automation systems. ## Key Features - **Organization Management**: Create and manage organizations with fine-grained access controls - **Environment & Package Lifecycle**: Full CRUD operations for environments, packages, and versions - **Connection Management**: Secure database connection configuration and management - **Permission Management**: Granular role-based access control (RBAC) at organization, environment, package, workspace, and document levels - **Workspace Management**: Collaborative workspaces for data modeling and analysis - **User & Group Management**: Comprehensive user administration with group-based permissions ## Resource Hierarchy The API follows a hierarchical resource structure with fine-grained permission management at each level: ``` Organizations ├── Permissions ├── Environments │ ├── Permissions │ ├── Packages │ │ ├── Permissions │ │ └── Versions │ └── Connections ├── Workspaces │ ├── Permissions │ └── Documents │ └── Permissions └── Groups ├── Permissions └── Members System-Level Resources: ├── Users ├── System Permissions └── Demo Operations ``` ## Authentication & Authorization All API endpoints require proper authentication. The API implements fine-grained authorization using role-based permissions: - **Admin**: Full access to all resources within scope - **Modeler**: Can create and modify data models and packages - **Viewer**: Read-only access to resources - **Manager**: Workspace management capabilities - **Editor**: Document editing permissions ## Rate Limiting & Best Practices - API requests are rate-limited to ensure system stability - Implement proper error handling and retry logic - Cache responses when appropriate to reduce API calls ## Support & Documentation For additional support, examples, and integration guides, visit our developer documentation or contact our support team.
|
|
7
7
|
*
|
|
8
8
|
* The version of the OpenAPI document: v0
|
|
9
9
|
* Contact: support@credibledata.com
|
|
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.ClientConfiguration = void 0;
|
|
7
|
+
const crypto_1 = __importDefault(require("crypto"));
|
|
7
8
|
const fs_1 = __importDefault(require("fs"));
|
|
8
9
|
const jwt_decode_1 = require("jwt-decode");
|
|
9
10
|
const kleur_1 = __importDefault(require("kleur"));
|
|
@@ -18,25 +19,31 @@ class ClientConfiguration {
|
|
|
18
19
|
}
|
|
19
20
|
}
|
|
20
21
|
loadConfig() {
|
|
22
|
+
let fileContents;
|
|
21
23
|
try {
|
|
22
|
-
|
|
23
|
-
this.config = JSON.parse(fileContents.toString());
|
|
24
|
-
if (!this.config.activeEnvironment ||
|
|
25
|
-
!this.config.configPerEnvironment) {
|
|
26
|
-
throw new Error("Corrupted config file found, restoring to default settings.");
|
|
27
|
-
}
|
|
24
|
+
fileContents = fs_1.default.readFileSync(this.configPath);
|
|
28
25
|
}
|
|
29
26
|
catch (error) {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
27
|
+
if ((error === null || error === void 0 ? void 0 : error.code) === "ENOENT") {
|
|
28
|
+
// First-time setup: create a default config on disk.
|
|
29
|
+
this.config = this.defaultConfig();
|
|
30
|
+
this.writeConfig();
|
|
31
|
+
return this.config;
|
|
34
32
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
33
|
+
throw error;
|
|
34
|
+
}
|
|
35
|
+
try {
|
|
36
|
+
this.config = JSON.parse(fileContents.toString());
|
|
37
|
+
}
|
|
38
|
+
catch (error) {
|
|
39
|
+
// Non-atomic writes from older binaries, or a manually corrupted file,
|
|
40
|
+
// can leave `.cred` unparseable. Fail loud rather than silently
|
|
41
|
+
// overwriting — a silent reset erases the access token for every
|
|
42
|
+
// subsequent caller on the same machine.
|
|
43
|
+
throw new Error(`Failed to parse ${this.configPath}: ${error}. The file may be corrupt; re-run \`cred login\` to reset.`);
|
|
44
|
+
}
|
|
45
|
+
if (!this.config.activeEnvironment || !this.config.configPerEnvironment) {
|
|
46
|
+
throw new Error(`Invalid config structure in ${this.configPath}; re-run \`cred login\` to reset.`);
|
|
40
47
|
}
|
|
41
48
|
for (const env of constants_1.ALL_ENVIRONMENTS) {
|
|
42
49
|
if (!this.config.configPerEnvironment[env]) {
|
|
@@ -45,20 +52,48 @@ class ClientConfiguration {
|
|
|
45
52
|
}
|
|
46
53
|
return this.config;
|
|
47
54
|
}
|
|
55
|
+
defaultConfig() {
|
|
56
|
+
const configPerEnvironment = {};
|
|
57
|
+
for (const env of constants_1.ALL_ENVIRONMENTS) {
|
|
58
|
+
configPerEnvironment[env] = {};
|
|
59
|
+
}
|
|
60
|
+
return { configPerEnvironment, activeEnvironment: "production" };
|
|
61
|
+
}
|
|
62
|
+
// Atomic: write to a sibling temp file, then rename into place.
|
|
63
|
+
// Readers either see the old file or the new file, never a truncated
|
|
64
|
+
// zero-byte snapshot (the window that `writeFileSync` exposes between
|
|
65
|
+
// open(O_TRUNC) and write).
|
|
66
|
+
//
|
|
67
|
+
// The temp suffix uses 16 bytes of crypto-random hex so the temp
|
|
68
|
+
// path is unguessable — a predictable name (pid + Date.now()) lets a
|
|
69
|
+
// co-located attacker pre-create a symlink at that path and trick
|
|
70
|
+
// us into clobbering an arbitrary file (CodeQL js/insecure-temporary-file).
|
|
71
|
+
// O_EXCL on open further refuses to follow a pre-existing entry.
|
|
72
|
+
writeConfig() {
|
|
73
|
+
const tmp = `${this.configPath}.${crypto_1.default.randomBytes(16).toString("hex")}.tmp`;
|
|
74
|
+
const fd = fs_1.default.openSync(tmp, fs_1.default.constants.O_WRONLY | fs_1.default.constants.O_CREAT | fs_1.default.constants.O_EXCL, 0o600);
|
|
75
|
+
try {
|
|
76
|
+
fs_1.default.writeFileSync(fd, JSON.stringify(this.config));
|
|
77
|
+
}
|
|
78
|
+
finally {
|
|
79
|
+
fs_1.default.closeSync(fd);
|
|
80
|
+
}
|
|
81
|
+
fs_1.default.renameSync(tmp, this.configPath);
|
|
82
|
+
}
|
|
48
83
|
setOrganization(organizationName) {
|
|
49
84
|
this.loadConfig();
|
|
50
85
|
// TODO: Validate organization exists and user has access.
|
|
51
86
|
const environment = this.getEnvironment();
|
|
52
87
|
this.config.configPerEnvironment[environment].organization =
|
|
53
88
|
organizationName;
|
|
54
|
-
|
|
89
|
+
this.writeConfig();
|
|
55
90
|
}
|
|
56
91
|
setProject(projectName) {
|
|
57
92
|
this.loadConfig();
|
|
58
93
|
// TODO: Validate project exists and user has access.
|
|
59
94
|
const environment = this.getEnvironment();
|
|
60
95
|
this.config.configPerEnvironment[environment].project = projectName;
|
|
61
|
-
|
|
96
|
+
this.writeConfig();
|
|
62
97
|
}
|
|
63
98
|
getOrganization() {
|
|
64
99
|
this.loadConfig();
|
|
@@ -76,7 +111,7 @@ class ClientConfiguration {
|
|
|
76
111
|
this.config.configPerEnvironment[environment].isServiceAccountToken =
|
|
77
112
|
!userToken;
|
|
78
113
|
this.config.configPerEnvironment[environment].accessToken = accessToken;
|
|
79
|
-
|
|
114
|
+
this.writeConfig();
|
|
80
115
|
}
|
|
81
116
|
getAuthenticationHeader() {
|
|
82
117
|
const environment = this.getEnvironment();
|
|
@@ -95,7 +130,7 @@ class ClientConfiguration {
|
|
|
95
130
|
const environment = this.getEnvironment();
|
|
96
131
|
this.config.configPerEnvironment[environment].jwtAccessToken =
|
|
97
132
|
jwtAccessToken;
|
|
98
|
-
|
|
133
|
+
this.writeConfig();
|
|
99
134
|
}
|
|
100
135
|
getJwtAccessToken() {
|
|
101
136
|
this.loadConfig();
|
|
@@ -112,7 +147,7 @@ class ClientConfiguration {
|
|
|
112
147
|
username,
|
|
113
148
|
email,
|
|
114
149
|
};
|
|
115
|
-
|
|
150
|
+
this.writeConfig();
|
|
116
151
|
}
|
|
117
152
|
getVSCodeUser() {
|
|
118
153
|
this.loadConfig();
|
|
@@ -123,7 +158,7 @@ class ClientConfiguration {
|
|
|
123
158
|
this.loadConfig();
|
|
124
159
|
const environment = this.getEnvironment();
|
|
125
160
|
this.config.configPerEnvironment[environment].refreshToken = refreshToken;
|
|
126
|
-
|
|
161
|
+
this.writeConfig();
|
|
127
162
|
}
|
|
128
163
|
getRefreshToken() {
|
|
129
164
|
this.loadConfig();
|
|
@@ -144,12 +179,12 @@ class ClientConfiguration {
|
|
|
144
179
|
this.loadConfig();
|
|
145
180
|
const environment = this.getEnvironment();
|
|
146
181
|
this.config.configPerEnvironment[environment] = {};
|
|
147
|
-
|
|
182
|
+
this.writeConfig();
|
|
148
183
|
}
|
|
149
184
|
setEnvironment(environment) {
|
|
150
185
|
this.loadConfig();
|
|
151
186
|
this.config.activeEnvironment = environment;
|
|
152
|
-
|
|
187
|
+
this.writeConfig();
|
|
153
188
|
}
|
|
154
189
|
getEnvironment() {
|
|
155
190
|
this.loadConfig();
|
|
@@ -193,7 +228,7 @@ class ClientConfiguration {
|
|
|
193
228
|
const project = this.getProject();
|
|
194
229
|
console.log(kleur_1.default.green(constants_1.ASCII_TITLE));
|
|
195
230
|
logger_1.logger.info(`Organization: ${kleur_1.default.green(organization || "Not set")}`);
|
|
196
|
-
logger_1.logger.info(`
|
|
231
|
+
logger_1.logger.info(`Environment: ${kleur_1.default.green(project || "Not set")}`);
|
|
197
232
|
}
|
|
198
233
|
else {
|
|
199
234
|
logger_1.logger.error("Failed to get status");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clientconfiguration.js","sourceRoot":"","sources":["../src/clientconfiguration.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,2CAAuC;AACvC,kDAA0B;AAC1B,4CAAoB;AACpB,2CAAyE;AACzE,qCAAkC;AA8BlC,MAAa,mBAAmB;IAI7B,YAAY,gBAAyB;QAH7B,eAAU,GAAG,GAAG,YAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;QAI1C,IAAI,gBAAgB,EAAE,CAAC;YACpB,IAAI,CAAC,UAAU,GAAG,gBAAgB,CAAC;QACtC,CAAC;IACJ,CAAC;IAEM,UAAU;QACd,IAAI,CAAC;YACF,
|
|
1
|
+
{"version":3,"file":"clientconfiguration.js","sourceRoot":"","sources":["../src/clientconfiguration.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAC5B,4CAAoB;AACpB,2CAAuC;AACvC,kDAA0B;AAC1B,4CAAoB;AACpB,2CAAyE;AACzE,qCAAkC;AA8BlC,MAAa,mBAAmB;IAI7B,YAAY,gBAAyB;QAH7B,eAAU,GAAG,GAAG,YAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;QAI1C,IAAI,gBAAgB,EAAE,CAAC;YACpB,IAAI,CAAC,UAAU,GAAG,gBAAgB,CAAC;QACtC,CAAC;IACJ,CAAC;IAEM,UAAU;QACd,IAAI,YAAgC,CAAC;QACrC,IAAI,CAAC;YACF,YAAY,GAAG,YAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACnD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACd,IAAI,CAAC,KAA+B,aAA/B,KAAK,uBAAL,KAAK,CAA4B,IAAI,MAAK,QAAQ,EAAE,CAAC;gBACvD,qDAAqD;gBACrD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACnB,OAAO,IAAI,CAAC,MAAM,CAAC;YACtB,CAAC;YACD,MAAM,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC;YACF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;QACrD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACd,uEAAuE;YACvE,gEAAgE;YAChE,iEAAiE;YACjE,yCAAyC;YACzC,MAAM,IAAI,KAAK,CACZ,mBAAmB,IAAI,CAAC,UAAU,KAAK,KAAK,4DAA4D,CAC1G,CAAC;QACL,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC;YACvE,MAAM,IAAI,KAAK,CACZ,+BAA+B,IAAI,CAAC,UAAU,mCAAmC,CACnF,CAAC;QACL,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,4BAAgB,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1C,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;YAC9C,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,CAAC;IACtB,CAAC;IAEO,aAAa;QAClB,MAAM,oBAAoB,GAAuC,EAAE,CAAC;QACpE,KAAK,MAAM,GAAG,IAAI,4BAAgB,EAAE,CAAC;YAClC,oBAAoB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QAClC,CAAC;QACD,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,YAAY,EAAE,CAAC;IACpE,CAAC;IAED,gEAAgE;IAChE,qEAAqE;IACrE,sEAAsE;IACtE,4BAA4B;IAC5B,EAAE;IACF,iEAAiE;IACjE,qEAAqE;IACrE,kEAAkE;IAClE,4EAA4E;IAC5E,iEAAiE;IACzD,WAAW;QAChB,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,UAAU,IAAI,gBAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;QAC/E,MAAM,EAAE,GAAG,YAAE,CAAC,QAAQ,CACnB,GAAG,EACH,YAAE,CAAC,SAAS,CAAC,QAAQ,GAAG,YAAE,CAAC,SAAS,CAAC,OAAO,GAAG,YAAE,CAAC,SAAS,CAAC,MAAM,EAClE,KAAK,CACP,CAAC;QACF,IAAI,CAAC;YACF,YAAE,CAAC,aAAa,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QACrD,CAAC;gBAAS,CAAC;YACR,YAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACpB,CAAC;QACD,YAAE,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACvC,CAAC;IAEM,eAAe,CAAC,gBAAwB;QAC5C,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,0DAA0D;QAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,YAAY;YACvD,gBAAgB,CAAC;QACpB,IAAI,CAAC,WAAW,EAAE,CAAC;IACtB,CAAC;IAEM,UAAU,CAAC,WAAmB;QAClC,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,qDAAqD;QACrD,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,OAAO,GAAG,WAAW,CAAC;QACpE,IAAI,CAAC,WAAW,EAAE,CAAC;IACtB,CAAC;IAEM,eAAe;QACnB,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC;IACrE,CAAC;IAEM,UAAU;QACd,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC;IAChE,CAAC;IAEM,cAAc,CAAC,SAAkB,EAAE,WAAmB;QAC1D,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,qBAAqB;YAChE,CAAC,SAAS,CAAC;QACd,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,WAAW,GAAG,WAAW,CAAC;QACxE,IAAI,CAAC,WAAW,EAAE,CAAC;IACtB,CAAC;IAEM,uBAAuB;QAC3B,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC;QACtE,MAAM,qBAAqB,GACxB,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,qBAAqB,CAAC;QACvE,MAAM,QAAQ,GAAG,qBAAqB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC7D,OAAO,GAAG,QAAQ,IAAI,GAAG,EAAE,CAAC;IAC/B,CAAC;IAED,cAAc;QACX,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC;IACpE,CAAC;IAEM,iBAAiB,CAAC,cAAsB;QAC5C,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,cAAc;YACzD,cAAc,CAAC;QAClB,IAAI,CAAC,WAAW,EAAE,CAAC;IACtB,CAAC;IAEM,iBAAiB;QACrB,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,cAAc,CAAC;IACvE,CAAC;IAEM,aAAa,CAAC,QAAgB,EAAE,KAAa;QACjD,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,EAAE,CAAC;YAClD,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;QACtD,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,UAAU,GAAG;YACxD,QAAQ;YACR,KAAK;SACP,CAAC;QACF,IAAI,CAAC,WAAW,EAAE,CAAC;IACtB,CAAC;IAEM,aAAa;QACjB,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC;IACnE,CAAC;IAEM,eAAe,CAAC,YAAoB;QACxC,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,YAAY,GAAG,YAAY,CAAC;QAC1E,IAAI,CAAC,WAAW,EAAE,CAAC;IACtB,CAAC;IAEM,eAAe;QACnB,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC;IACrE,CAAC;IAEM,gBAAgB;QACpB,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,OAAO,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,CAAC;IACjE,CAAC;IAEM,UAAU;QACd,OAAO;YACJ,aAAa,EAAE,IAAI,CAAC,uBAAuB,EAAE;SAC/C,CAAC;IACL,CAAC;IAEM,aAAa;QACjB,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;QACnD,IAAI,CAAC,WAAW,EAAE,CAAC;IACtB,CAAC;IAEM,cAAc,CAAC,WAAwB;QAC3C,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,MAAM,CAAC,iBAAiB,GAAG,WAAW,CAAC;QAC5C,IAAI,CAAC,WAAW,EAAE,CAAC;IACtB,CAAC;IAEM,cAAc;QAClB,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC,MAAM,CAAC,iBAAiB,IAAI,YAAY,CAAC;IACxD,CAAC;IAEM,YAAY;;QAChB,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,MAAM,WAAW,GACd,MAAA,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,0CAAE,WAAW,CAAC;QAE9D,IAAI,CAAC,WAAW,EAAE,CAAC;YAChB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,+BAA+B,EAAE,CAAC;QACpE,CAAC;QAED,MAAM,qBAAqB,GACxB,MAAA,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,WAAW,CAAC,0CAAE,qBAAqB,CAAC;QACxE,IAAI,qBAAqB,EAAE,CAAC;YACzB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC;YACF,MAAM,OAAO,GAAG,IAAA,sBAAS,EAAa,WAAW,CAAC,CAAC;YACnD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;YAElD,IAAI,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,GAAG,WAAW,EAAE,CAAC;gBAC5C,OAAO;oBACJ,KAAK,EAAE,KAAK;oBACZ,MAAM,EAAE,oCAAoC;iBAC9C,CAAC;YACL,CAAC;YAED,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAC1B,CAAC;QAAC,WAAM,CAAC;YACN,OAAO;gBACJ,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,2CAA2C;aACrD,CAAC;QACL,CAAC;IACJ,CAAC;IAEM,WAAW;QACf,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAExC,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;YACrB,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;YAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;YAElC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,uBAAW,CAAC,CAAC,CAAC;YACtC,eAAM,CAAC,IAAI,CAAC,iBAAiB,eAAK,CAAC,KAAK,CAAC,YAAY,IAAI,SAAS,CAAC,EAAE,CAAC,CAAC;YACvE,eAAM,CAAC,IAAI,CAAC,gBAAgB,eAAK,CAAC,KAAK,CAAC,OAAO,IAAI,SAAS,CAAC,EAAE,CAAC,CAAC;QACpE,CAAC;aAAM,CAAC;YACL,eAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;YACrC,eAAM,CAAC,KAAK,CACT,WAAW,CAAC,MAAM,IAAI,0CAA0C,CAClE,CAAC;QACL,CAAC;IACJ,CAAC;CACH;AA3QD,kDA2QC"}
|
|
@@ -23,13 +23,25 @@ describe("ClientConfiguration", () => {
|
|
|
23
23
|
let clientConfig;
|
|
24
24
|
let readFileSyncStub;
|
|
25
25
|
let writeFileSyncStub;
|
|
26
|
+
let renameSyncStub;
|
|
26
27
|
let customConfigPath;
|
|
28
|
+
// Simulate a real ENOENT from readFileSync (has `.code = "ENOENT"`).
|
|
29
|
+
// A bare `Error("File not found")` no longer triggers first-time-setup —
|
|
30
|
+
// loadConfig now rethrows non-ENOENT errors instead of silently masking them.
|
|
31
|
+
const enoent = () => Object.assign(new Error("ENOENT"), { code: "ENOENT" });
|
|
32
|
+
// Pull the most-recent persisted config payload off the stubs. Atomic writes
|
|
33
|
+
// go through writeFileSync(tmpPath, json) followed by renameSync(tmp, path).
|
|
34
|
+
const lastWrittenConfig = () => {
|
|
35
|
+
const args = writeFileSyncStub.lastCall.args;
|
|
36
|
+
return JSON.parse(args[1]);
|
|
37
|
+
};
|
|
27
38
|
beforeEach(() => {
|
|
28
39
|
customConfigPath = (0, path_1.join)(os_1.default.homedir(), ".cred_test");
|
|
29
40
|
clientConfig = new clientconfiguration_1.ClientConfiguration(customConfigPath);
|
|
30
41
|
fs_1.default.writeFileSync(customConfigPath, "{}");
|
|
31
42
|
readFileSyncStub = sinon_1.default.stub(fs_1.default, "readFileSync");
|
|
32
43
|
writeFileSyncStub = sinon_1.default.stub(fs_1.default, "writeFileSync");
|
|
44
|
+
renameSyncStub = sinon_1.default.stub(fs_1.default, "renameSync");
|
|
33
45
|
});
|
|
34
46
|
afterEach(() => {
|
|
35
47
|
sinon_1.default.restore();
|
|
@@ -38,13 +50,26 @@ describe("ClientConfiguration", () => {
|
|
|
38
50
|
}
|
|
39
51
|
});
|
|
40
52
|
it("should load the default config if the file does not exist", () => {
|
|
41
|
-
readFileSyncStub.throws(
|
|
53
|
+
readFileSyncStub.throws(enoent());
|
|
42
54
|
clientConfig.loadConfig();
|
|
43
55
|
(0, chai_1.expect)(clientConfig["config"]).to.deep.equal({
|
|
44
56
|
configPerEnvironment: fullPerEnv(),
|
|
45
57
|
activeEnvironment: "production",
|
|
46
58
|
});
|
|
47
59
|
});
|
|
60
|
+
it("should throw loudly when the config file is unparseable", () => {
|
|
61
|
+
// Non-atomic writes from older binaries can leave `.cred` truncated.
|
|
62
|
+
// loadConfig must fail loud instead of silently overwriting — a silent
|
|
63
|
+
// reset erases the access token for every subsequent caller.
|
|
64
|
+
readFileSyncStub.returns("{ not json");
|
|
65
|
+
(0, chai_1.expect)(() => clientConfig.loadConfig()).to.throw(/may be corrupt/);
|
|
66
|
+
(0, chai_1.expect)(writeFileSyncStub.called).to.be.false;
|
|
67
|
+
});
|
|
68
|
+
it("should throw when readFileSync fails with a non-ENOENT error", () => {
|
|
69
|
+
const eacces = Object.assign(new Error("EACCES"), { code: "EACCES" });
|
|
70
|
+
readFileSyncStub.throws(eacces);
|
|
71
|
+
(0, chai_1.expect)(() => clientConfig.loadConfig()).to.throw(/EACCES/);
|
|
72
|
+
});
|
|
48
73
|
it("should load the config file correctly", () => {
|
|
49
74
|
const mockConfig = {
|
|
50
75
|
configPerEnvironment: {
|
|
@@ -82,19 +107,20 @@ describe("ClientConfiguration", () => {
|
|
|
82
107
|
.false;
|
|
83
108
|
});
|
|
84
109
|
it("should set and get the project correctly", () => {
|
|
85
|
-
readFileSyncStub.throws(
|
|
110
|
+
readFileSyncStub.throws(enoent());
|
|
86
111
|
clientConfig.setProject("new-project");
|
|
87
|
-
(0, chai_1.expect)(
|
|
112
|
+
(0, chai_1.expect)(lastWrittenConfig()).to.deep.equal({
|
|
88
113
|
configPerEnvironment: fullPerEnv({
|
|
89
114
|
production: { project: "new-project" },
|
|
90
115
|
}),
|
|
91
116
|
activeEnvironment: "production",
|
|
92
|
-
})
|
|
117
|
+
});
|
|
118
|
+
(0, chai_1.expect)(renameSyncStub.lastCall.args[1]).to.equal(customConfigPath);
|
|
93
119
|
});
|
|
94
120
|
it("should set and get the access token correctly", () => {
|
|
95
|
-
readFileSyncStub.throws(
|
|
121
|
+
readFileSyncStub.throws(enoent());
|
|
96
122
|
clientConfig.setAccessToken(false, "token-123");
|
|
97
|
-
(0, chai_1.expect)(
|
|
123
|
+
(0, chai_1.expect)(lastWrittenConfig()).to.deep.equal({
|
|
98
124
|
configPerEnvironment: fullPerEnv({
|
|
99
125
|
production: {
|
|
100
126
|
isServiceAccountToken: true,
|
|
@@ -102,45 +128,49 @@ describe("ClientConfiguration", () => {
|
|
|
102
128
|
},
|
|
103
129
|
}),
|
|
104
130
|
activeEnvironment: "production",
|
|
105
|
-
})
|
|
131
|
+
});
|
|
106
132
|
});
|
|
107
|
-
it("should
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
configPerEnvironment: fullPerEnv({
|
|
133
|
+
it("should preserve other per-env fields when setting access token", () => {
|
|
134
|
+
// Valid initial config (with an activeEnvironment so loadConfig accepts it).
|
|
135
|
+
readFileSyncStub.returns(JSON.stringify({
|
|
136
|
+
configPerEnvironment: {
|
|
112
137
|
production: {
|
|
113
|
-
|
|
114
|
-
accessToken: "new-token",
|
|
138
|
+
auth: { username: "user", password: "pass" },
|
|
115
139
|
},
|
|
116
|
-
}
|
|
140
|
+
},
|
|
117
141
|
activeEnvironment: "production",
|
|
118
|
-
}))
|
|
142
|
+
}));
|
|
143
|
+
clientConfig.setAccessToken(true, "new-token");
|
|
144
|
+
(0, chai_1.expect)(lastWrittenConfig().configPerEnvironment.production).to.deep.equal({
|
|
145
|
+
auth: { username: "user", password: "pass" },
|
|
146
|
+
isServiceAccountToken: false,
|
|
147
|
+
accessToken: "new-token",
|
|
148
|
+
});
|
|
119
149
|
});
|
|
120
150
|
it("should set and get organization", () => {
|
|
121
|
-
readFileSyncStub.throws(
|
|
151
|
+
readFileSyncStub.throws(enoent());
|
|
122
152
|
clientConfig.setOrganization("my-org");
|
|
123
|
-
(0, chai_1.expect)(
|
|
153
|
+
(0, chai_1.expect)(lastWrittenConfig()).to.deep.equal({
|
|
124
154
|
configPerEnvironment: fullPerEnv({
|
|
125
155
|
production: { organization: "my-org" },
|
|
126
156
|
}),
|
|
127
157
|
activeEnvironment: "production",
|
|
128
|
-
})
|
|
158
|
+
});
|
|
129
159
|
});
|
|
130
160
|
it("should set and get refresh token", () => {
|
|
131
|
-
readFileSyncStub.throws(
|
|
161
|
+
readFileSyncStub.throws(enoent());
|
|
132
162
|
clientConfig.setRefreshToken("refresh-token-123");
|
|
133
|
-
(0, chai_1.expect)(
|
|
163
|
+
(0, chai_1.expect)(lastWrittenConfig()).to.deep.equal({
|
|
134
164
|
configPerEnvironment: fullPerEnv({
|
|
135
165
|
production: { refreshToken: "refresh-token-123" },
|
|
136
166
|
}),
|
|
137
167
|
activeEnvironment: "production",
|
|
138
|
-
})
|
|
168
|
+
});
|
|
139
169
|
});
|
|
140
170
|
it("should set and get VSCode user", () => {
|
|
141
|
-
readFileSyncStub.throws(
|
|
171
|
+
readFileSyncStub.throws(enoent());
|
|
142
172
|
clientConfig.setVSCodeUser("testuser", "test@example.com");
|
|
143
|
-
(0, chai_1.expect)(
|
|
173
|
+
(0, chai_1.expect)(lastWrittenConfig()).to.deep.equal({
|
|
144
174
|
configPerEnvironment: fullPerEnv({
|
|
145
175
|
production: {
|
|
146
176
|
vsCodeUser: {
|
|
@@ -150,17 +180,17 @@ describe("ClientConfiguration", () => {
|
|
|
150
180
|
},
|
|
151
181
|
}),
|
|
152
182
|
activeEnvironment: "production",
|
|
153
|
-
})
|
|
183
|
+
});
|
|
154
184
|
});
|
|
155
185
|
it("should set and get JWT access token", () => {
|
|
156
|
-
readFileSyncStub.throws(
|
|
186
|
+
readFileSyncStub.throws(enoent());
|
|
157
187
|
clientConfig.setJwtAccessToken("jwt-token-abc");
|
|
158
|
-
(0, chai_1.expect)(
|
|
188
|
+
(0, chai_1.expect)(lastWrittenConfig()).to.deep.equal({
|
|
159
189
|
configPerEnvironment: fullPerEnv({
|
|
160
190
|
production: { jwtAccessToken: "jwt-token-abc" },
|
|
161
191
|
}),
|
|
162
192
|
activeEnvironment: "production",
|
|
163
|
-
})
|
|
193
|
+
});
|
|
164
194
|
});
|
|
165
195
|
it("should return true for doesConfigExists when environment config exists", () => {
|
|
166
196
|
const mockConfig = {
|
|
@@ -185,19 +215,18 @@ describe("ClientConfiguration", () => {
|
|
|
185
215
|
};
|
|
186
216
|
readFileSyncStub.returns(JSON.stringify(mockConfig));
|
|
187
217
|
clientConfig.destroyConfig();
|
|
188
|
-
|
|
189
|
-
(0, chai_1.expect)(JSON.parse(lastWrite)).to.deep.equal({
|
|
218
|
+
(0, chai_1.expect)(lastWrittenConfig()).to.deep.equal({
|
|
190
219
|
configPerEnvironment: fullPerEnv(),
|
|
191
220
|
activeEnvironment: "production",
|
|
192
221
|
});
|
|
193
222
|
});
|
|
194
223
|
it("should set and get environment", () => {
|
|
195
|
-
readFileSyncStub.throws(
|
|
224
|
+
readFileSyncStub.throws(enoent());
|
|
196
225
|
clientConfig.setEnvironment("staging");
|
|
197
|
-
(0, chai_1.expect)(
|
|
226
|
+
(0, chai_1.expect)(lastWrittenConfig()).to.deep.equal({
|
|
198
227
|
configPerEnvironment: fullPerEnv(),
|
|
199
228
|
activeEnvironment: "staging",
|
|
200
|
-
})
|
|
229
|
+
});
|
|
201
230
|
});
|
|
202
231
|
it("should return headers with Bearer token for user tokens", () => {
|
|
203
232
|
const mockConfig = {
|
|
@@ -233,10 +262,12 @@ describe("ClientConfiguration", () => {
|
|
|
233
262
|
const headers = clientConfig.getHeaders();
|
|
234
263
|
(0, chai_1.expect)(headers.Authorization).to.equal("ApiKey service-token");
|
|
235
264
|
});
|
|
236
|
-
it("should
|
|
265
|
+
it("should throw when config file is missing activeEnvironment", () => {
|
|
266
|
+
// Previously loadConfig silently reset to defaults — that turned one
|
|
267
|
+
// corrupt read into permanent state loss for every caller. Now we fail loud.
|
|
237
268
|
readFileSyncStub.returns(JSON.stringify({ configPerEnvironment: {} }));
|
|
238
|
-
clientConfig.loadConfig();
|
|
239
|
-
(0, chai_1.expect)(
|
|
269
|
+
(0, chai_1.expect)(() => clientConfig.loadConfig()).to.throw(/Invalid config structure/);
|
|
270
|
+
(0, chai_1.expect)(writeFileSyncStub.called).to.be.false;
|
|
240
271
|
});
|
|
241
272
|
describe("isTokenValid", () => {
|
|
242
273
|
it("should return invalid when no token exists", () => {
|
|
@@ -361,7 +392,8 @@ describe("ClientConfiguration", () => {
|
|
|
361
392
|
clientConfig.printStatus();
|
|
362
393
|
(0, chai_1.expect)(loggerStub.info.calledWith(sinon_1.default.match("Organization:"))).to.be
|
|
363
394
|
.true;
|
|
364
|
-
(0, chai_1.expect)(loggerStub.info.calledWith(sinon_1.default.match("
|
|
395
|
+
(0, chai_1.expect)(loggerStub.info.calledWith(sinon_1.default.match("Environment:"))).to.be
|
|
396
|
+
.true;
|
|
365
397
|
});
|
|
366
398
|
it("should print error when token is invalid", () => {
|
|
367
399
|
const mockConfig = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clientconfiguration.spec.js","sourceRoot":"","sources":["../src/clientconfiguration.spec.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"clientconfiguration.spec.js","sourceRoot":"","sources":["../src/clientconfiguration.spec.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/add.js
CHANGED
|
@@ -6,21 +6,34 @@ const createconnections_1 = require("./connection/createconnections");
|
|
|
6
6
|
const addmember_1 = require("./group/addmember");
|
|
7
7
|
const creategroup_1 = require("./group/creategroup");
|
|
8
8
|
const createToken_1 = require("./groupaccesstoken/createToken");
|
|
9
|
-
const
|
|
9
|
+
const createenvironment_1 = require("./environment/createenvironment");
|
|
10
|
+
const legacy_1 = require("./legacy");
|
|
10
11
|
const registerAddCommands = (cli, environment) => {
|
|
11
12
|
const add = cli
|
|
12
13
|
.command("add")
|
|
13
14
|
.description("Add a resource")
|
|
14
15
|
.argument("<resource>", "The resource to add");
|
|
16
|
+
const addEnvironmentAction = (environmentName, options) => {
|
|
17
|
+
(0, createenvironment_1.createEnvironment)(constants_1.controlPlanesByEnv[environment], environmentName, options.readmeFile, options.replication, options.debug, options.yes);
|
|
18
|
+
};
|
|
19
|
+
add.command("environment")
|
|
20
|
+
.description("Add an environment.")
|
|
21
|
+
.argument("<environmentName>", "The name of the environment to create.")
|
|
22
|
+
.option("--debug")
|
|
23
|
+
.option("-y, --yes", "Skip confirmation.")
|
|
24
|
+
.option("--readmeFile <readmeFile>", "The path to the readme file for the environment.")
|
|
25
|
+
.option("--replication <replicationCount>", "The replication count (must be at least 1).", parseInt)
|
|
26
|
+
.action(addEnvironmentAction);
|
|
15
27
|
add.command("project")
|
|
16
|
-
.description("
|
|
17
|
-
.argument("<projectName>", "The name of the
|
|
28
|
+
.description("[deprecated] Alias for 'add environment'.")
|
|
29
|
+
.argument("<projectName>", "The name of the environment to create.")
|
|
18
30
|
.option("--debug")
|
|
19
31
|
.option("-y, --yes", "Skip confirmation.")
|
|
20
|
-
.option("--readmeFile <readmeFile>", "The path to the readme file for the
|
|
32
|
+
.option("--readmeFile <readmeFile>", "The path to the readme file for the environment.")
|
|
21
33
|
.option("--replication <replicationCount>", "The replication count (must be at least 1).", parseInt)
|
|
22
34
|
.action((projectName, options) => {
|
|
23
|
-
(0,
|
|
35
|
+
(0, legacy_1.warnProjectDeprecated)("add environment");
|
|
36
|
+
addEnvironmentAction(projectName, options);
|
|
24
37
|
});
|
|
25
38
|
add.command("connection")
|
|
26
39
|
.argument("<connectionFileName>", "The path to the file containing the connections to create.")
|
package/dist/commands/add.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add.js","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"add.js","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"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"}
|