@serverless-devs/s 2.1.12 → 2.1.13-beta.2

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.
@@ -41,7 +41,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
41
41
  var error_1 = require("../../error");
42
42
  var utils_1 = require("../../utils");
43
43
  var core_1 = __importDefault(require("../../utils/core"));
44
- var setCredential = core_1.default.setCredential, setKnownCredential = core_1.default.setKnownCredential, colors = core_1.default.colors, getAccountId = core_1.default.getAccountId, getCommand = core_1.default.getCommand, chalk = core_1.default.chalk;
44
+ var setCredential = core_1.default.setCredential, setKnownCredential = core_1.default.setKnownCredential, colors = core_1.default.colors, getCommand = core_1.default.getCommand, chalk = core_1.default.chalk;
45
45
  var error_2 = require("../../error");
46
46
  var description = "You can add an account\n\n Example:\n $ s config add\n $ s config add --AccessKey ****** --SecretKey ******\n $ s config add --AccessKeyID ****** --AccessKeySecret ****** --AccountID ****** --SecurityToken ******\n $ s config add --keyList key1,key2,key3 --valueList value1,value2,value3\n\n Configuration parameters template for vendors:\n alibaba: AccessKeyID, AccessKeySecret\n aws: AccessKeyID, SecretAccessKey\n baidu: AccessKeyID, SecretAccessKey\n huawei: AccessKey, SecretKey\n google: PrivateKeyData\n tencent: AccountID, SecretID, SecretKey\n\n".concat((0, utils_1.emoji)('🧭'), " How to get the key: ").concat(colors.underline('https://github.com/Serverless-Devs/docs/tree/master/zh/others/provider-config'));
47
47
  function run(program) {
@@ -87,7 +87,7 @@ function run(program) {
87
87
  });
88
88
  }); });
