@credibledata/cred-cli 0.0.102 → 0.0.103

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.
Files changed (118) hide show
  1. package/README.md +1 -1
  2. package/coverage/coverage-summary.json +40 -0
  3. package/coverage/tmp/coverage-2152-1789496974457-0.json +1 -0
  4. package/coverage/tmp/coverage-2153-1789496954404-0.json +1 -0
  5. package/dist/client/api.js +4193 -1342
  6. package/dist/client/api.js.map +1 -1
  7. package/dist/clientconfiguration.js +57 -4
  8. package/dist/clientconfiguration.js.map +1 -1
  9. package/dist/clientconfiguration.spec.js +90 -0
  10. package/dist/clientconfiguration.spec.js.map +1 -1
  11. package/dist/commands/add.js +18 -0
  12. package/dist/commands/add.js.map +1 -1
  13. package/dist/commands/environment/updateenvironment.js +63 -1
  14. package/dist/commands/environment/updateenvironment.js.map +1 -1
  15. package/dist/commands/environment/updateenvironment.spec.js +84 -0
  16. package/dist/commands/environment/updateenvironment.spec.js.map +1 -1
  17. package/dist/commands/get.js +52 -1
  18. package/dist/commands/get.js.map +1 -1
  19. package/dist/commands/list.js +78 -0
  20. package/dist/commands/list.js.map +1 -1
  21. package/dist/commands/materialization/cancelrun.js +62 -0
  22. package/dist/commands/materialization/cancelrun.js.map +1 -0
  23. package/dist/commands/materialization/getindex.js +52 -0
  24. package/dist/commands/materialization/getindex.js.map +1 -0
  25. package/dist/commands/materialization/getmaterialization.js +54 -0
  26. package/dist/commands/materialization/getmaterialization.js.map +1 -0
  27. package/dist/commands/materialization/getpreaggregate.js +55 -0
  28. package/dist/commands/materialization/getpreaggregate.js.map +1 -0
  29. package/dist/commands/materialization/getrun.js +54 -0
  30. package/dist/commands/materialization/getrun.js.map +1 -0
  31. package/dist/commands/materialization/listindexes.js +58 -0
  32. package/dist/commands/materialization/listindexes.js.map +1 -0
  33. package/dist/commands/materialization/listmaterializations.js +52 -0
  34. package/dist/commands/materialization/listmaterializations.js.map +1 -0
  35. package/dist/commands/materialization/listpreaggregates.js +61 -0
  36. package/dist/commands/materialization/listpreaggregates.js.map +1 -0
  37. package/dist/commands/materialization/listruns.js +60 -0
  38. package/dist/commands/materialization/listruns.js.map +1 -0
  39. package/dist/commands/materialization/rerun.js +111 -0
  40. package/dist/commands/materialization/rerun.js.map +1 -0
  41. package/dist/commands/misc/login.js +14 -0
  42. package/dist/commands/misc/login.js.map +1 -1
  43. package/dist/commands/misc/login.spec.js +92 -0
  44. package/dist/commands/misc/login.spec.js.map +1 -1
  45. package/dist/commands/package/listpackages.js +7 -0
  46. package/dist/commands/package/listpackages.js.map +1 -1
  47. package/dist/commands/package/listpackages.spec.js +12 -0
  48. package/dist/commands/package/listpackages.spec.js.map +1 -1
  49. package/dist/commands/package/publish.js +34 -11
  50. package/dist/commands/package/publish.js.map +1 -1
  51. package/dist/commands/package/publish.spec.js +26 -28
  52. package/dist/commands/package/publish.spec.js.map +1 -1
  53. package/dist/commands/permission/createpermission.js +123 -0
  54. package/dist/commands/permission/createpermission.js.map +1 -0
  55. package/dist/commands/permission/createpermission.spec.js +360 -0
  56. package/dist/commands/permission/createpermission.spec.js.map +1 -0
  57. package/dist/commands/permission/deletepermission.js +86 -0
  58. package/dist/commands/permission/deletepermission.js.map +1 -0
  59. package/dist/commands/permission/getpermission.js +85 -0
  60. package/dist/commands/permission/getpermission.js.map +1 -0
  61. package/dist/commands/permission/listpermissions.js +75 -0
  62. package/dist/commands/permission/listpermissions.js.map +1 -0
  63. package/dist/commands/permission/scope.js +140 -0
  64. package/dist/commands/permission/scope.js.map +1 -0
  65. package/dist/commands/rm.js +11 -0
  66. package/dist/commands/rm.js.map +1 -1
  67. package/dist/commands/update.js +18 -12
  68. package/dist/commands/update.js.map +1 -1
  69. package/dist/common/UserGroupId.js +1 -1
  70. package/dist/common/UserGroupId.js.map +1 -1
  71. package/dist/common/UserGroupId.spec.js +2 -4
  72. package/dist/common/UserGroupId.spec.js.map +1 -1
  73. package/dist/constants.js +48 -0
  74. package/dist/constants.js.map +1 -1
  75. package/dist/index.js +61 -6
  76. package/dist/index.js.map +1 -1
  77. package/dist/logger.js +5 -1
  78. package/dist/logger.js.map +1 -1
  79. package/openapitools.json +4 -1
  80. package/package.json +5 -3
  81. package/src/client/api.ts +6433 -1533
  82. package/src/clientconfiguration.spec.ts +126 -0
  83. package/src/clientconfiguration.ts +64 -4
  84. package/src/commands/add.ts +43 -0
  85. package/src/commands/environment/updateenvironment.spec.ts +167 -0
  86. package/src/commands/environment/updateenvironment.ts +85 -1
  87. package/src/commands/get.ts +110 -1
  88. package/src/commands/list.ts +171 -0
  89. package/src/commands/materialization/cancelrun.ts +70 -0
  90. package/src/commands/materialization/getindex.ts +55 -0
  91. package/src/commands/materialization/getmaterialization.ts +57 -0
  92. package/src/commands/materialization/getpreaggregate.ts +58 -0
  93. package/src/commands/materialization/getrun.ts +55 -0
  94. package/src/commands/materialization/listindexes.ts +69 -0
  95. package/src/commands/materialization/listmaterializations.ts +53 -0
  96. package/src/commands/materialization/listpreaggregates.ts +74 -0
  97. package/src/commands/materialization/listruns.ts +77 -0
  98. package/src/commands/materialization/rerun.ts +123 -0
  99. package/src/commands/misc/login.spec.ts +118 -2
  100. package/src/commands/misc/login.ts +14 -0
  101. package/src/commands/package/listpackages.spec.ts +16 -0
  102. package/src/commands/package/listpackages.ts +7 -0
  103. package/src/commands/package/publish.spec.ts +45 -30
  104. package/src/commands/package/publish.ts +31 -10
  105. package/src/commands/permission/createpermission.spec.ts +507 -0
  106. package/src/commands/permission/createpermission.ts +181 -0
  107. package/src/commands/permission/deletepermission.ts +117 -0
  108. package/src/commands/permission/getpermission.ts +115 -0
  109. package/src/commands/permission/listpermissions.ts +101 -0
  110. package/src/commands/permission/scope.ts +180 -0
  111. package/src/commands/rm.ts +29 -0
  112. package/src/commands/update.ts +50 -27
  113. package/src/common/UserGroupId.spec.ts +2 -4
  114. package/src/common/UserGroupId.ts +1 -1
  115. package/src/constants.ts +50 -1
  116. package/src/index.ts +94 -11
  117. package/src/logger.ts +5 -1
  118. package/bun.lock +0 -934
