@catladder/cli 0.0.0-refactor-gcloud-api-60147713 → 0.0.0-refactor-gcloud-api-ee7f86ef
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/bundles/catenv/index.js +1 -1
- package/dist/bundles/cli/index.js +46 -40
- package/dist/gcloud/cloudRun/getCloudRunDomainSuffix.js +1 -1
- package/dist/gcloud/cloudRun/getCloudRunDomainSuffix.js.map +1 -1
- package/dist/gcloud/enableServices.js +21 -11
- package/dist/gcloud/enableServices.js.map +1 -1
- package/dist/gcloud/serviceAccounts.js +23 -27
- package/dist/gcloud/serviceAccounts.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/src/gcloud/cloudRun/getCloudRunDomainSuffix.ts +1 -1
- package/src/gcloud/enableServices.ts +6 -0
- package/src/gcloud/serviceAccounts.ts +5 -4
|
@@ -40074,7 +40074,7 @@ exports.readConfigSync = readConfigSync;
|
|
|
40074
40074
|
|
|
40075
40075
|
exports.__esModule = true;
|
|
40076
40076
|
exports.DOCKER_REGISTRY = exports.PIPELINE_IMAGE_TAG = void 0;
|
|
40077
|
-
exports.PIPELINE_IMAGE_TAG = "refactor-gcloud-api-
|
|
40077
|
+
exports.PIPELINE_IMAGE_TAG = "refactor-gcloud-api-ee7f86ef" || 0;
|
|
40078
40078
|
exports.DOCKER_REGISTRY = "git.panter.ch:5001/catladder/catladder" || 0;
|
|
40079
40079
|
|
|
40080
40080
|
/***/ }),
|
|
@@ -6483,7 +6483,7 @@ var getCloudRunDomainSuffix = function (config) { return __awaiter(void 0, void
|
|
|
6483
6483
|
return [4 /*yield*/, runClient.listServices({ parent: parent, pageSize: 1 }, { autoPaginate: false })];
|
|
6484
6484
|
case 1:
|
|
6485
6485
|
existingService = (_a.sent())[0];
|
|
6486
|
-
if (existingService) {
|
|
6486
|
+
if (existingService.length > 0) {
|
|
6487
6487
|
return [2 /*return*/, getSuffixFromService(existingService)];
|
|
6488
6488
|
}
|
|
6489
6489
|
return [4 /*yield*/, runClient.createService({
|
|
@@ -6632,25 +6632,35 @@ exports.__esModule = true;
|
|
|
6632
6632
|
exports.enableGCloudServices = void 0;
|
|
6633
6633
|
var googleapis_1 = __nccwpck_require__(71581);
|
|
6634
6634
|
var enableGCloudServices = function (services, config) { return __awaiter(void 0, void 0, void 0, function () {
|
|
6635
|
-
var _i, services_1, service;
|
|
6636
|
-
|
|
6637
|
-
|
|
6635
|
+
var gcloudAuth, _a, _b, _i, services_1, service;
|
|
6636
|
+
var _c;
|
|
6637
|
+
return __generator(this, function (_d) {
|
|
6638
|
+
switch (_d.label) {
|
|
6638
6639
|
case 0:
|
|
6639
|
-
|
|
6640
|
-
|
|
6640
|
+
gcloudAuth = new googleapis_1.google.auth.GoogleAuth({
|
|
6641
|
+
scopes: ['https://www.googleapis.com/auth/cloud-platform'],
|
|
6642
|
+
projectId: config.projectId
|
|
6643
|
+
});
|
|
6644
|
+
_b = (_a = googleapis_1.google).options;
|
|
6645
|
+
_c = {};
|
|
6646
|
+
return [4 /*yield*/, gcloudAuth.getClient()];
|
|
6641
6647
|
case 1:
|
|
6642
|
-
|
|
6648
|
+
_b.apply(_a, [(_c.auth = _d.sent(), _c)]);
|
|
6649
|
+
_i = 0, services_1 = services;
|
|
6650
|
+
_d.label = 2;
|
|
6651
|
+
case 2:
|
|
6652
|
+
if (!(_i < services_1.length)) return [3 /*break*/, 5];
|
|
6643
6653
|
service = services_1[_i];
|
|
6644
6654
|
return [4 /*yield*/, googleapis_1.google.serviceusage({ version: 'v1' }).services.enable({
|
|
6645
6655
|
name: "projects/".concat(config.projectId, "/services/").concat(service)
|
|
6646
6656
|
})];
|
|
6647
|
-
case 2:
|
|
6648
|
-
_a.sent();
|
|
6649
|
-
_a.label = 3;
|
|
6650
6657
|
case 3:
|
|
6658
|
+
_d.sent();
|
|
6659
|
+
_d.label = 4;
|
|
6660
|
+
case 4:
|
|
6651
6661
|
_i++;
|
|
6652
|
-
return [3 /*break*/,
|
|
6653
|
-
case
|
|
6662
|
+
return [3 /*break*/, 2];
|
|
6663
|
+
case 5: return [2 /*return*/];
|
|
6654
6664
|
}
|
|
6655
6665
|
});
|
|
6656
6666
|
}); };
|
|
@@ -6818,10 +6828,11 @@ var accountExists = function (client, projectId, fullPath) { return __awaiter(vo
|
|
|
6818
6828
|
}); };
|
|
6819
6829
|
exports.accountExists = accountExists;
|
|
6820
6830
|
var upsertGcloudServiceAccount = function (context, account) { return __awaiter(void 0, void 0, void 0, function () {
|
|
6821
|
-
var projectId, name, displayName, roles, description, namePrefix, nameSuffix, nameMiddleLength, nameMiddle, middle, fullName, fullDisplayName, fullIdentifier, fullPath, gcloudIamClient, gcloudProjectsClient, gcloudAuth, _a, _b, existing, memberName, projectIamPolicy, currentBindings, bindings, keylist,
|
|
6822
|
-
var
|
|
6823
|
-
|
|
6824
|
-
|
|
6831
|
+
var projectId, name, displayName, roles, description, namePrefix, nameSuffix, nameMiddleLength, nameMiddle, middle, fullName, fullDisplayName, fullIdentifier, fullPath, gcloudIamClient, gcloudProjectsClient, gcloudAuth, _a, _b, existing, memberName, projectIamPolicy, currentBindings, bindings, keylist, key;
|
|
6832
|
+
var _c;
|
|
6833
|
+
var _d, _e;
|
|
6834
|
+
return __generator(this, function (_f) {
|
|
6835
|
+
switch (_f.label) {
|
|
6825
6836
|
case 0:
|
|
6826
6837
|
projectId = account.projectId, name = account.name, displayName = account.displayName, roles = account.roles, description = account.description;
|
|
6827
6838
|
namePrefix = "".concat(name, "-");
|
|
@@ -6840,13 +6851,13 @@ var upsertGcloudServiceAccount = function (context, account) { return __awaiter(
|
|
|
6840
6851
|
projectId: projectId
|
|
6841
6852
|
});
|
|
6842
6853
|
_b = (_a = googleapis_1.google).options;
|
|
6843
|
-
|
|
6854
|
+
_c = {};
|
|
6844
6855
|
return [4 /*yield*/, gcloudAuth.getClient()];
|
|
6845
6856
|
case 1:
|
|
6846
|
-
_b.apply(_a, [(
|
|
6857
|
+
_b.apply(_a, [(_c.auth = _f.sent(), _c)]);
|
|
6847
6858
|
return [4 /*yield*/, (0, exports.accountExists)(gcloudIamClient, projectId, fullPath)];
|
|
6848
6859
|
case 2:
|
|
6849
|
-
existing =
|
|
6860
|
+
existing = _f.sent();
|
|
6850
6861
|
if (!!existing) return [3 /*break*/, 4];
|
|
6851
6862
|
return [4 /*yield*/, gcloudIamClient.projects.serviceAccounts.create({
|
|
6852
6863
|
name: gcloudProjectsClient.projectPath(projectId),
|
|
@@ -6859,13 +6870,13 @@ var upsertGcloudServiceAccount = function (context, account) { return __awaiter(
|
|
|
6859
6870
|
}
|
|
6860
6871
|
})];
|
|
6861
6872
|
case 3:
|
|
6862
|
-
|
|
6863
|
-
|
|
6873
|
+
_f.sent();
|
|
6874
|
+
_f.label = 4;
|
|
6864
6875
|
case 4:
|
|
6865
6876
|
memberName = "serviceAccount:".concat(fullIdentifier);
|
|
6866
6877
|
return [4 /*yield*/, gcloudProjectsClient.getIamPolicy({ resource: gcloudProjectsClient.projectPath(projectId) })];
|
|
6867
6878
|
case 5:
|
|
6868
|
-
projectIamPolicy = (
|
|
6879
|
+
projectIamPolicy = (_f.sent())[0];
|
|
6869
6880
|
currentBindings = projectIamPolicy.bindings;
|
|
6870
6881
|
bindings = currentBindings.map(function (binding) {
|
|
6871
6882
|
return (roles.includes(binding.role) && !binding.members.includes(memberName))
|
|
@@ -6875,6 +6886,7 @@ var upsertGcloudServiceAccount = function (context, account) { return __awaiter(
|
|
|
6875
6886
|
members: [memberName]
|
|
6876
6887
|
}); }));
|
|
6877
6888
|
return [4 /*yield*/, gcloudProjectsClient.setIamPolicy({
|
|
6889
|
+
resource: gcloudProjectsClient.projectPath(projectId),
|
|
6878
6890
|
policy: {
|
|
6879
6891
|
bindings: bindings,
|
|
6880
6892
|
etag: projectIamPolicy.etag
|
|
@@ -6884,29 +6896,23 @@ var upsertGcloudServiceAccount = function (context, account) { return __awaiter(
|
|
|
6884
6896
|
// delete first all keys
|
|
6885
6897
|
];
|
|
6886
6898
|
case 6:
|
|
6887
|
-
|
|
6899
|
+
_f.sent();
|
|
6888
6900
|
return [4 /*yield*/, gcloudIamClient.projects.serviceAccounts.keys.list({
|
|
6889
6901
|
name: fullPath,
|
|
6890
6902
|
keyTypes: ['USER_MANAGED']
|
|
6891
6903
|
})];
|
|
6892
6904
|
case 7:
|
|
6893
|
-
keylist =
|
|
6894
|
-
|
|
6895
|
-
|
|
6905
|
+
keylist = _f.sent();
|
|
6906
|
+
(_e = (_d = keylist.data) === null || _d === void 0 ? void 0 : _d.keys) === null || _e === void 0 ? void 0 : _e.map(function (key) { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {
|
|
6907
|
+
switch (_a.label) {
|
|
6908
|
+
case 0: return [4 /*yield*/, gcloudIamClient.projects.serviceAccounts.keys["delete"]({ name: key.name })];
|
|
6909
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
6910
|
+
}
|
|
6911
|
+
}); }); });
|
|
6912
|
+
return [4 /*yield*/, gcloudIamClient.projects.serviceAccounts.keys.create({ name: fullPath })];
|
|
6896
6913
|
case 8:
|
|
6897
|
-
|
|
6898
|
-
|
|
6899
|
-
return [4 /*yield*/, gcloudIamClient.projects.serviceAccounts.keys["delete"]({ name: key_1.name })];
|
|
6900
|
-
case 9:
|
|
6901
|
-
_e.sent();
|
|
6902
|
-
_e.label = 10;
|
|
6903
|
-
case 10:
|
|
6904
|
-
_i++;
|
|
6905
|
-
return [3 /*break*/, 8];
|
|
6906
|
-
case 11: return [4 /*yield*/, gcloudIamClient.projects.serviceAccounts.keys.create({ name: fullPath })];
|
|
6907
|
-
case 12:
|
|
6908
|
-
key = _e.sent();
|
|
6909
|
-
return [2 /*return*/, key.data.privateKeyData];
|
|
6914
|
+
key = _f.sent();
|
|
6915
|
+
return [2 /*return*/, Buffer.from(key.data.privateKeyData, "base64").toString("utf-8")];
|
|
6910
6916
|
}
|
|
6911
6917
|
});
|
|
6912
6918
|
}); };
|
|
@@ -1118262,7 +1118268,7 @@ exports.readConfigSync = readConfigSync;
|
|
|
1118262
1118268
|
|
|
1118263
1118269
|
exports.__esModule = true;
|
|
1118264
1118270
|
exports.DOCKER_REGISTRY = exports.PIPELINE_IMAGE_TAG = void 0;
|
|
1118265
|
-
exports.PIPELINE_IMAGE_TAG = "refactor-gcloud-api-
|
|
1118271
|
+
exports.PIPELINE_IMAGE_TAG = "refactor-gcloud-api-ee7f86ef" || 0;
|
|
1118266
1118272
|
exports.DOCKER_REGISTRY = "git.panter.ch:5001/catladder/catladder" || 0;
|
|
1118267
1118273
|
|
|
1118268
1118274
|
/***/ }),
|
|
@@ -54,7 +54,7 @@ var getCloudRunDomainSuffix = function (config) { return __awaiter(void 0, void
|
|
|
54
54
|
return [4 /*yield*/, runClient.listServices({ parent: parent, pageSize: 1 }, { autoPaginate: false })];
|
|
55
55
|
case 1:
|
|
56
56
|
existingService = (_a.sent())[0];
|
|
57
|
-
if (existingService) {
|
|
57
|
+
if (existingService.length > 0) {
|
|
58
58
|
return [2 /*return*/, getSuffixFromService(existingService)];
|
|
59
59
|
}
|
|
60
60
|
return [4 /*yield*/, runClient.createService({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getCloudRunDomainSuffix.js","sourceRoot":"","sources":["../../../src/gcloud/cloudRun/getCloudRunDomainSuffix.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,yCAAmD;AAEnD,IAAM,oBAAoB,GAAG,UAAC,OAAY;IACxC,IAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IAC5B,IAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;IAE3C,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,GAAG,IAAI,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC;AACtD,CAAC,CAAC;AACK,IAAM,uBAAuB,GAAG,UAAO,MAA4B;;;;;gBAUlE,gBAAgB,GAAG,4BAA4B,CAAC;gBAEhD,SAAS,GAAG,IAAI,oBAAc,EAAE,CAAA;gBAChC,MAAM,GAAG,mBAAY,MAAM,CAAC,SAAS,wBAAc,MAAM,CAAC,MAAM,CAAE,CAAA;gBAE9C,qBAAM,SAAS,CAAC,YAAY,CAAC,EAAE,MAAM,QAAA,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,EAAA;;gBAAjG,eAAe,GAAI,CAAA,SAA8E,CAAA,GAAlF;gBAEtB,IAAI,eAAe,EAAE;
|
|
1
|
+
{"version":3,"file":"getCloudRunDomainSuffix.js","sourceRoot":"","sources":["../../../src/gcloud/cloudRun/getCloudRunDomainSuffix.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,yCAAmD;AAEnD,IAAM,oBAAoB,GAAG,UAAC,OAAY;IACxC,IAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IAC5B,IAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;IAE3C,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,GAAG,IAAI,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC;AACtD,CAAC,CAAC;AACK,IAAM,uBAAuB,GAAG,UAAO,MAA4B;;;;;gBAUlE,gBAAgB,GAAG,4BAA4B,CAAC;gBAEhD,SAAS,GAAG,IAAI,oBAAc,EAAE,CAAA;gBAChC,MAAM,GAAG,mBAAY,MAAM,CAAC,SAAS,wBAAc,MAAM,CAAC,MAAM,CAAE,CAAA;gBAE9C,qBAAM,SAAS,CAAC,YAAY,CAAC,EAAE,MAAM,QAAA,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,EAAA;;gBAAjG,eAAe,GAAI,CAAA,SAA8E,CAAA,GAAlF;gBAEtB,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC9B,sBAAO,oBAAoB,CAAC,eAAe,CAAC,EAAC;iBAC9C;gBAE+B,qBAAM,SAAS,CAAC,aAAa,CAAC;wBAC5D,MAAM,QAAA;wBACN,SAAS,EAAE,gBAAgB;wBAC3B,OAAO,EAAE;4BACP,QAAQ,EAAE;gCACR,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,4CAA4C,EAAE,CAAC;6BACtE;yBACF;qBACF,CAAC,EAAA;;gBARK,qBAAqB,GAAI,CAAA,SAQ9B,CAAA,GAR0B;gBASL,qBAAM,qBAAqB,CAAC,OAAO,EAAE,EAAA;;gBAArD,YAAY,GAAI,CAAA,SAAqC,CAAA,GAAzC;gBAEO,qBAAM,SAAS,CAAC,aAAa,CAAC;wBACtD,IAAI,EAAE,YAAY,CAAC,IAAI;qBACxB,CAAC,EAAA;;gBAFK,eAAe,GAAI,CAAA,SAExB,CAAA,GAFoB;gBAGtB,qBAAM,eAAe,CAAC,OAAO,EAAE,EAAA;;gBAA/B,SAA+B,CAAA;gBAExB,qBAAM,oBAAoB,CAAC,YAAY,CAAC,EAAA;oBAA/C,sBAAO,SAAwC,EAAC;;;KACjD,CAAC;AAtCW,QAAA,uBAAuB,2BAsClC"}
|
|
@@ -39,25 +39,35 @@ exports.__esModule = true;
|
|
|
39
39
|
exports.enableGCloudServices = void 0;
|
|
40
40
|
var googleapis_1 = require("googleapis");
|
|
41
41
|
var enableGCloudServices = function (services, config) { return __awaiter(void 0, void 0, void 0, function () {
|
|
42
|
-
var _i, services_1, service;
|
|
43
|
-
|
|
44
|
-
|
|
42
|
+
var gcloudAuth, _a, _b, _i, services_1, service;
|
|
43
|
+
var _c;
|
|
44
|
+
return __generator(this, function (_d) {
|
|
45
|
+
switch (_d.label) {
|
|
45
46
|
case 0:
|
|
46
|
-
|
|
47
|
-
|
|
47
|
+
gcloudAuth = new googleapis_1.google.auth.GoogleAuth({
|
|
48
|
+
scopes: ['https://www.googleapis.com/auth/cloud-platform'],
|
|
49
|
+
projectId: config.projectId
|
|
50
|
+
});
|
|
51
|
+
_b = (_a = googleapis_1.google).options;
|
|
52
|
+
_c = {};
|
|
53
|
+
return [4 /*yield*/, gcloudAuth.getClient()];
|
|
48
54
|
case 1:
|
|
49
|
-
|
|
55
|
+
_b.apply(_a, [(_c.auth = _d.sent(), _c)]);
|
|
56
|
+
_i = 0, services_1 = services;
|
|
57
|
+
_d.label = 2;
|
|
58
|
+
case 2:
|
|
59
|
+
if (!(_i < services_1.length)) return [3 /*break*/, 5];
|
|
50
60
|
service = services_1[_i];
|
|
51
61
|
return [4 /*yield*/, googleapis_1.google.serviceusage({ version: 'v1' }).services.enable({
|
|
52
62
|
name: "projects/".concat(config.projectId, "/services/").concat(service)
|
|
53
63
|
})];
|
|
54
|
-
case 2:
|
|
55
|
-
_a.sent();
|
|
56
|
-
_a.label = 3;
|
|
57
64
|
case 3:
|
|
65
|
+
_d.sent();
|
|
66
|
+
_d.label = 4;
|
|
67
|
+
case 4:
|
|
58
68
|
_i++;
|
|
59
|
-
return [3 /*break*/,
|
|
60
|
-
case
|
|
69
|
+
return [3 /*break*/, 2];
|
|
70
|
+
case 5: return [2 /*return*/];
|
|
61
71
|
}
|
|
62
72
|
});
|
|
63
73
|
}); };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enableServices.js","sourceRoot":"","sources":["../../src/gcloud/enableServices.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAoC;AAE7B,IAAM,oBAAoB,GAAG,UAClC,QAAkB,EAClB,MAEC
|
|
1
|
+
{"version":3,"file":"enableServices.js","sourceRoot":"","sources":["../../src/gcloud/enableServices.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAoC;AAE7B,IAAM,oBAAoB,GAAG,UAClC,QAAkB,EAClB,MAEC;;;;;;gBAEK,UAAU,GAAG,IAAI,mBAAM,CAAC,IAAI,CAAC,UAAU,CAAC;oBAC5C,MAAM,EAAE,CAAC,gDAAgD,CAAC;oBAC1D,SAAS,EAAE,MAAM,CAAC,SAAS;iBAC5B,CAAC,CAAC;gBACH,KAAA,CAAA,KAAA,mBAAM,CAAA,CAAC,OAAO,CAAA;;gBAAS,qBAAM,UAAU,CAAC,SAAS,EAAE,EAAA;;gBAAnD,eAAiB,OAAI,GAAE,SAA4B,OAAG,CAAA;sBAExB,EAAR,qBAAQ;;;qBAAR,CAAA,sBAAQ,CAAA;gBAAnB,OAAO;gBAChB,qBAAM,mBAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;wBAC3D,IAAI,EAAE,mBAAY,MAAM,CAAC,SAAS,uBAAa,OAAO,CAAE;qBACzD,CAAC,EAAA;;gBAFF,SAEE,CAAA;;;gBAHkB,IAAQ,CAAA;;;;;KAK/B,CAAC;AAjBW,QAAA,oBAAoB,wBAiB/B"}
|
|
@@ -80,10 +80,11 @@ var accountExists = function (client, projectId, fullPath) { return __awaiter(vo
|
|
|
80
80
|
}); };
|
|
81
81
|
exports.accountExists = accountExists;
|
|
82
82
|
var upsertGcloudServiceAccount = function (context, account) { return __awaiter(void 0, void 0, void 0, function () {
|
|
83
|
-
var projectId, name, displayName, roles, description, namePrefix, nameSuffix, nameMiddleLength, nameMiddle, middle, fullName, fullDisplayName, fullIdentifier, fullPath, gcloudIamClient, gcloudProjectsClient, gcloudAuth, _a, _b, existing, memberName, projectIamPolicy, currentBindings, bindings, keylist,
|
|
84
|
-
var
|
|
85
|
-
|
|
86
|
-
|
|
83
|
+
var projectId, name, displayName, roles, description, namePrefix, nameSuffix, nameMiddleLength, nameMiddle, middle, fullName, fullDisplayName, fullIdentifier, fullPath, gcloudIamClient, gcloudProjectsClient, gcloudAuth, _a, _b, existing, memberName, projectIamPolicy, currentBindings, bindings, keylist, key;
|
|
84
|
+
var _c;
|
|
85
|
+
var _d, _e;
|
|
86
|
+
return __generator(this, function (_f) {
|
|
87
|
+
switch (_f.label) {
|
|
87
88
|
case 0:
|
|
88
89
|
projectId = account.projectId, name = account.name, displayName = account.displayName, roles = account.roles, description = account.description;
|
|
89
90
|
namePrefix = "".concat(name, "-");
|
|
@@ -102,13 +103,13 @@ var upsertGcloudServiceAccount = function (context, account) { return __awaiter(
|
|
|
102
103
|
projectId: projectId
|
|
103
104
|
});
|
|
104
105
|
_b = (_a = googleapis_1.google).options;
|
|
105
|
-
|
|
106
|
+
_c = {};
|
|
106
107
|
return [4 /*yield*/, gcloudAuth.getClient()];
|
|
107
108
|
case 1:
|
|
108
|
-
_b.apply(_a, [(
|
|
109
|
+
_b.apply(_a, [(_c.auth = _f.sent(), _c)]);
|
|
109
110
|
return [4 /*yield*/, (0, exports.accountExists)(gcloudIamClient, projectId, fullPath)];
|
|
110
111
|
case 2:
|
|
111
|
-
existing =
|
|
112
|
+
existing = _f.sent();
|
|
112
113
|
if (!!existing) return [3 /*break*/, 4];
|
|
113
114
|
return [4 /*yield*/, gcloudIamClient.projects.serviceAccounts.create({
|
|
114
115
|
name: gcloudProjectsClient.projectPath(projectId),
|
|
@@ -121,13 +122,13 @@ var upsertGcloudServiceAccount = function (context, account) { return __awaiter(
|
|
|
121
122
|
}
|
|
122
123
|
})];
|
|
123
124
|
case 3:
|
|
124
|
-
|
|
125
|
-
|
|
125
|
+
_f.sent();
|
|
126
|
+
_f.label = 4;
|
|
126
127
|
case 4:
|
|
127
128
|
memberName = "serviceAccount:".concat(fullIdentifier);
|
|
128
129
|
return [4 /*yield*/, gcloudProjectsClient.getIamPolicy({ resource: gcloudProjectsClient.projectPath(projectId) })];
|
|
129
130
|
case 5:
|
|
130
|
-
projectIamPolicy = (
|
|
131
|
+
projectIamPolicy = (_f.sent())[0];
|
|
131
132
|
currentBindings = projectIamPolicy.bindings;
|
|
132
133
|
bindings = currentBindings.map(function (binding) {
|
|
133
134
|
return (roles.includes(binding.role) && !binding.members.includes(memberName))
|
|
@@ -137,6 +138,7 @@ var upsertGcloudServiceAccount = function (context, account) { return __awaiter(
|
|
|
137
138
|
members: [memberName]
|
|
138
139
|
}); }));
|
|
139
140
|
return [4 /*yield*/, gcloudProjectsClient.setIamPolicy({
|
|
141
|
+
resource: gcloudProjectsClient.projectPath(projectId),
|
|
140
142
|
policy: {
|
|
141
143
|
bindings: bindings,
|
|
142
144
|
etag: projectIamPolicy.etag
|
|
@@ -146,29 +148,23 @@ var upsertGcloudServiceAccount = function (context, account) { return __awaiter(
|
|
|
146
148
|
// delete first all keys
|
|
147
149
|
];
|
|
148
150
|
case 6:
|
|
149
|
-
|
|
151
|
+
_f.sent();
|
|
150
152
|
return [4 /*yield*/, gcloudIamClient.projects.serviceAccounts.keys.list({
|
|
151
153
|
name: fullPath,
|
|
152
154
|
keyTypes: ['USER_MANAGED']
|
|
153
155
|
})];
|
|
154
156
|
case 7:
|
|
155
|
-
keylist =
|
|
156
|
-
|
|
157
|
-
|
|
157
|
+
keylist = _f.sent();
|
|
158
|
+
(_e = (_d = keylist.data) === null || _d === void 0 ? void 0 : _d.keys) === null || _e === void 0 ? void 0 : _e.map(function (key) { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {
|
|
159
|
+
switch (_a.label) {
|
|
160
|
+
case 0: return [4 /*yield*/, gcloudIamClient.projects.serviceAccounts.keys["delete"]({ name: key.name })];
|
|
161
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
162
|
+
}
|
|
163
|
+
}); }); });
|
|
164
|
+
return [4 /*yield*/, gcloudIamClient.projects.serviceAccounts.keys.create({ name: fullPath })];
|
|
158
165
|
case 8:
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
return [4 /*yield*/, gcloudIamClient.projects.serviceAccounts.keys["delete"]({ name: key_1.name })];
|
|
162
|
-
case 9:
|
|
163
|
-
_e.sent();
|
|
164
|
-
_e.label = 10;
|
|
165
|
-
case 10:
|
|
166
|
-
_i++;
|
|
167
|
-
return [3 /*break*/, 8];
|
|
168
|
-
case 11: return [4 /*yield*/, gcloudIamClient.projects.serviceAccounts.keys.create({ name: fullPath })];
|
|
169
|
-
case 12:
|
|
170
|
-
key = _e.sent();
|
|
171
|
-
return [2 /*return*/, key.data.privateKeyData];
|
|
166
|
+
key = _f.sent();
|
|
167
|
+
return [2 /*return*/, Buffer.from(key.data.privateKeyData, "base64").toString("utf-8")];
|
|
172
168
|
}
|
|
173
169
|
});
|
|
174
170
|
}); };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serviceAccounts.js","sourceRoot":"","sources":["../../src/gcloud/serviceAccounts.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,yCAAoC;AACpC,mEAAgE;AAChE,iCAAoC;AAEpC,0CAAqD;AAE9C,IAAM,aAAa,GAAG,UAAO,MAAkB,EAAE,SAAiB,EAAE,QAAgB;;;;;;gBAEvF,qBAAM,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAA;;gBAA7D,SAA6D,CAAA;gBAC7D,sBAAO,IAAI,EAAC;;;gBAEZ,sBAAO,KAAK,EAAC;;;;KAEhB,CAAC;AAPW,QAAA,aAAa,iBAOxB;AASF,IAAM,0BAA0B,GAAG,UACjC,OAAgB,EAChB,OAAuB
|
|
1
|
+
{"version":3,"file":"serviceAccounts.js","sourceRoot":"","sources":["../../src/gcloud/serviceAccounts.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,yCAAoC;AACpC,mEAAgE;AAChE,iCAAoC;AAEpC,0CAAqD;AAE9C,IAAM,aAAa,GAAG,UAAO,MAAkB,EAAE,SAAiB,EAAE,QAAgB;;;;;;gBAEvF,qBAAM,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAA;;gBAA7D,SAA6D,CAAA;gBAC7D,sBAAO,IAAI,EAAC;;;gBAEZ,sBAAO,KAAK,EAAC;;;;KAEhB,CAAC;AAPW,QAAA,aAAa,iBAOxB;AASF,IAAM,0BAA0B,GAAG,UACjC,OAAgB,EAChB,OAAuB;;;;;;;gBAEf,SAAS,GAA4C,OAAO,UAAnD,EAAE,IAAI,GAAsC,OAAO,KAA7C,EAAE,WAAW,GAAyB,OAAO,YAAhC,EAAE,KAAK,GAAkB,OAAO,MAAzB,EAAE,WAAW,GAAK,OAAO,YAAZ,CAAa;gBAG/D,UAAU,GAAG,UAAG,IAAI,MAAG,CAAC;gBACxB,UAAU,GAAG,WAAI,OAAO,CAAC,WAAW,CAAC,SAAS,cAAI,OAAO,CAAC,aAAa,CAAE,CAAC;gBAC1E,gBAAgB,GAAG,EAAE,GAAG,UAAU,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;gBAC9D,UAAU,GAAG,UAAG,OAAO,CAAC,UAAU,CAAC,YAAY,cAAI,OAAO,CAAC,UAAU,CAAC,OAAO,CAAE,CAAC;gBAEhF,MAAM,GAAG,eAAe,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;gBAEvD,QAAQ,GAAG,UAAG,UAAU,SAAG,MAAM,SAAG,UAAU,CAAE,CAAC;gBAEjD,eAAe,GAAG,UAAG,OAAO,CAAC,UAAU,CAAC,YAAY,cAAI,OAAO,CAAC,UAAU,CAAC,OAAO,cAAI,OAAO,CAAC,WAAW,CAAC,SAAS,cAAI,OAAO,CAAC,aAAa,gBAAM,WAAW,CAAE,CAAC;gBAEhK,cAAc,GAAG,UAAG,QAAQ,cAAI,SAAS,6BAA0B,CAAC;gBACpE,QAAQ,GAAG,mBAAY,SAAS,8BAAoB,cAAc,CAAE,CAAC;gBAErE,eAAe,GAAG,mBAAM,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;gBAChD,oBAAoB,GAAG,IAAI,iCAAc,EAAE,CAAC;gBAC5C,UAAU,GAAG,IAAI,mBAAM,CAAC,IAAI,CAAC,UAAU,CAAC;oBAC5C,MAAM,EAAE,CAAC,gDAAgD,CAAC;oBAC1D,SAAS,WAAA;iBACV,CAAC,CAAC;gBACH,KAAA,CAAA,KAAA,mBAAM,CAAA,CAAC,OAAO,CAAA;;gBAAS,qBAAM,UAAU,CAAC,SAAS,EAAE,EAAA;;gBAAnD,eAAiB,OAAI,GAAE,SAA4B,OAAG,CAAA;gBAErC,qBAAM,IAAA,qBAAa,EAAC,eAAe,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAA;;gBAApE,QAAQ,GAAG,SAAyD;qBAEtE,CAAC,QAAQ,EAAT,wBAAS;gBACX,qBAAM,eAAe,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC;wBACpD,IAAI,EAAE,oBAAoB,CAAC,WAAW,CAAC,SAAS,CAAC;wBACjD,WAAW,EAAE;4BACX,SAAS,EAAE,QAAQ;4BACnB,cAAc,EAAE;gCACd,WAAW,EAAE,eAAe;gCAC5B,WAAW,aAAA;6BACZ;yBACF;qBACF,CAAC,EAAA;;gBATF,SASE,CAAA;;;gBAEE,UAAU,GAAG,yBAAkB,cAAc,CAAE,CAAC;gBAG3B,qBAAM,oBAAoB,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,oBAAoB,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC,EAAA;;gBAAtH,gBAAgB,GAAI,CAAA,SAAkG,CAAA,GAAtG;gBACjB,eAAe,GAAG,gBAAgB,CAAC,QAAQ,CAAC;gBAC5C,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,UAAA,OAAO;oBAC1C,OAAA,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;wBACrE,CAAC,uBAAM,OAAO,KAAE,OAAO,kCAAM,OAAO,CAAC,OAAO,UAAE,UAAU,aACxD,CAAC,CAAC,OAAO;gBAFX,CAEW,CACZ,CAAC,MAAM,CACN,KAAK,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,eAAe,CAAC,GAAG,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,IAAI,EAAN,CAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAA7C,CAA6C,CAAC,CAAC,GAAG,CAAC,UAAA,OAAO,IAAI,OAAA,CAAC;oBAC/E,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,CAAC,UAAU,CAAC;iBACtB,CAAC,EAH8E,CAG9E,CAAC,CACJ,CAAA;gBAED,qBAAM,oBAAoB,CAAC,YAAY,CAAC;wBACtC,QAAQ,EAAE,oBAAoB,CAAC,WAAW,CAAC,SAAS,CAAC;wBACrD,MAAM,EAAE;4BACN,QAAQ,UAAA;4BACR,IAAI,EAAE,gBAAgB,CAAC,IAAI;yBAC5B;qBACF,CAAC;oBAEF,aAAa;oBAEb,wBAAwB;kBAJtB;;gBANF,SAME,CAAA;gBAKc,qBAAM,eAAe,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;wBACvE,IAAI,EAAE,QAAQ;wBACd,QAAQ,EAAE,CAAC,cAAc,CAAC;qBAC3B,CAAC,EAAA;;gBAHI,OAAO,GAAG,SAGd;gBAEF,MAAA,MAAA,OAAO,CAAC,IAAI,0CAAE,IAAI,0CAAE,GAAG,CAAC,UAAM,GAAG;;gCAC/B,qBAAM,eAAe,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,QAAM,CAAA,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,EAAA;gCAA9E,sBAAA,SAA8E,EAAA;;yBAAA,CAC/E,CAAA;gBAEW,qBAAM,eAAe,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAA;;gBAApF,GAAG,GAAG,SAA8E;gBAC1F,sBAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAA;;;KACxE,CAAC;AAEK,IAAM,uCAAuC,GAAG,UACrD,QAAyB,EACzB,OAAgB,EAChB,OAAuB,EACvB,UAAkB;;;;;;gBAElB,QAAQ,CAAC,GAAG,CAAC,4BAA4B,GAAG,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;gBACtD,qBAAM,0BAA0B,CAAC,OAAO,EAAE,OAAO,CAAC,EAAA;;gBAAxD,GAAG,GAAG,SAAkD;gBAE9D,qBAAM,IAAA,2BAAkB,EACtB,QAAQ;wBAEN,GAAC,UAAU,IAAG,GAAG;6BAEnB,OAAO,CAAC,WAAW,CAAC,SAAS,EAC7B,OAAO,CAAC,aAAa,CACtB,EAAA;;gBAPD,SAOC,CAAC;gBACF,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;;;;KACvB,CAAC;AAlBW,QAAA,uCAAuC,2CAkBlD;AAEF,IAAM,eAAe,GAAG,UAAC,GAAW,EAAE,SAAiB;IACrD,OAAA,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG;AAAnD,CAAmD,CAAC;AAEtD,IAAM,IAAI,GAAG,UAAC,GAAW,EAAE,MAAc;IACvC,OAAO,IAAA,mBAAU,EAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AACtE,CAAC,CAAC"}
|