89
89
  var doAction = function (options) { return __awaiter(_this, void 0, void 0, function () {
90
- var argvData, AccountID, AccessKeyID, AccessKeySecret, SecretAccessKey, AccessKey, SecretKey, PrivateKeyData, SecretID, _a, keyList, _b, infoList, SecurityToken, f, access, aliasName, help, keyInformation, infoKeyList, infoValueList, i, data, error_4;
90
+ var argvData, AccountID, AccessKeyID, AccessKeySecret, SecretAccessKey, AccessKey, SecretKey, PrivateKeyData, SecretID, _a, keyList, _b, infoList, SecurityToken, f, access, aliasName, help, keyInformation, infoKeyList, infoValueList, i, data, data;
91
91
  return __generator(this, function (_c) {
92
92
  switch (_c.label) {
93
93
  case 0:
@@ -116,29 +116,22 @@ function run(program) {
116
116
  if (SecurityToken) {
117
117
  keyInformation['SecurityToken'] = SecurityToken;
118
118
  }
119
- if (!(AccessKeyID && AccessKeySecret && !AccountID)) return [3 /*break*/, 4];
120
- _c.label = 1;
119
+ if (!(AccessKeyID && AccessKeySecret)) return [3 /*break*/, 4];
120
+ if (!AccountID) return [3 /*break*/, 2];
121
+ keyInformation['AccountID'] = String(AccountID);
122
+ return [4 /*yield*/, getAccountId({ AccessKeyID: AccessKeyID, AccessKeySecret: AccessKeySecret, SecurityToken: SecurityToken }, f)];
121
123
  case 1:
122
- _c.trys.push([1, 3, , 4]);
123
- return [4 /*yield*/, getAccountId({ AccessKeyID: AccessKeyID, AccessKeySecret: AccessKeySecret, SecurityToken: SecurityToken })];
124
- case 2:
125
124
  data = _c.sent();
126
- keyInformation['AccountID'] = data.AccountId;
127
- return [3 /*break*/, 4];
128
- case 3:
129
- error_4 = _c.sent();
130
- if (!f) {
131
- new error_2.HumanWarning({
132
- warningMessage: 'You may be configuring an incorrect Alibaba Cloud SecretKey.',
133
- tips: "Please check the accuracy of Alibaba Cloud SecretKey. If your configuration is not an Alibaba Cloud SecretKey, you can force writing by adding the -f parameter. Or execute ".concat(chalk.yellow("".concat(getCommand(), " -f"))),
134
- });
135
- process.exit(1);
125
+ if (data.AccountId !== keyInformation['AccountID']) {
126
+ new error_2.HumanWarning({ warningMessage: "It is detected that the account id you added may be incorrect, please confirm whether the account id should be ".concat(data.AccountId) });
136
127
  }
137
128
  return [3 /*break*/, 4];
129
+ case 2: return [4 /*yield*/, getAccountId({ AccessKeyID: AccessKeyID, AccessKeySecret: AccessKeySecret, SecurityToken: SecurityToken }, f)];
130
+ case 3:
131
+ data = _c.sent();
132
+ keyInformation['AccountID'] = data.AccountId;
133
+ _c.label = 4;
138
134
  case 4:
139
- if (AccountID) {
140
- keyInformation['AccountID'] = String(AccountID);
141
- }
142
135
  if (SecretAccessKey) {
143
136
  keyInformation['SecretAccessKey'] = SecretAccessKey;
144
137
  }
@@ -168,5 +161,30 @@ function run(program) {
168
161
  });
169
162
  }); };
170
163
  }
164
+ var getAccountId = function (_a, f) {
165
+ var AccessKeyID = _a.AccessKeyID, AccessKeySecret = _a.AccessKeySecret, SecurityToken = _a.SecurityToken;
166
+ return __awaiter(void 0, void 0, void 0, function () {
167
+ var error_4;
168
+ return __generator(this, function (_b) {
169
+ switch (_b.label) {
170
+ case 0:
171
+ _b.trys.push([0, 2, , 3]);
172
+ return [4 /*yield*/, core_1.default.getAccountId({ AccessKeyID: AccessKeyID, AccessKeySecret: AccessKeySecret, SecurityToken: SecurityToken })];
173
+ case 1: return [2 /*return*/, _b.sent()];
174
+ case 2:
175
+ error_4 = _b.sent();
176
+ if (!f) {
177
+ new error_2.HumanWarning({
178
+ warningMessage: 'You may be configuring an incorrect Alibaba Cloud SecretKey.',
179
+ tips: "Please check the accuracy of Alibaba Cloud SecretKey. If your configuration is not an Alibaba Cloud SecretKey, you can force writing by adding the -f parameter. Or execute ".concat(chalk.yellow("".concat(getCommand(), " -f"))),
180
+ });
181
+ process.exit(1);
182
+ }
183
+ return [3 /*break*/, 3];
184
+ case 3: return [2 /*return*/];
185
+ }
186
+ });
187
+ });
188
+ };
171
189
  module.exports = run;
172
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29uZmlnL2FkZC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ0EscUNBQTJDO0FBQzNDLHFDQUErQztBQUMvQywwREFBb0M7QUFDNUIsSUFBQSxhQUFhLEdBQWtFLGNBQUksY0FBdEUsRUFBRSxrQkFBa0IsR0FBOEMsY0FBSSxtQkFBbEQsRUFBRSxNQUFNLEdBQXNDLGNBQUksT0FBMUMsRUFBRSxZQUFZLEdBQXdCLGNBQUksYUFBNUIsRUFBRSxVQUFVLEdBQVksY0FBSSxXQUFoQixFQUFFLEtBQUssR0FBSyxjQUFJLE1BQVQsQ0FBVTtBQUM1RixxQ0FBd0Q7QUFFeEQsSUFBTSxXQUFXLEdBQUcsZ29CQWdCbEIsSUFBQSxhQUFLLEVBQUMsSUFBSSxDQUFDLGtDQUF3QixNQUFNLENBQUMsU0FBUyxDQUNuRCwrRUFBK0UsQ0FDaEYsQ0FBRSxDQUFDO0FBRUosU0FBUyxHQUFHLENBQUMsT0FBZ0I7SUFBN0IsaUJBbUhDO0lBbEhDLElBQU0sT0FBTyxHQUFHLE9BQU87U0FDcEIsT0FBTyxDQUFDLEtBQUssQ0FBQztTQUNkLEtBQUssQ0FBQyxXQUFXLENBQUM7U0FDbEIsTUFBTSxDQUFDLHlCQUF5QixFQUFFLDhCQUE4QixDQUFDO1NBQ2pFLE1BQU0sQ0FBQyw2QkFBNkIsRUFBRSxnQ0FBZ0MsQ0FBQztTQUN2RSxNQUFNLENBQUMscUNBQXFDLEVBQUUsb0NBQW9DLENBQUM7U0FDbkYsTUFBTSxDQUFDLGlDQUFpQyxFQUFFLGtDQUFrQyxDQUFDO1NBQzdFLE1BQU0sQ0FBQyxxQ0FBcUMsRUFBRSxvQ0FBb0MsQ0FBQztTQUNuRixNQUFNLENBQUMseUJBQXlCLEVBQUUsOEJBQThCLENBQUM7U0FDakUsTUFBTSxDQUFDLHlCQUF5QixFQUFFLDhCQUE4QixDQUFDO1NBQ2pFLE1BQU0sQ0FBQyx1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
190
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29uZmlnL2FkZC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ0EscUNBQTJDO0FBQzNDLHFDQUErQztBQUMvQywwREFBb0M7QUFDNUIsSUFBQSxhQUFhLEdBQW9ELGNBQUksY0FBeEQsRUFBRSxrQkFBa0IsR0FBZ0MsY0FBSSxtQkFBcEMsRUFBRSxNQUFNLEdBQXdCLGNBQUksT0FBNUIsRUFBRSxVQUFVLEdBQVksY0FBSSxXQUFoQixFQUFFLEtBQUssR0FBSyxjQUFJLE1BQVQsQ0FBVTtBQUM5RSxxQ0FBd0Q7QUFFeEQsSUFBTSxXQUFXLEdBQUcsZ29CQWdCbEIsSUFBQSxhQUFLLEVBQUMsSUFBSSxDQUFDLGtDQUF3QixNQUFNLENBQUMsU0FBUyxDQUNuRCwrRUFBK0UsQ0FDaEYsQ0FBRSxDQUFDO0FBRUosU0FBUyxHQUFHLENBQUMsT0FBZ0I7SUFBN0IsaUJBNkdDO0lBNUdDLElBQU0sT0FBTyxHQUFHLE9BQU87U0FDcEIsT0FBTyxDQUFDLEtBQUssQ0FBQztTQUNkLEtBQUssQ0FBQyxXQUFXLENBQUM7U0FDbEIsTUFBTSxDQUFDLHlCQUF5QixFQUFFLDhCQUE4QixDQUFDO1NBQ2pFLE1BQU0sQ0FBQyw2QkFBNkIsRUFBRSxnQ0FBZ0MsQ0FBQztTQUN2RSxNQUFNLENBQUMscUNBQXFDLEVBQUUsb0NBQW9DLENBQUM7U0FDbkYsTUFBTSxDQUFDLGlDQUFpQyxFQUFFLGtDQUFrQyxDQUFDO1NBQzdFLE1BQU0sQ0FBQyxxQ0FBcUMsRUFBRSxvQ0FBb0MsQ0FBQztTQUNuRixNQUFNLENBQUMseUJBQXlCLEVBQUUsOEJBQThCLENBQUM7U0FDakUsTUFBTSxDQUFDLHlCQUF5QixFQUFFLDhCQUE4QixDQUFDO1NBQ2pFLE1BQU0sQ0FBQyx1QkFBdUIsRUFBRSw2QkFBNkIsQ0FBQztTQUM5RCxNQUFNLENBQUMsbUNBQW1DLEVBQUUsbUNBQW1DLENBQUM7U0FDaEYsTUFBTSxDQUFDLDBCQUEwQixFQUFFLG1EQUFtRCxDQUFDO1NBQ3ZGLE1BQU0sQ0FBQyw0QkFBNEIsRUFBRSx3REFBd0QsQ0FBQztTQUM5RixNQUFNLENBQUMsMEJBQTBCLEVBQUUsZ0NBQWdDLENBQUM7U0FDcEUsTUFBTSxDQUFDLElBQUksRUFBRSxxQ0FBcUMsQ0FBQztTQUNuRCxVQUFVLENBQUMsWUFBWSxFQUFFLDBCQUEwQixDQUFDO1NBQ3BELGtCQUFrQixFQUFFO1NBQ3BCLFdBQVcsQ0FBQyxXQUFXLENBQUM7U0FDeEIsY0FBYyxDQUFDLEtBQUssQ0FBQztTQUNyQixNQUFNLENBQUMsVUFBTSxPQUFPOzs7Ozs7b0JBRWpCLHFCQUFNLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBQTs7b0JBQXZCLFNBQXVCLENBQUM7Ozs7b0JBRXhCLHFCQUFNLElBQUEsbUJBQVcsRUFBQyxPQUFLLENBQUMsRUFBQTs7b0JBQXhCLFNBQXdCLENBQUM7Ozs7O1NBRTVCLENBQUMsQ0FBQztJQUVMLElBQU0sUUFBUSxHQUFHLFVBQU0sT0FBTzs7Ozs7b0JBQ3RCLFFBQVEsR0FBRyxjQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBRXpELFNBQVMsR0FlUCxRQUFRLFVBZkQsRUFDVCxXQUFXLEdBY1QsUUFBUSxZQWRDLEVBQ1gsZUFBZSxHQWFiLFFBQVEsZ0JBYkssRUFDZixlQUFlLEdBWWIsUUFBUSxnQkFaSyxFQUNmLFNBQVMsR0FXUCxRQUFRLFVBWEQsRUFDVCxTQUFTLEdBVVAsUUFBUSxVQVZELEVBQ1QsY0FBYyxHQVNaLFFBQVEsZUFUSSxFQUNkLFFBQVEsR0FRTixRQUFRLFNBUkYsRUFDUixLQU9FLFFBQVEsUUFQZ0IsRUFBMUIsT0FBTyxtQkFBRyxJQUFBLGlCQUFTLEVBQUMsS0FBSyxDQUFDLEtBQUEsRUFDMUIsS0FNRSxRQUFRLFNBTmlCLEVBQTNCLFFBQVEsbUJBQUcsSUFBQSxpQkFBUyxFQUFDLEtBQUssQ0FBQyxLQUFBLEVBQzNCLGFBQWEsR0FLWCxRQUFRLGNBTEcsRUFDYixDQUFDLEdBSUMsUUFBUSxFQUpULEVBQ0QsTUFBTSxHQUdKLFFBQVEsT0FISixFQUNOLFNBQVMsR0FFUCxRQUFRLFVBRkQsRUFDVCxJQUFJLEdBQ0YsUUFBUSxLQUROLENBQ087b0JBQ2IsSUFBSSxJQUFJLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztvQkFFakIsY0FBYyxHQUFHLEVBQUUsQ0FBQztvQkFDMUIsSUFBSSxPQUFPLElBQUksUUFBUSxFQUFFO3dCQUNqQixXQUFXLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQzt3QkFDakMsYUFBYSxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7d0JBQzFDLElBQUksV0FBVyxDQUFDLE1BQU0sS0FBSyxhQUFhLENBQUMsTUFBTSxFQUFFOzRCQUMvQyxLQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7Z0NBQzNDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7NkJBQ25EO3lCQUNGOzZCQUFNOzRCQUNMLE1BQU0sSUFBSSxvQkFBWSxDQUFDLDZEQUE2RCxDQUFDLENBQUM7eUJBQ3ZGO3FCQUNGO29CQUVELElBQUksV0FBVyxFQUFFO3dCQUNmLGNBQWMsQ0FBQyxhQUFhLENBQUMsR0FBRyxXQUFXLENBQUM7cUJBQzdDO29CQUNELElBQUksZUFBZSxFQUFFO3dCQUNuQixjQUFjLENBQUMsaUJBQWlCLENBQUMsR0FBRyxlQUFlLENBQUM7cUJBQ3JEO29CQUNELElBQUksYUFBYSxFQUFFO3dCQUNqQixjQUFjLENBQUMsZUFBZSxDQUFDLEdBQUcsYUFBYSxDQUFDO3FCQUNqRDt5QkFFRyxDQUFBLFdBQVcsSUFBSSxlQUFlLENBQUEsRUFBOUIsd0JBQThCO3lCQUM1QixTQUFTLEVBQVQsd0JBQVM7b0JBQ1gsY0FBYyxDQUFDLFdBQVcsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztvQkFDbkMscUJBQU0sWUFBWSxDQUFDLEVBQUUsV0FBVyxhQUFBLEVBQUUsZUFBZSxpQkFBQSxFQUFFLGFBQWEsZUFBQSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUE7O29CQUE3RSxJQUFJLEdBQUcsU0FBc0U7b0JBQ25GLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxjQUFjLENBQUMsV0FBVyxDQUFDLEVBQUU7d0JBQ2xELElBQUksb0JBQVksQ0FBQyxFQUFFLGNBQWMsRUFBRSx5SEFBa0gsSUFBSSxDQUFDLFNBQVMsQ0FBRSxFQUFFLENBQUMsQ0FBQztxQkFDMUs7O3dCQUVZLHFCQUFNLFlBQVksQ0FBQyxFQUFFLFdBQVcsYUFBQSxFQUFFLGVBQWUsaUJBQUEsRUFBRSxhQUFhLGVBQUEsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFBOztvQkFBN0UsSUFBSSxHQUFHLFNBQXNFO29CQUNuRixjQUFjLENBQUMsV0FBVyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQzs7O29CQUlqRCxJQUFJLGVBQWUsRUFBRTt3QkFDbkIsY0FBYyxDQUFDLGlCQUFpQixDQUFDLEdBQUcsZUFBZSxDQUFDO3FCQUNyRDtvQkFDRCxJQUFJLFNBQVMsRUFBRTt3QkFDYixjQUFjLENBQUMsV0FBVyxDQUFDLEdBQUcsU0FBUyxDQUFDO3FCQUN6QztvQkFDRCxJQUFJLFNBQVMsRUFBRTt3QkFDYixjQUFjLENBQUMsV0FBVyxDQUFDLEdBQUcsU0FBUyxDQUFDO3FCQUN6QztvQkFDRCxJQUFJLFNBQVMsRUFBRTt3QkFDYixjQUFjLENBQUMsV0FBVyxDQUFDLEdBQUcsU0FBUyxDQUFDO3FCQUN6QztvQkFDRCxJQUFJLFFBQVEsRUFBRTt3QkFDWixjQUFjLENBQUMsVUFBVSxDQUFDLEdBQUcsUUFBUSxDQUFDO3FCQUN2QztvQkFDRCxJQUFJLGNBQWMsRUFBRTt3QkFDbEIsY0FBYyxDQUFDLGdCQUFnQixDQUFDLEdBQUcsY0FBYyxDQUFDO3FCQUNuRDt5QkFDRyxDQUFBLE1BQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQSxFQUF0Qyx3QkFBc0M7b0JBQ2pDLHFCQUFNLGtCQUFrQixDQUFDLGNBQWMsRUFBRSxNQUFNLElBQUksU0FBUyxDQUFDLEVBQUE7d0JBQXBFLHNCQUFPLFNBQTZELEVBQUM7d0JBRXZFLHFCQUFNLGFBQWEsRUFBRSxFQUFBOztvQkFBckIsU0FBcUIsQ0FBQzs7OztTQUN2QixDQUFDO0FBQ0osQ0FBQztBQUVELElBQU0sWUFBWSxHQUFHLFVBQU8sRUFBK0MsRUFBRSxDQUFVO1FBQXpELFdBQVcsaUJBQUEsRUFBRSxlQUFlLHFCQUFBLEVBQUUsYUFBYSxtQkFBQTs7Ozs7OztvQkFFOUQscUJBQU0sY0FBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFdBQVcsYUFBQSxFQUFFLGVBQWUsaUJBQUEsRUFBRSxhQUFhLGVBQUEsRUFBRSxDQUFDLEVBQUE7d0JBQS9FLHNCQUFPLFNBQXdFLEVBQUM7OztvQkFFaEYsSUFBSSxDQUFDLENBQUMsRUFBRTt3QkFDTixJQUFJLG9CQUFZLENBQUM7NEJBQ2YsY0FBYyxFQUFFLDhEQUE4RDs0QkFDOUUsSUFBSSxFQUFFLHNMQUErSyxLQUFLLENBQUMsTUFBTSxDQUMvTCxVQUFHLFVBQVUsRUFBRSxRQUFLLENBQ3JCLENBQUU7eUJBQ0osQ0FBQyxDQUFDO3dCQUNILE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7cUJBQ2pCOzs7Ozs7Q0FFSixDQUFBO0FBRUQsaUJBQVMsR0FBRyxDQUFDIn0=