@@ -0,0 +1,360 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
36
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
37
+ return new (P || (P = Promise))(function (resolve, reject) {
38
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
39
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
40
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
41
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
42
+ });
43
+ };
44
+ var __importDefault = (this && this.__importDefault) || function (mod) {
45
+ return (mod && mod.__esModule) ? mod : { "default": mod };
46
+ };
47
+ Object.defineProperty(exports, "__esModule", { value: true });
48
+ const chai_1 = require("chai");
49
+ const sinon_1 = __importDefault(require("sinon"));
50
+ const api_1 = require("../../client/api");
51
+ const clientconfiguration_1 = require("../../clientconfiguration");
52
+ const logger_1 = require("../../logger");
53
+ const utils = __importStar(require("../../utils"));
54
+ const createpermission_1 = require("./createpermission");
55
+ describe("add-permission", () => {
56
+ let sandbox;
57
+ let createOrgStub;
58
+ let createEnvStub;
59
+ let createPkgStub;
60
+ let loggerStub;
61
+ let consoleLogStub;
62
+ let processExitStub;
63
+ let confirmStub;
64
+ beforeEach(() => {
65
+ sandbox = sinon_1.default.createSandbox();
66
+ createOrgStub = sandbox.stub().resolves({ data: {} });
67
+ createEnvStub = sandbox.stub().resolves({ data: {} });
68
+ createPkgStub = sandbox.stub().resolves({ data: {} });
69
+ loggerStub = sandbox.stub(logger_1.logger);
70
+ consoleLogStub = sandbox.stub(console, "log");
71
+ processExitStub = sandbox.stub(process, "exit");
72
+ confirmStub = sandbox.stub(utils, "getConfirmation").resolves(true);
73
+ sandbox
74
+ .stub(clientconfiguration_1.ClientConfiguration.prototype, "getOrganization")
75
+ .returns("test-org");
76
+ sandbox
77
+ .stub(clientconfiguration_1.ClientConfiguration.prototype, "getProject")
78
+ .returns("configured-env");
79
+ sandbox
80
+ .stub(clientconfiguration_1.ClientConfiguration.prototype, "doesConfigExists")
81
+ .returns(true);
82
+ sandbox
83
+ .stub(clientconfiguration_1.ClientConfiguration.prototype, "getAuthenticationHeader")
84
+ .returns("Bearer test-token");
85
+ sandbox
86
+ .stub(api_1.OrganizationPermissionsApi.prototype, "createOrganizationPermission")
87
+ .callsFake(createOrgStub);
88
+ sandbox
89
+ .stub(api_1.EnvironmentPermissionsApi.prototype, "createEnvironmentPermission")
90
+ .callsFake(createEnvStub);
91
+ sandbox
92
+ .stub(api_1.PackagePermissionsApi.prototype, "createPackagePermission")
93
+ .callsFake(createPkgStub);
94
+ });
95
+ afterEach(() => {
96
+ sandbox.restore();
97
+ });
98
+ it("grants a group an organization role", () => __awaiter(void 0, void 0, void 0, function* () {
99
+ yield (0, createpermission_1.createPermission)("http://test-server", "group:ci-bot", "admin", false, {
100
+ yes: true,
101
+ });
102
+ (0, chai_1.expect)(createOrgStub.calledOnce).to.be.true;
103
+ (0, chai_1.expect)(createOrgStub.firstCall.args[0]).to.equal("test-org");
104
+ // The subject must reach the API as the typed string. A group sent as a
105
+ // UserGroupId object or as a bare name addresses no tuple, so the grant
106
+ // would report success while leaving the group without the role.
107
+ (0, chai_1.expect)(createOrgStub.firstCall.args[2]).to.deep.equal({
108
+ userGroupId: "group:ci-bot",
109
+ permission: "admin",
110
+ });
111
+ (0, chai_1.expect)(createOrgStub.firstCall.args[3]).to.deep.include({
112
+ baseURL: "http://test-server",
113
+ headers: { Authorization: "Bearer test-token" },
114
+ });
115
+ (0, chai_1.expect)(createEnvStub.called).to.be.false;
116
+ (0, chai_1.expect)(createPkgStub.called).to.be.false;
117
+ }));
118
+ it("grants a user an organization role", () => __awaiter(void 0, void 0, void 0, function* () {
119
+ yield (0, createpermission_1.createPermission)("http://test-server", "user:someone@example.com", "member", false, { yes: true });
120
+ (0, chai_1.expect)(createOrgStub.firstCall.args[2]).to.deep.equal({
121
+ userGroupId: "user:someone@example.com",
122
+ permission: "member",
123
+ });
124
+ }));
125
+ it("grants on an environment when one is named", () => __awaiter(void 0, void 0, void 0, function* () {
126
+ yield (0, createpermission_1.createPermission)("http://test-server", "group:ci-bot", "viewer", false, {
127
+ environment: "sales",
128
+ });
129
+ (0, chai_1.expect)(createEnvStub.calledOnce).to.be.true;
130
+ (0, chai_1.expect)(createEnvStub.firstCall.args[0]).to.equal("test-org");
131
+ (0, chai_1.expect)(createEnvStub.firstCall.args[1]).to.equal("sales");
132
+ (0, chai_1.expect)(createEnvStub.firstCall.args[4]).to.deep.equal({
133
+ userGroupId: "group:ci-bot",
134
+ permission: "viewer",
135
+ });
136
+ (0, chai_1.expect)(createOrgStub.called).to.be.false;
137
+ }));
138
+ it("grants on a package, taking the environment from the config", () => __awaiter(void 0, void 0, void 0, function* () {
139
+ yield (0, createpermission_1.createPermission)("http://test-server", "group:ci-bot", "viewer", false, {
140
+ package: "orders",
141
+ });
142
+ (0, chai_1.expect)(createPkgStub.calledOnce).to.be.true;
143
+ (0, chai_1.expect)(createPkgStub.firstCall.args[1]).to.equal("configured-env");
144
+ (0, chai_1.expect)(createPkgStub.firstCall.args[2]).to.equal("orders");
145
+ (0, chai_1.expect)(createPkgStub.firstCall.args[5]).to.deep.equal({
146
+ userGroupId: "group:ci-bot",
147
+ permission: "viewer",
148
+ });
149
+ }));
150
+ it("prefers an explicit environment over the configured one for a package", () => __awaiter(void 0, void 0, void 0, function* () {
151
+ yield (0, createpermission_1.createPermission)("http://test-server", "group:ci-bot", "viewer", false, {
152
+ environment: "explicit-env",
153
+ package: "orders",
154
+ });
155
+ (0, chai_1.expect)(createPkgStub.firstCall.args[1]).to.equal("explicit-env");
156
+ }));
157
+ it("rejects a role the organization does not define", () => __awaiter(void 0, void 0, void 0, function* () {
158
+ // viewer belongs to environments and packages; the organization ends in member.
159
+ yield (0, createpermission_1.createPermission)("http://test-server", "group:ci-bot", "viewer", false, {
160
+ yes: true,
161
+ });
162
+ (0, chai_1.expect)(createOrgStub.called).to.be.false;
163
+ (0, chai_1.expect)(processExitStub.calledWith(1)).to.be.true;
164
+ (0, chai_1.expect)(loggerStub.error.calledWith(sinon_1.default.match("Invalid role 'viewer'")))
165
+ .to.be.true;
166
+ }));
167
+ it("rejects a role an environment does not define", () => __awaiter(void 0, void 0, void 0, function* () {
168
+ yield (0, createpermission_1.createPermission)("http://test-server", "group:ci-bot", "member", false, {
169
+ environment: "sales",
170
+ });
171
+ (0, chai_1.expect)(createEnvStub.called).to.be.false;
172
+ (0, chai_1.expect)(processExitStub.calledWith(1)).to.be.true;
173
+ }));
174
+ it("rejects public access as an environment admin", () => __awaiter(void 0, void 0, void 0, function* () {
175
+ yield (0, createpermission_1.createPermission)("http://test-server", "user:*", "admin", false, {
176
+ environment: "sales",
177
+ });
178
+ (0, chai_1.expect)(createEnvStub.called).to.be.false;
179
+ (0, chai_1.expect)(processExitStub.calledWith(1)).to.be.true;
180
+ }));
181
+ it("allows public access as an environment viewer", () => __awaiter(void 0, void 0, void 0, function* () {
182
+ yield (0, createpermission_1.createPermission)("http://test-server", "user:*", "viewer", false, {
183
+ environment: "sales",
184
+ });
185
+ (0, chai_1.expect)(createEnvStub.calledOnce).to.be.true;
186
+ (0, chai_1.expect)(createEnvStub.firstCall.args[4]).to.deep.equal({
187
+ userGroupId: "user:*",
188
+ permission: "viewer",
189
+ });
190
+ }));
191
+ it("allows public access as an organization modeler", () => __awaiter(void 0, void 0, void 0, function* () {
192
+ // The one organization role the model admits for the wildcard.
193
+ yield (0, createpermission_1.createPermission)("http://test-server", "user:*", "modeler", false, {
194
+ yes: true,
195
+ });
196
+ (0, chai_1.expect)(createOrgStub.calledOnce).to.be.true;
197
+ (0, chai_1.expect)(createOrgStub.firstCall.args[2]).to.deep.equal({
198
+ userGroupId: "user:*",
199
+ permission: "modeler",
200
+ });
201
+ }));
202
+ it("rejects every public-access role the model does not admit", () => __awaiter(void 0, void 0, void 0, function* () {
203
+ // Each of these reaches OpenFGA and fails there as a model validation
204
+ // error, so the refusal belongs before the request.
205
+ const cases = [
206
+ ["admin", { yes: true }],
207
+ ["member", { yes: true }],
208
+ ["modeler", { environment: "sales" }],
209
+ ["admin", { environment: "sales" }],
210
+ ["modeler", { environment: "sales", package: "orders" }],
211
+ ];
212
+ for (const [role, options] of cases) {
213
+ createOrgStub.resetHistory();
214
+ createEnvStub.resetHistory();
215
+ createPkgStub.resetHistory();
216
+ processExitStub.resetHistory();
217
+ yield (0, createpermission_1.createPermission)("http://test-server", "user:*", role, false, options);
218
+ const sent = createOrgStub.called ||
219
+ createEnvStub.called ||
220
+ createPkgStub.called;
221
+ (0, chai_1.expect)(sent, `public access with ${role} must not be sent`).to.be
222
+ .false;
223
+ (0, chai_1.expect)(processExitStub.calledWith(1)).to.be.true;
224
+ }
225
+ }));
226
+ it("rejects an empty --environment instead of widening to the organization", () => __awaiter(void 0, void 0, void 0, function* () {
227
+ // `--environment "$UNSET"` must not be read as "no environment given":
228
+ // that would grant on the organization, which is wider than asked for.
229
+ yield (0, createpermission_1.createPermission)("http://test-server", "group:ci-bot", "admin", false, {
230
+ environment: "",
231
+ yes: true,
232
+ });
233
+ (0, chai_1.expect)(createOrgStub.called).to.be.false;
234
+ (0, chai_1.expect)(createEnvStub.called).to.be.false;
235
+ (0, chai_1.expect)(processExitStub.calledWith(1)).to.be.true;
236
+ (0, chai_1.expect)(loggerStub.error.calledWith(sinon_1.default.match("--environment"))).to.be
237
+ .true;
238
+ }));
239
+ it("rejects an empty --package instead of widening to the environment", () => __awaiter(void 0, void 0, void 0, function* () {
240
+ yield (0, createpermission_1.createPermission)("http://test-server", "group:ci-bot", "viewer", false, {
241
+ environment: "sales",
242
+ package: "",
243
+ });
244
+ (0, chai_1.expect)(createPkgStub.called).to.be.false;
245
+ (0, chai_1.expect)(createEnvStub.called).to.be.false;
246
+ (0, chai_1.expect)(processExitStub.calledWith(1)).to.be.true;
247
+ }));
248
+ it("rejects a package role the server cannot write", () => __awaiter(void 0, void 0, void 0, function* () {
249
+ // A package reports admin and modeler because they are inherited from the
250
+ // environment, but only viewer is directly assignable there.
251
+ for (const role of ["admin", "modeler"]) {
252
+ createPkgStub.resetHistory();
253
+ processExitStub.resetHistory();
254
+ yield (0, createpermission_1.createPermission)("http://test-server", "group:ci-bot", role, false, {
255
+ environment: "sales",
256
+ package: "orders",
257
+ });
258
+ (0, chai_1.expect)(createPkgStub.called, `role ${role} must not be sent`).to.be
259
+ .false;
260
+ (0, chai_1.expect)(processExitStub.calledWith(1)).to.be.true;
261
+ }
262
+ }));
263
+ it("rejects a subject with no type", () => __awaiter(void 0, void 0, void 0, function* () {
264
+ yield (0, createpermission_1.createPermission)("http://test-server", "ci-bot", "admin", false, {
265
+ yes: true,
266
+ });
267
+ (0, chai_1.expect)(createOrgStub.called).to.be.false;
268
+ (0, chai_1.expect)(processExitStub.calledWith(1)).to.be.true;
269
+ }));
270
+ it("confirms before granting organization admin", () => __awaiter(void 0, void 0, void 0, function* () {
271
+ confirmStub.resolves(false);
272
+ yield (0, createpermission_1.createPermission)("http://test-server", "group:ci-bot", "admin", false, {});
273
+ (0, chai_1.expect)(confirmStub.calledOnce).to.be.true;
274
+ (0, chai_1.expect)(createOrgStub.called).to.be.false;
275
+ (0, chai_1.expect)(loggerStub.info.calledWith(sinon_1.default.match("Operation cancelled"))).to
276
+ .be.true;
277
+ }));
278
+ it("does not confirm for a narrower organization role", () => __awaiter(void 0, void 0, void 0, function* () {
279
+ yield (0, createpermission_1.createPermission)("http://test-server", "group:ci-bot", "modeler", false, {});
280
+ (0, chai_1.expect)(confirmStub.called).to.be.false;
281
+ (0, chai_1.expect)(createOrgStub.calledOnce).to.be.true;
282
+ }));
283
+ it("refuses --notifyPeople at the organization scope", () => __awaiter(void 0, void 0, void 0, function* () {
284
+ // The organization endpoint has no notify parameter and always sends, so
285
+ // accepting the flag there would promise control that does not exist.
286
+ yield (0, createpermission_1.createPermission)("http://test-server", "group:ci-bot", "admin", false, {
287
+ notifyPeople: true,
288
+ yes: true,
289
+ });
290
+ (0, chai_1.expect)(createOrgStub.called).to.be.false;
291
+ (0, chai_1.expect)(processExitStub.calledWith(1)).to.be.true;
292
+ (0, chai_1.expect)(loggerStub.error.calledWith(sinon_1.default.match("--notifyPeople"))).to.be
293
+ .true;
294
+ }));
295
+ it("accepts --notifyPeople on an environment", () => __awaiter(void 0, void 0, void 0, function* () {
296
+ yield (0, createpermission_1.createPermission)("http://test-server", "group:ci-bot", "viewer", false, {
297
+ environment: "sales",
298
+ notifyPeople: true,
299
+ });
300
+ (0, chai_1.expect)(createEnvStub.calledOnce).to.be.true;
301
+ (0, chai_1.expect)(createEnvStub.firstCall.args[3]).to.equal(true);
302
+ }));
303
+ it("defaults notifyPeople to false", () => __awaiter(void 0, void 0, void 0, function* () {
304
+ yield (0, createpermission_1.createPermission)("http://test-server", "group:ci-bot", "viewer", false, {
305
+ environment: "sales",
306
+ });
307
+ (0, chai_1.expect)(createEnvStub.firstCall.args[3]).to.equal(false);
308
+ }));
309
+ it("handles missing config", () => __awaiter(void 0, void 0, void 0, function* () {
310
+ sandbox.restore();
311
+ sandbox = sinon_1.default.createSandbox();
312
+ createOrgStub = sandbox.stub();
313
+ loggerStub = sandbox.stub(logger_1.logger);
314
+ sandbox.stub(console, "log");
315
+ processExitStub = sandbox.stub(process, "exit");
316
+ sandbox
317
+ .stub(clientconfiguration_1.ClientConfiguration.prototype, "doesConfigExists")
318
+ .returns(false);
319
+ sandbox
320
+ .stub(api_1.OrganizationPermissionsApi.prototype, "createOrganizationPermission")
321
+ .callsFake(createOrgStub);
322
+ yield (0, createpermission_1.createPermission)("http://test-server", "group:ci-bot", "admin", false, {
323
+ yes: true,
324
+ });
325
+ (0, chai_1.expect)(createOrgStub.called).to.be.false;
326
+ (0, chai_1.expect)(loggerStub.error.calledWith(sinon_1.default.match("Please, make sure that you are logged in"))).to.be.true;
327
+ }));
328
+ it("handles a missing organization", () => __awaiter(void 0, void 0, void 0, function* () {
329
+ sandbox.restore();
330
+ sandbox = sinon_1.default.createSandbox();
331
+ createOrgStub = sandbox.stub();
332
+ loggerStub = sandbox.stub(logger_1.logger);
333
+ sandbox.stub(console, "log");
334
+ processExitStub = sandbox.stub(process, "exit");
335
+ sandbox
336
+ .stub(clientconfiguration_1.ClientConfiguration.prototype, "doesConfigExists")
337
+ .returns(true);
338
+ sandbox
339
+ .stub(clientconfiguration_1.ClientConfiguration.prototype, "getOrganization")
340
+ .returns(undefined);
341
+ sandbox
342
+ .stub(api_1.OrganizationPermissionsApi.prototype, "createOrganizationPermission")
343
+ .callsFake(createOrgStub);
344
+ yield (0, createpermission_1.createPermission)("http://test-server", "group:ci-bot", "admin", false, {
345
+ yes: true,
346
+ });
347
+ (0, chai_1.expect)(createOrgStub.called).to.be.false;
348
+ (0, chai_1.expect)(loggerStub.error.calledWith(sinon_1.default.match("No organization set"))).to
349
+ .be.true;
350
+ }));
351
+ it("exits non-zero when the API fails", () => __awaiter(void 0, void 0, void 0, function* () {
352
+ createOrgStub.rejects(new Error("API Error"));
353
+ yield (0, createpermission_1.createPermission)("http://test-server", "group:ci-bot", "admin", false, {
354
+ yes: true,
355
+ });
356
+ (0, chai_1.expect)(processExitStub.calledWith(1)).to.be.true;
357
+ (0, chai_1.expect)(loggerStub.error.calledWith(sinon_1.default.match("Failed to grant permission"))).to.be.true;
358
+ }));
359
+ });
360
+ //# sourceMappingURL=createpermission.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createpermission.spec.js","sourceRoot":"","sources":["../../../src/commands/permission/createpermission.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.deletePermission = deletePermission;
13
+ const api_1 = require("../../client/api");
14
+ const configuration_1 = require("../../client/configuration");
15
+ const clientconfiguration_1 = require("../../clientconfiguration");
16
+ const UserGroupId_1 = require("../../common/UserGroupId");
17
+ const logger_1 = require("../../logger");
18
+ const utils_1 = require("../../utils");
19
+ const scope_1 = require("./scope");
20
+ const organizationPermissionsApi = new api_1.OrganizationPermissionsApi(new configuration_1.Configuration());
21
+ const environmentPermissionsApi = new api_1.EnvironmentPermissionsApi(new configuration_1.Configuration());
22
+ const packagePermissionsApi = new api_1.PackagePermissionsApi(new configuration_1.Configuration());
23
+ function deletePermission(controlPlane, userGroupIdValue, debug, autoConfirm, options) {
24
+ return __awaiter(this, void 0, void 0, function* () {
25
+ const clientConfig = new clientconfiguration_1.ClientConfiguration();
26
+ if (!clientConfig.doesConfigExists()) {
27
+ logger_1.logger.error("Please, make sure that you are logged in");
28
+ return;
29
+ }
30
+ const organizationName = clientConfig.getOrganization();
31
+ if (!organizationName) {
32
+ logger_1.logger.error("No organization set. Please login or set an organization.");
33
+ return;
34
+ }
35
+ const resolved = (0, scope_1.resolveScope)(options, clientConfig.getProject());
36
+ if ("error" in resolved) {
37
+ logger_1.logger.error(resolved.error);
38
+ process.exit(1);
39
+ return;
40
+ }
41
+ let userGroupId;
42
+ try {
43
+ userGroupId = new UserGroupId_1.UserGroupId(userGroupIdValue).getValue();
44
+ }
45
+ catch (e) {
46
+ logger_1.logger.error(e.message);
47
+ process.exit(1);
48
+ return;
49
+ }
50
+ const target = (0, scope_1.describeScope)(organizationName, resolved);
51
+ if (!autoConfirm) {
52
+ const confirmation = yield (0, utils_1.getConfirmation)(`Are you sure that you want to revoke ${userGroupId}'s permission on ${target}?`);
53
+ if (!confirmation) {
54
+ logger_1.logger.info("Operation cancelled.");
55
+ return;
56
+ }
57
+ }
58
+ logger_1.logger.info(`Revoking permission for ${userGroupId} on ${target}`);
59
+ const requestOptions = {
60
+ baseURL: controlPlane,
61
+ headers: {
62
+ Authorization: clientConfig.getAuthenticationHeader(),
63
+ },
64
+ };
65
+ try {
66
+ switch (resolved.scope) {
67
+ case scope_1.PermissionScope.PACKAGE:
68
+ yield packagePermissionsApi.deletePackagePermission(organizationName, resolved.environmentName, resolved.packageName, userGroupId, requestOptions);
69
+ break;
70
+ case scope_1.PermissionScope.ENVIRONMENT:
71
+ yield environmentPermissionsApi.deleteEnvironmentPermission(organizationName, resolved.environmentName, userGroupId, requestOptions);
72
+ break;
73
+ default:
74
+ yield organizationPermissionsApi.deleteOrganizationPermission(organizationName, userGroupId, requestOptions);
75
+ break;
76
+ }
77
+ logger_1.logger.info("Permission revoked successfully");
78
+ }
79
+ catch (error) {
80
+ logger_1.logger.error("Failed to revoke permission");
81
+ (0, utils_1.printOutError)(error, debug);
82
+ process.exit(1);
83
+ }
84
+ });
85
+ }
86
+ //# sourceMappingURL=deletepermission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deletepermission.js","sourceRoot":"","sources":["../../../src/commands/permission/deletepermission.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.getPermission = getPermission;
13
+ const api_1 = require("../../client/api");
14
+ const configuration_1 = require("../../client/configuration");
15
+ const clientconfiguration_1 = require("../../clientconfiguration");
16
+ const UserGroupId_1 = require("../../common/UserGroupId");
17
+ const logger_1 = require("../../logger");
18
+ const utils_1 = require("../../utils");
19
+ const scope_1 = require("./scope");
20
+ const organizationPermissionsApi = new api_1.OrganizationPermissionsApi(new configuration_1.Configuration());
21
+ const environmentPermissionsApi = new api_1.EnvironmentPermissionsApi(new configuration_1.Configuration());
22
+ const packagePermissionsApi = new api_1.PackagePermissionsApi(new configuration_1.Configuration());
23
+ function getPermission(controlPlane, userGroupIdValue, debug, options) {
24
+ return __awaiter(this, void 0, void 0, function* () {
25
+ const clientConfig = new clientconfiguration_1.ClientConfiguration();
26
+ if (!clientConfig.doesConfigExists()) {
27
+ logger_1.logger.error("Please, make sure that you are logged in");
28
+ return;
29
+ }
30
+ const organizationName = clientConfig.getOrganization();
31
+ if (!organizationName) {
32
+ logger_1.logger.error("No organization set. Please login or set an organization.");
33
+ return;
34
+ }
35
+ const resolved = (0, scope_1.resolveScope)(options, clientConfig.getProject());
36
+ if ("error" in resolved) {
37
+ logger_1.logger.error(resolved.error);
38
+ process.exit(1);
39
+ return;
40
+ }
41
+ let userGroupId;
42
+ try {
43
+ userGroupId = new UserGroupId_1.UserGroupId(userGroupIdValue).getValue();
44
+ }
45
+ catch (e) {
46
+ logger_1.logger.error(e.message);
47
+ process.exit(1);
48
+ return;
49
+ }
50
+ logger_1.logger.info(`Getting permission for ${userGroupId} on ${(0, scope_1.describeScope)(organizationName, resolved)}`);
51
+ const requestOptions = {
52
+ baseURL: controlPlane,
53
+ headers: {
54
+ Authorization: clientConfig.getAuthenticationHeader(),
55
+ },
56
+ };
57
+ try {
58
+ let data;
59
+ switch (resolved.scope) {
60
+ case scope_1.PermissionScope.PACKAGE: {
61
+ const response = yield packagePermissionsApi.getPackagePermission(organizationName, resolved.environmentName, resolved.packageName, userGroupId, requestOptions);
62
+ data = response.data;
63
+ break;
64
+ }
65
+ case scope_1.PermissionScope.ENVIRONMENT: {
66
+ const response = yield environmentPermissionsApi.getEnvironmentPermission(organizationName, resolved.environmentName, userGroupId, requestOptions);
67
+ data = response.data;
68
+ break;
69
+ }
70
+ default: {
71
+ const response = yield organizationPermissionsApi.getOrganizationPermission(organizationName, userGroupId, requestOptions);
72
+ data = response.data;
73
+ break;
74
+ }
75
+ }
76
+ console.log(JSON.stringify(data, null, 2));
77
+ }
78
+ catch (error) {
79
+ logger_1.logger.error("Failed to get permission");
80
+ (0, utils_1.printOutError)(error, debug);
81
+ process.exit(1);
82
+ }
83
+ });
84
+ }
85
+ //# sourceMappingURL=getpermission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getpermission.js","sourceRoot":"","sources":["../../../src/commands/permission/getpermission.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.listPermissions = listPermissions;
13
+ const api_1 = require("../../client/api");
14
+ const configuration_1 = require("../../client/configuration");
15
+ const clientconfiguration_1 = require("../../clientconfiguration");
16
+ const logger_1 = require("../../logger");
17
+ const utils_1 = require("../../utils");
18
+ const scope_1 = require("./scope");
19
+ const organizationPermissionsApi = new api_1.OrganizationPermissionsApi(new configuration_1.Configuration());
20
+ const environmentPermissionsApi = new api_1.EnvironmentPermissionsApi(new configuration_1.Configuration());
21
+ const packagePermissionsApi = new api_1.PackagePermissionsApi(new configuration_1.Configuration());
22
+ function listPermissions(controlPlane, debug, options) {
23
+ return __awaiter(this, void 0, void 0, function* () {
24
+ const clientConfig = new clientconfiguration_1.ClientConfiguration();
25
+ if (!clientConfig.doesConfigExists()) {
26
+ logger_1.logger.error("Please, make sure that you are logged in");
27
+ return;
28
+ }
29
+ const organizationName = clientConfig.getOrganization();
30
+ if (!organizationName) {
31
+ logger_1.logger.error("No organization set. Please login or set an organization.");
32
+ return;
33
+ }
34
+ const resolved = (0, scope_1.resolveScope)(options, clientConfig.getProject());
35
+ if ("error" in resolved) {
36
+ logger_1.logger.error(resolved.error);
37
+ process.exit(1);
38
+ return;
39
+ }
40
+ logger_1.logger.info(`Listing permissions on ${(0, scope_1.describeScope)(organizationName, resolved)}`);
41
+ const requestOptions = {
42
+ baseURL: controlPlane,
43
+ headers: {
44
+ Authorization: clientConfig.getAuthenticationHeader(),
45
+ },
46
+ };
47
+ try {
48
+ let data;
49
+ switch (resolved.scope) {
50
+ case scope_1.PermissionScope.PACKAGE: {
51
+ const response = yield packagePermissionsApi.listPackagePermissions(organizationName, resolved.environmentName, resolved.packageName, requestOptions);
52
+ data = response.data;
53
+ break;
54
+ }
55
+ case scope_1.PermissionScope.ENVIRONMENT: {
56
+ const response = yield environmentPermissionsApi.listEnvironmentPermissions(organizationName, resolved.environmentName, requestOptions);
57
+ data = response.data;
58
+ break;
59
+ }
60
+ default: {
61
+ const response = yield organizationPermissionsApi.listOrganizationPermissions(organizationName, requestOptions);
62
+ data = response.data;
63
+ break;
64
+ }
65
+ }
66
+ console.log(JSON.stringify(data, null, 2));
67
+ }
68
+ catch (error) {
69
+ logger_1.logger.error("Failed to list permissions");
70
+ (0, utils_1.printOutError)(error, debug);
71
+ process.exit(1);
72
+ }
73
+ });
74
+ }
75
+ //# sourceMappingURL=listpermissions.js.map