oci-common 2.26.0 → 2.29.0
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/lib/auth/X509-federation-client.d.ts +0 -4
- package/lib/auth/X509-federation-client.js +5 -4
- package/lib/auth/X509-federation-client.js.map +1 -1
- package/lib/auth/abstract-federation-client-authenticated-details-provider-builder.js +3 -2
- package/lib/auth/abstract-federation-client-authenticated-details-provider-builder.js.map +1 -1
- package/lib/auth/config-file-auth.js +5 -3
- package/lib/auth/config-file-auth.js.map +1 -1
- package/lib/auth/resource-principal-authentication-details-provider.js +9 -5
- package/lib/auth/resource-principal-authentication-details-provider.js.map +1 -1
- package/lib/circuit-breaker.js +2 -2
- package/lib/circuit-breaker.js.map +1 -1
- package/lib/config-file-reader.js +9 -5
- package/lib/config-file-reader.js.map +1 -1
- package/lib/error.d.ts +9 -5
- package/lib/error.js +20 -3
- package/lib/error.js.map +1 -1
- package/lib/helper.d.ts +1 -1
- package/lib/helper.js +5 -5
- package/lib/helper.js.map +1 -1
- package/lib/http.d.ts +2 -2
- package/lib/http.js +3 -3
- package/lib/http.js.map +1 -1
- package/lib/request-generator.js +15 -6
- package/lib/request-generator.js.map +1 -1
- package/lib/retrier.d.ts +2 -1
- package/lib/retrier.js +49 -5
- package/lib/retrier.js.map +1 -1
- package/package.json +1 -1
|
@@ -6,10 +6,6 @@ import FederationClient from "./models/federation-client";
|
|
|
6
6
|
import SessionKeySupplier from "./models/session-key-supplier";
|
|
7
7
|
import X509CertificateSupplier from "./models/X509-certificate-supplier";
|
|
8
8
|
import SecurityTokenAdapter from "./security-token-adapter";
|
|
9
|
-
/**
|
|
10
|
-
* This class gets a security token from the auth service by signing the request with a PKI issued leaf certificate,
|
|
11
|
-
* passing along a temporary public key that is bounded to the the security token, and the leaf certificate.
|
|
12
|
-
*/
|
|
13
9
|
export default class X509FederationClient implements FederationClient {
|
|
14
10
|
private federationEndpoint;
|
|
15
11
|
private _tenancyId;
|
|
@@ -29,6 +29,7 @@ const circuit_breaker_1 = __importDefault(require("../circuit-breaker"));
|
|
|
29
29
|
* This class gets a security token from the auth service by signing the request with a PKI issued leaf certificate,
|
|
30
30
|
* passing along a temporary public key that is bounded to the the security token, and the leaf certificate.
|
|
31
31
|
*/
|
|
32
|
+
const INSTANCE_PRINCIPAL_GENERIC_ERROR = "Instance principals authentication can only be used on OCI compute instances. Please confirm this code is running on an OCI compute instance. See https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/callingservicesfrominstances.htm for more info.";
|
|
32
33
|
class X509FederationClient {
|
|
33
34
|
constructor(federationEndpoint, _tenancyId, _leafCertificateSupplier, sessionKeySupplier, intermediateCertificateSuppliers, purpose) {
|
|
34
35
|
this.federationEndpoint = federationEndpoint;
|
|
@@ -91,7 +92,7 @@ class X509FederationClient {
|
|
|
91
92
|
this._leafCertificateSupplier = yield this._leafCertificateSupplier.refresh();
|
|
92
93
|
}
|
|
93
94
|
catch (e) {
|
|
94
|
-
throw Error(`Fail to refresh leafCertificateSupplier, error: ${e}`);
|
|
95
|
+
throw Error(`Fail to refresh leafCertificateSupplier, error: ${e}. ${INSTANCE_PRINCIPAL_GENERIC_ERROR}`);
|
|
95
96
|
}
|
|
96
97
|
// When using default purpose (ex, instance principals), the token request should always be signed with the same tenant id as the certificate.
|
|
97
98
|
// For other purposes, the tenant id can be different.
|
|
@@ -110,7 +111,7 @@ class X509FederationClient {
|
|
|
110
111
|
}
|
|
111
112
|
}
|
|
112
113
|
catch (e) {
|
|
113
|
-
throw Error("Cannot refresh the intermediate certification");
|
|
114
|
+
throw Error("Cannot refresh the intermediate certification. " + INSTANCE_PRINCIPAL_GENERIC_ERROR);
|
|
114
115
|
}
|
|
115
116
|
}
|
|
116
117
|
this.securityTokenAdapter = yield this.getSecurityTokenFromServer();
|
|
@@ -186,7 +187,7 @@ class X509FederationClient {
|
|
|
186
187
|
return yield this.getSecurityTokenFromServer();
|
|
187
188
|
}
|
|
188
189
|
else {
|
|
189
|
-
throw Error(`Failed to call auth service for token, error: ${response}`);
|
|
190
|
+
throw Error(`Failed to call auth service for token, error: ${response}. ${INSTANCE_PRINCIPAL_GENERIC_ERROR}`);
|
|
190
191
|
}
|
|
191
192
|
}
|
|
192
193
|
this.retry = 0;
|
|
@@ -194,7 +195,7 @@ class X509FederationClient {
|
|
|
194
195
|
return new security_token_adapter_1.default(securityToken.token, this.sessionKeySupplier);
|
|
195
196
|
}
|
|
196
197
|
catch (e) {
|
|
197
|
-
throw Error(`Failed to call call Auth service, error: ${e}`);
|
|
198
|
+
throw Error(`Failed to call call Auth service, error: ${e}. ${INSTANCE_PRINCIPAL_GENERIC_ERROR}`);
|
|
198
199
|
}
|
|
199
200
|
});
|
|
200
201
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"X509-federation-client.js","sourceRoot":"","sources":["../../../../../lib/auth/X509-federation-client.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;AAEH,iCAAkC;AAClC,MAAM,aAAa,GAAQ,OAAO,CAAC,gBAAgB,CAAC,CAAC;AACrD,+BAAgC;AAIhC,sFAA4D;AAC5D,sEAA6C;AAG7C,sCAA0C;AAC1C,kCAA0C;AAE1C,sCAAqD;AACrD,yEAAgD;AAEhD;;;GAGG;AAEH,MAAqB,oBAAoB;IAIvC,YACU,kBAA0B,EAC1B,UAAkB,EAClB,wBAAiD,EACjD,kBAAsC,EACtC,gCAA2D,EAC3D,OAAe;QALf,uBAAkB,GAAlB,kBAAkB,CAAQ;QAC1B,eAAU,GAAV,UAAU,CAAQ;QAClB,6BAAwB,GAAxB,wBAAwB,CAAyB;QACjD,uBAAkB,GAAlB,kBAAkB,CAAoB;QACtC,qCAAgC,GAAhC,gCAAgC,CAA2B;QAC3D,YAAO,GAAP,OAAO,CAAQ;QARjB,UAAK,GAAG,CAAC,CAAC;QAUhB,IAAI,CAAC,oBAAoB,GAAG,IAAI,gCAAoB,CAAC,EAAE,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACpF,CAAC;IAED,uBAAuB;IACvB,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,oCAAoC;IACpC,IAAI,uBAAuB;QACzB,OAAO,IAAI,CAAC,wBAAwB,CAAC;IACvC,CAAC;IAED;;;;;;;OAOG;IACG,gBAAgB;;YACpB,IAAI,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,EAAE;gBACvC,OAAO,IAAI,CAAC,oBAAoB,CAAC,gBAAgB,EAAE,CAAC;aACrD;YACD,OAAO,MAAM,IAAI,CAAC,+BAA+B,CAAC,IAAI,CAAC,CAAC;QAC1D,CAAC;KAAA;IAED;;;;OAIG;IACG,cAAc,CAAC,GAAW;;YAC9B,MAAM,IAAI,CAAC,+BAA+B,CAAC,IAAI,CAAC,CAAC;YACjD,OAAO,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QACvD,CAAC;KAAA;IAEK,0BAA0B;;YAC9B,OAAO,MAAM,IAAI,CAAC,+BAA+B,CAAC,KAAK,CAAC,CAAC;QAC3D,CAAC;KAAA;IAEa,+BAA+B,CAC3C,yBAAkC;;YAElC,oFAAoF;YACpF,IAAI,CAAC,yBAAyB,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,EAAE;gBACtE,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC;gBAEtC,uFAAuF;gBACvF,IAAI,IAAI,CAAC,wBAAwB,IAAI,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE;oBAC1E,IAAI;wBACF,IAAI,CAAC,wBAAwB,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,CAAC;qBAC/E;oBAAC,OAAO,CAAC,EAAE;wBACV,MAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"X509-federation-client.js","sourceRoot":"","sources":["../../../../../lib/auth/X509-federation-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,6 +30,7 @@ const X509_federation_client_1 = __importDefault(require("./X509-federation-clie
|
|
|
30
30
|
const session_key_supplier_1 = __importDefault(require("./session-key-supplier"));
|
|
31
31
|
const url_based_x509_certificate_supplier_1 = require("./url-based-x509-certificate-supplier");
|
|
32
32
|
const circuit_breaker_1 = __importDefault(require("../circuit-breaker"));
|
|
33
|
+
const INSTANCE_PRINCIPAL_GENERIC_ERROR = "Instance principals authentication can only be used on OCI compute instances. Please confirm this code is running on an OCI compute instance. See https://docs.oracle.com/en-us/iaas/Content/Identity/Tasks/callingservicesfrominstances.htm for more info.";
|
|
33
34
|
class AbstractFederationClientAuthenticationDetailsProviderBuilder {
|
|
34
35
|
constructor() {
|
|
35
36
|
// url template for auth service.
|
|
@@ -168,7 +169,7 @@ class AbstractFederationClientAuthenticationDetailsProviderBuilder {
|
|
|
168
169
|
this._federationEndpoint = endpoint;
|
|
169
170
|
}
|
|
170
171
|
catch (e) {
|
|
171
|
-
throw Error(`Endpoint for auth service is not known in region ${this.region}`);
|
|
172
|
+
throw Error(`Endpoint for auth service is not known in region ${this.region}. ${INSTANCE_PRINCIPAL_GENERIC_ERROR}`);
|
|
172
173
|
}
|
|
173
174
|
}
|
|
174
175
|
return this._federationEndpoint;
|
|
@@ -194,7 +195,7 @@ class AbstractFederationClientAuthenticationDetailsProviderBuilder {
|
|
|
194
195
|
}
|
|
195
196
|
}
|
|
196
197
|
catch (e) {
|
|
197
|
-
throw Error("Failed to autoDetectCertificatesUsingMetadataUrl");
|
|
198
|
+
throw Error("Failed to autoDetectCertificatesUsingMetadataUrl. " + INSTANCE_PRINCIPAL_GENERIC_ERROR);
|
|
198
199
|
}
|
|
199
200
|
});
|
|
200
201
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abstract-federation-client-authenticated-details-provider-builder.js","sourceRoot":"","sources":["../../../../../lib/auth/abstract-federation-client-authenticated-details-provider-builder.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;AAEH;;;;GAIG;AAEH,0DAAsD;AACtD,kCAA0C;AAG1C,sCAAmC;AACnC,oCAAiC;AACjC,sEAA6C;AAG7C,sFAA4D;AAC5D,kFAA4D;AAC5D,+FAG+C;AAC/C,yEAAgD;AAEhD,MAA8B,4DAA4D;IAA1F;QAIE,iCAAiC;QACvB,aAAQ,GAAG,2CAA2C,CAAC;QAEjE,wCAAwC;QAC9B,8BAAyB,GAAG,gCAAgC,CAAC;QAEvE,kFAAkF;QAC1E,0BAAqB,GAAG,eAAe,CAAC;QACxC,kBAAa,GAAG,eAAe,CAAC;QAExC,gCAAgC;QACtB,qBAAgB,GAAG,IAAI,CAAC,yBAAyB,CAAC;QAE5D,+BAA+B;QACrB,wBAAmB,GAAW,EAAE,CAAC;QAK3C,mEAAmE;QACzD,eAAU,GAAW,EAAE,CAAC;QAElC,0GAA0G;QAClG,aAAQ,GAAW,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"abstract-federation-client-authenticated-details-provider-builder.js","sourceRoot":"","sources":["../../../../../lib/auth/abstract-federation-client-authenticated-details-provider-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,6 +20,7 @@ const config_file_reader_1 = require("../config-file-reader");
|
|
|
20
20
|
const fs_1 = require("fs");
|
|
21
21
|
const region_1 = require("../region");
|
|
22
22
|
const realm_1 = require("../realm");
|
|
23
|
+
const CONFIG_FILE_AUTH_INFO = "For more info about config file and how to get required information, see https://docs.oracle.com/en-us/iaas/Content/API/Concepts/sdkconfig.htm for more info on OCI configuration files.";
|
|
23
24
|
class ConfigFileAuthenticationDetailsProvider {
|
|
24
25
|
/**
|
|
25
26
|
* Creates a new instance using the config file at the default location,
|
|
@@ -72,7 +73,7 @@ class ConfigFileAuthenticationDetailsProvider {
|
|
|
72
73
|
return region;
|
|
73
74
|
}
|
|
74
75
|
catch (e) {
|
|
75
|
-
throw new Error(`Error from retrying to retrieve region from regionId: ${e}`);
|
|
76
|
+
throw new Error(`Error from retrying to retrieve region from regionId: ${e}. ${CONFIG_FILE_AUTH_INFO}`);
|
|
76
77
|
}
|
|
77
78
|
}
|
|
78
79
|
createConfigFileAuth(file) {
|
|
@@ -87,7 +88,8 @@ class ConfigFileAuthenticationDetailsProvider {
|
|
|
87
88
|
region = this.retrieveRegionFromRegionId(regionId);
|
|
88
89
|
}
|
|
89
90
|
else {
|
|
90
|
-
throw Error("Region not specified in Config file or OCI_REGION env variable. Can not proceed without setting a region."
|
|
91
|
+
throw Error("Region not specified in Config file or OCI_REGION env variable. Can not proceed without setting a region. " +
|
|
92
|
+
CONFIG_FILE_AUTH_INFO);
|
|
91
93
|
}
|
|
92
94
|
if (delegationTokenPath) {
|
|
93
95
|
delegationToken = fs_1.readFileSync(delegationTokenPath, "utf8").replace(/\n/g, "");
|
|
@@ -111,7 +113,7 @@ class ConfigFileAuthenticationDetailsProvider {
|
|
|
111
113
|
return key;
|
|
112
114
|
}
|
|
113
115
|
catch (e) {
|
|
114
|
-
throw "Failed to read private key from file path.";
|
|
116
|
+
throw "Failed to read private key from file path. " + CONFIG_FILE_AUTH_INFO;
|
|
115
117
|
}
|
|
116
118
|
}
|
|
117
119
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-file-auth.js","sourceRoot":"","sources":["../../../../../lib/auth/config-file-auth.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;AAEH,iCAIgB;AAChB,oCAAwC;AACxC,8DAAwF;AACxF,2BAAkC;AAClC,sCAAmC;AACnC,oCAAiC;AAEjC,MAAa,uCAAuC;IAGlD;;;;;;;;;;OAUG;IACH,YAAY,qBAA8B,EAAE,OAAgB;QAC1D,MAAM,GAAG,GAAG,OAAO,IAAI,qCAAgB,CAAC,oBAAoB,CAAC;QAC7D,IAAI,qBAAqB,EAAE;YACzB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CACvC,qCAAgB,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,GAAG,CAAC,CAC/D,CAAC;SACH;aAAM;YACL,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,oBAAoB,CAAC,qCAAgB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;SAC/E;IACH,CAAC;IAED;;;;;;;OAOG;IACH,0BAA0B,CAAC,QAAgB;QACzC,IAAI,MAAc,CAAC;QACnB,IAAI;YACF,MAAM,GAAG,eAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YACvC,IAAI,CAAC,MAAM,EAAE;gBACX,OAAO,CAAC,IAAI,CACV,kBAAkB,QAAQ,+DAA+D,CAC1F,CAAC;gBACF,MAAM,yBAAyB,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;gBACnE,2GAA2G;gBAC3G,0HAA0H;gBAC1H,IAAI,yBAAyB,EAAE;oBAC7B,OAAO,CAAC,IAAI,CAAC,8CAA8C,yBAAyB,EAAE,CAAC,CAAC;oBACxF,MAAM,YAAY,GAAG,aAAK,CAAC,QAAQ,CAAC,SAAS,EAAE,yBAAyB,CAAC,CAAC;oBAC1E,MAAM,GAAG,eAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;iBAClD;qBAAM;oBACL,6EAA6E;oBAC7E,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;oBACjD,MAAM,GAAG,eAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,aAAK,CAAC,GAAG,CAAC,CAAC;iBAC/C;aACF;YACD,OAAO,MAAM,CAAC;SACf;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,
|
|
1
|
+
{"version":3,"file":"config-file-auth.js","sourceRoot":"","sources":["../../../../../lib/auth/config-file-auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -57,6 +57,7 @@ const file_based_key_supplier_1 = __importDefault(require("./file-based-key-supp
|
|
|
57
57
|
const abstract_requesting_authentication_detail_provider_1 = __importDefault(require("./abstract-requesting-authentication-detail-provider"));
|
|
58
58
|
const file_based_resource_principal_federation_client_1 = __importDefault(require("./file-based-resource-principal-federation-client"));
|
|
59
59
|
const fixed_content_resource_principal_federation_client_1 = __importDefault(require("./fixed-content-resource-principal-federation-client"));
|
|
60
|
+
const RP_DEBUG_INFORMATION_LOG = "Resource principals authentication can only be used in certain OCI services. Please check that the OCI service you're running this code from supports Resource principals. See https://docs.oracle.com/en-us/iaas/Content/API/Concepts/sdk_authentication_methods.htm#sdk_authentication_methods_resource_principal for more info.";
|
|
60
61
|
class ResourcePrincipalAuthenticationDetailsProvider extends abstract_requesting_authentication_detail_provider_1.default {
|
|
61
62
|
constructor(federationClient, sessionKeySupplier, region) {
|
|
62
63
|
super(federationClient, sessionKeySupplier);
|
|
@@ -123,13 +124,14 @@ ResourcePrincipalAuthenticationDetailsProvider.ResourcePrincipalAuthenticationDe
|
|
|
123
124
|
build() {
|
|
124
125
|
const OciResourcePrincipalVersion = process.env[ResourcePrincipalAuthenticationDetailsProvider.OCI_RESOURCE_PRINCIPAL_VERSION];
|
|
125
126
|
if (!OciResourcePrincipalVersion) {
|
|
126
|
-
throw Error("OCI_RESOURCE_PRINCIPAL_VERSION environment variable is missing"
|
|
127
|
+
throw Error("OCI_RESOURCE_PRINCIPAL_VERSION environment variable is missing " +
|
|
128
|
+
RP_DEBUG_INFORMATION_LOG);
|
|
127
129
|
}
|
|
128
130
|
switch (OciResourcePrincipalVersion) {
|
|
129
131
|
case ResourcePrincipalAuthenticationDetailsProvider.RP_VERSION_2_2:
|
|
130
132
|
return ResourcePrincipalAuthenticationDetailsProviderBuilder.build_2_2();
|
|
131
133
|
default:
|
|
132
|
-
throw Error(`OCI_RESOURCE_PRINCIPAL_VERSION environment variable has an unknown value ${OciResourcePrincipalVersion}`);
|
|
134
|
+
throw Error(`OCI_RESOURCE_PRINCIPAL_VERSION environment variable has an unknown value ${OciResourcePrincipalVersion}. ${RP_DEBUG_INFORMATION_LOG}`);
|
|
133
135
|
}
|
|
134
136
|
}
|
|
135
137
|
/**
|
|
@@ -146,13 +148,15 @@ ResourcePrincipalAuthenticationDetailsProvider.ResourcePrincipalAuthenticationDe
|
|
|
146
148
|
const ociResourcePrincipalRPST = process.env[ResourcePrincipalAuthenticationDetailsProvider.OCI_RESOURCE_PRINCIPAL_RPST];
|
|
147
149
|
const ociResourcePrincipalRegion = process.env[ResourcePrincipalAuthenticationDetailsProvider.OCI_RESOURCE_PRINCIPAL_REGION_ENV_VAR_NAME];
|
|
148
150
|
if (!ociResourcePrincipalPrivateKey) {
|
|
149
|
-
throw Error("OCI_RESOURCE_PRINCIPAL_PRIVATE_PEM environment variable missing"
|
|
151
|
+
throw Error("OCI_RESOURCE_PRINCIPAL_PRIVATE_PEM environment variable missing. " +
|
|
152
|
+
RP_DEBUG_INFORMATION_LOG);
|
|
150
153
|
}
|
|
151
154
|
if (!ociResourcePrincipalRPST) {
|
|
152
|
-
throw Error("OCI_RESOURCE_PRINCIPAL_RPST environment variable is missing");
|
|
155
|
+
throw Error("OCI_RESOURCE_PRINCIPAL_RPST environment variable is missing. " + RP_DEBUG_INFORMATION_LOG);
|
|
153
156
|
}
|
|
154
157
|
if (!ociResourcePrincipalRegion) {
|
|
155
|
-
throw Error("OCI_RESOURCE_PRINCIPAL_REGION_ENV_VAR_NAME environment variable missing"
|
|
158
|
+
throw Error("OCI_RESOURCE_PRINCIPAL_REGION_ENV_VAR_NAME environment variable missing. " +
|
|
159
|
+
RP_DEBUG_INFORMATION_LOG);
|
|
156
160
|
}
|
|
157
161
|
// Do a check to see if the file path of privateKey and passphrase are absolute path
|
|
158
162
|
if (path_1.default.isAbsolute(ociResourcePrincipalPrivateKey)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-principal-authentication-details-provider.js","sourceRoot":"","sources":["../../../../../lib/auth/resource-principal-authentication-details-provider.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,gDAAwB;AACxB,sCAAmC;AAGnC,8FAAmE;AACnE,wFAA6D;AAE7D,8IAAmH;AAEnH,wIAA2G;AAC3G,8IAAiH;AAEjH,MAAqB,8CACnB,SAAQ,4DAA+C;IAUvD,YACY,gBAAkC,EAClC,kBAAsC,EACtC,MAAc;QAExB,KAAK,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAAC;QAJlC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,uBAAkB,GAAlB,kBAAkB,CAAoB;QACtC,WAAM,GAAN,MAAM,CAAQ;IAG1B,CAAC;IAgBD,kGAAkG;IAClG,iDAAiD;IAC1C,MAAM,CAAC,OAAO;QACnB,OAAO,IAAI,8CAA8C,CAAC,qDAAqD,EAAE,CAAC,KAAK,EAAE,CAAC;IAC5H,CAAC;IAED;;;;;;OAMG;IACU,cAAc,CAAC,GAAW;;YACrC,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QACzD,CAAC;KAAA;IAED;;;OAGG;IACG,OAAO;;YACX,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC,0BAA0B,EAAE,CAAC;QAClE,CAAC;KAAA;IAED,gBAAgB;IAChB,SAAS;QACP,OAAO,IAAI,CAAC,MAAO,CAAC;IACtB,CAAC;;AA7DH,
|
|
1
|
+
{"version":3,"file":"resource-principal-authentication-details-provider.js","sourceRoot":"","sources":["../../../../../lib/auth/resource-principal-authentication-details-provider.ts"],"names":[],"mappings":"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"}
|
package/lib/circuit-breaker.js
CHANGED
|
@@ -16,7 +16,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
16
16
|
const helper_1 = require("./helper");
|
|
17
17
|
const retrier_1 = require("./retrier");
|
|
18
18
|
const Breaker = require("opossum");
|
|
19
|
-
function FetchWrapper(req, options) {
|
|
19
|
+
function FetchWrapper(req, options, targetService, operationName, timestamp, endpoint, apiReferenceLink) {
|
|
20
20
|
return __awaiter(this, void 0, void 0, function* () {
|
|
21
21
|
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
|
|
22
22
|
try {
|
|
@@ -27,7 +27,7 @@ function FetchWrapper(req, options) {
|
|
|
27
27
|
else {
|
|
28
28
|
const responseClone = response.clone();
|
|
29
29
|
const errBody = yield helper_1.handleErrorBody(responseClone);
|
|
30
|
-
const errorObject = helper_1.handleErrorResponse(responseClone, errBody);
|
|
30
|
+
const errorObject = helper_1.handleErrorResponse(responseClone, errBody, targetService, operationName, timestamp, endpoint, apiReferenceLink);
|
|
31
31
|
reject({
|
|
32
32
|
response,
|
|
33
33
|
errorObject
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"circuit-breaker.js","sourceRoot":"","sources":["../../../../lib/circuit-breaker.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;AAEH,qCAAgE;AAChE,uCAAkD;AAElD,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AAEnC,SAAe,YAAY,
|
|
1
|
+
{"version":3,"file":"circuit-breaker.js","sourceRoot":"","sources":["../../../../lib/circuit-breaker.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.ConfigAccumulator = exports.ConfigFile = exports.ConfigFileReader = void 0;
|
|
8
8
|
const fs_1 = require("fs");
|
|
9
|
+
const CONFIG_FILE_AUTH_INFO = "For more info about config file and how to get required information, see https://docs.oracle.com/en-us/iaas/Content/API/Concepts/sdkconfig.htm for more info on OCI configuration files.";
|
|
9
10
|
class ConfigFileReader {
|
|
10
11
|
/**
|
|
11
12
|
* Creates a new ConfigFile instance using the configuration at the default location,
|
|
@@ -34,7 +35,7 @@ class ConfigFileReader {
|
|
|
34
35
|
else if (fallbackExists) {
|
|
35
36
|
return ConfigFileReader.parseFileFromPath(ConfigFileReader.FALLBACK_DEFAULT_FILE_PATH, profile);
|
|
36
37
|
}
|
|
37
|
-
throw new Error(` Can't load the default config from ${ConfigFileReader.DEFAULT_FILE_PATH} or ${ConfigFileReader.FALLBACK_DEFAULT_FILE_PATH} because it does not exists or its not a file
|
|
38
|
+
throw new Error(` Can't load the default config from ${ConfigFileReader.DEFAULT_FILE_PATH} or ${ConfigFileReader.FALLBACK_DEFAULT_FILE_PATH} because it does not exists or its not a file. ${CONFIG_FILE_AUTH_INFO}`);
|
|
38
39
|
}
|
|
39
40
|
static expandUserHome(path) {
|
|
40
41
|
// If the home (~) shortcut is used, then attempt to determine correct path.
|
|
@@ -69,7 +70,7 @@ class ConfigFileReader {
|
|
|
69
70
|
const fileContent = fs_1.readFileSync(ConfigFileReader.expandUserHome(path), "utf8");
|
|
70
71
|
return ConfigFileReader.parse(fileContent, profile);
|
|
71
72
|
}
|
|
72
|
-
throw Error(`File does not exists at ${path}`);
|
|
73
|
+
throw Error(`File does not exists at ${path}. ${CONFIG_FILE_AUTH_INFO}`);
|
|
73
74
|
}
|
|
74
75
|
static parse(fileContent, profile) {
|
|
75
76
|
const lines = fileContent.split("\n").filter(Boolean);
|
|
@@ -81,7 +82,10 @@ class ConfigFileReader {
|
|
|
81
82
|
console.info("No DEFAULT profile was specified in the configuration");
|
|
82
83
|
}
|
|
83
84
|
if (profile !== null && !accumulator.configurationsByProfile.has(profile)) {
|
|
84
|
-
throw new Error("No profile named " +
|
|
85
|
+
throw new Error("No profile named " +
|
|
86
|
+
profile +
|
|
87
|
+
" exists in the configuration file. " +
|
|
88
|
+
CONFIG_FILE_AUTH_INFO);
|
|
85
89
|
}
|
|
86
90
|
return new ConfigFile(accumulator, profile);
|
|
87
91
|
}
|
|
@@ -143,7 +147,7 @@ class ConfigAccumulator {
|
|
|
143
147
|
if (trimmedLine.charAt(0) === "[" && trimmedLine.charAt(trimmedLine.length - 1) === "]") {
|
|
144
148
|
this.currentProfile = trimmedLine.substring(1, trimmedLine.length - 1).trim();
|
|
145
149
|
if (!this.currentProfile) {
|
|
146
|
-
throw Error(
|
|
150
|
+
throw Error(`Cannot have empty profile name: ${line}. ${CONFIG_FILE_AUTH_INFO}`);
|
|
147
151
|
}
|
|
148
152
|
if (this.currentProfile === ConfigFileReader.DEFAULT_PROFILE_NAME) {
|
|
149
153
|
this.foundDefaultProfile = true;
|
|
@@ -163,7 +167,7 @@ class ConfigAccumulator {
|
|
|
163
167
|
throw new Error("Found line with no key: " + line);
|
|
164
168
|
}
|
|
165
169
|
if (!this.currentProfile) {
|
|
166
|
-
throw new Error(
|
|
170
|
+
throw new Error(`Config parse error, attempted to read configuration without specifying a profile: ${line}. ${CONFIG_FILE_AUTH_INFO}`);
|
|
167
171
|
}
|
|
168
172
|
this.configurationsByProfile.get(this.currentProfile).set(key, value);
|
|
169
173
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-file-reader.js","sourceRoot":"","sources":["../../../../lib/config-file-reader.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,2BAA8C;AAE9C,MAAa,gBAAgB;IAc3B;;;;;;;OAOG;IACH,MAAM,CAAC,YAAY,CAAC,OAAsB;QACxC,MAAM,gBAAgB,GAAuB,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;QAEzE,uCAAuC;QACvC,MAAM,aAAa,GAAG,gBAAgB,CAAC,UAAU,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;QACtF,MAAM,cAAc,GAAG,gBAAgB,CAAC,UAAU,CAAC,gBAAgB,CAAC,0BAA0B,CAAC,CAAC;QAChG,IAAI,0BAA0B,GAAG,KAAK,CAAC;QACvC,IAAI,gBAAgB,EAAE;YACpB,0BAA0B,GAAG,gBAAgB,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;SAC5E;QAED,gGAAgG;QAChG,IAAI,aAAa,EAAE;YACjB,OAAO,gBAAgB,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;SACxF;aAAM,IAAI,0BAA0B,EAAE;YACrC,OAAO,gBAAgB,CAAC,iBAAiB,CAAC,gBAAiB,EAAE,OAAO,CAAC,CAAC;SACvE;aAAM,IAAI,cAAc,EAAE;YACzB,OAAO,gBAAgB,CAAC,iBAAiB,CACvC,gBAAgB,CAAC,0BAA0B,EAC3C,OAAO,CACR,CAAC;SACH;QACD,MAAM,IAAI,KAAK,CACb,uCAAuC,gBAAgB,CAAC,iBAAiB,OAAO,gBAAgB,CAAC,0BAA0B,
|
|
1
|
+
{"version":3,"file":"config-file-reader.js","sourceRoot":"","sources":["../../../../lib/config-file-reader.ts"],"names":[],"mappings":"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"}
|
package/lib/error.d.ts
CHANGED
|
@@ -1,10 +1,14 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) 2020, 2021 Oracle and/or its affiliates. All rights reserved.
|
|
3
|
-
* This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
|
|
4
|
-
*/
|
|
5
1
|
export declare class OciError extends Error {
|
|
6
2
|
statusCode: number;
|
|
7
3
|
serviceCode: string;
|
|
4
|
+
message: string;
|
|
8
5
|
opcRequestId: string | null;
|
|
9
|
-
|
|
6
|
+
targetService: string;
|
|
7
|
+
operationName: string;
|
|
8
|
+
timestamp: string;
|
|
9
|
+
requestEndpoint: string;
|
|
10
|
+
clientVersion: string;
|
|
11
|
+
loggingTips: string;
|
|
12
|
+
troubleshootingTips: string;
|
|
13
|
+
constructor(statusCode: number, serviceCode: string, message: string, opcRequestId: string | null, targetService: string, operationName: string, timestamp: string, requestEndpoint: string, apiReferenceLink: string);
|
|
10
14
|
}
|
package/lib/error.js
CHANGED
|
@@ -1,16 +1,33 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OciError = void 0;
|
|
2
4
|
/**
|
|
3
5
|
* Copyright (c) 2020, 2021 Oracle and/or its affiliates. All rights reserved.
|
|
4
6
|
* This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
|
|
5
7
|
*/
|
|
6
|
-
|
|
7
|
-
|
|
8
|
+
const package_json_1 = require("../package.json");
|
|
9
|
+
const TROUBLESHOOT_LINK = "https://docs.oracle.com/iaas/Content/API/References/apierrors.htm";
|
|
8
10
|
class OciError extends Error {
|
|
9
|
-
constructor(statusCode, serviceCode, message, opcRequestId) {
|
|
11
|
+
constructor(statusCode, serviceCode, message, opcRequestId, targetService, operationName, timestamp, requestEndpoint, apiReferenceLink) {
|
|
10
12
|
super(message);
|
|
11
13
|
this.statusCode = statusCode;
|
|
12
14
|
this.serviceCode = serviceCode;
|
|
15
|
+
this.message = message;
|
|
13
16
|
this.opcRequestId = opcRequestId;
|
|
17
|
+
this.targetService = targetService;
|
|
18
|
+
this.operationName = operationName;
|
|
19
|
+
this.timestamp = timestamp;
|
|
20
|
+
this.requestEndpoint = requestEndpoint;
|
|
21
|
+
this.clientVersion = `Oracle-TypeScriptSDK/${package_json_1.version}`;
|
|
22
|
+
this.loggingTips = "To get more info on the failing request, refer to https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/typescriptsdkconcepts.htm#typescriptsdkconcepts_topic_Logging for ways to log the request/response details.";
|
|
23
|
+
const apiErrorsInfo = `See ${TROUBLESHOOT_LINK}#apierrors_${statusCode}__${statusCode}_${serviceCode.toLowerCase()} for more information about resolving this error`;
|
|
24
|
+
const contactInfo = `If you are unable to resolve this ${targetService} issue, please contact Oracle support and provide them this full error message.`;
|
|
25
|
+
if (apiReferenceLink) {
|
|
26
|
+
this.troubleshootingTips = `${apiErrorsInfo} Also see ${apiReferenceLink} for details on this operation's requirements. ${contactInfo}`;
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
this.troubleshootingTips = `${apiErrorsInfo} ${contactInfo}`;
|
|
30
|
+
}
|
|
14
31
|
}
|
|
15
32
|
}
|
|
16
33
|
exports.OciError = OciError;
|
package/lib/error.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.js","sourceRoot":"","sources":["../../../../lib/error.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"error.js","sourceRoot":"","sources":["../../../../lib/error.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,kDAA0C;AAC1C,MAAM,iBAAiB,GAAG,mEAAmE,CAAC;AAE9F,MAAa,QAAS,SAAQ,KAAK;IAMjC,YACS,UAAkB,EAClB,WAAmB,EACnB,OAAe,EACf,YAA2B,EAC3B,aAAqB,EACrB,aAAqB,EACrB,SAAiB,EACjB,eAAuB,EAC9B,gBAAwB;QAExB,KAAK,CAAC,OAAO,CAAC,CAAC;QAVR,eAAU,GAAV,UAAU,CAAQ;QAClB,gBAAW,GAAX,WAAW,CAAQ;QACnB,YAAO,GAAP,OAAO,CAAQ;QACf,iBAAY,GAAZ,YAAY,CAAe;QAC3B,kBAAa,GAAb,aAAa,CAAQ;QACrB,kBAAa,GAAb,aAAa,CAAQ;QACrB,cAAS,GAAT,SAAS,CAAQ;QACjB,oBAAe,GAAf,eAAe,CAAQ;QAbzB,kBAAa,GAAG,wBAAwB,sBAAO,EAAE,CAAC;QAClD,gBAAW,GAChB,sNAAsN,CAAC;QAgBvN,MAAM,aAAa,GAAG,OAAO,iBAAiB,cAAc,UAAU,KAAK,UAAU,IAAI,WAAW,CAAC,WAAW,EAAE,kDAAkD,CAAC;QACrK,MAAM,WAAW,GAAG,qCAAqC,aAAa,iFAAiF,CAAC;QAExJ,IAAI,gBAAgB,EAAE;YACpB,IAAI,CAAC,mBAAmB,GAAG,GAAG,aAAa,aAAa,gBAAgB,kDAAkD,WAAW,EAAE,CAAC;SACzI;aAAM;YACL,IAAI,CAAC,mBAAmB,GAAG,GAAG,aAAa,IAAI,WAAW,EAAE,CAAC;SAC9D;IACH,CAAC;CACF;AA5BD,4BA4BC"}
|
package/lib/helper.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { RequestParams } from "./request-generator";
|
|
|
5
5
|
export declare function mapContainer(obj: {
|
|
6
6
|
[k: string]: any;
|
|
7
7
|
}, getJsonObj: Function): object;
|
|
8
|
-
export declare function handleErrorResponse(response: Response, body: any): OciError;
|
|
8
|
+
export declare function handleErrorResponse(response: Response, body: any, targetService: string, operationName: string, timestamp: string, endpoint: string, apiReferenceLink: string): OciError;
|
|
9
9
|
export declare function handleErrorBody(response: Response): Promise<string | object>;
|
|
10
10
|
export declare function convertStringToType(str: string | null, expectedType: string): any;
|
|
11
11
|
export declare function getStringFromResponseBody(body: any): Promise<string>;
|
package/lib/helper.js
CHANGED
|
@@ -27,21 +27,21 @@ function mapContainer(obj, getJsonObj) {
|
|
|
27
27
|
return constructedObj;
|
|
28
28
|
}
|
|
29
29
|
exports.mapContainer = mapContainer;
|
|
30
|
-
function handleErrorResponse(response, body) {
|
|
30
|
+
function handleErrorResponse(response, body, targetService, operationName, timestamp, endpoint, apiReferenceLink) {
|
|
31
31
|
const statusCode = response.status || -1;
|
|
32
32
|
const requestId = response.headers.get("opc-request-id");
|
|
33
33
|
if (body && body.code && body.message) {
|
|
34
|
-
return new error_1.OciError(statusCode, body.code, body.message, requestId);
|
|
34
|
+
return new error_1.OciError(statusCode, body.code, body.message, requestId, targetService, operationName, timestamp, endpoint, apiReferenceLink);
|
|
35
35
|
}
|
|
36
36
|
else if (typeof body == "string" && body.length > 0) {
|
|
37
|
-
return new error_1.OciError(statusCode, "None", body, requestId);
|
|
37
|
+
return new error_1.OciError(statusCode, "None", body, requestId, targetService, operationName, timestamp, endpoint, apiReferenceLink);
|
|
38
38
|
}
|
|
39
39
|
else if (response.statusText && response.statusText.length > 0) {
|
|
40
40
|
// There is no body text but statusText exists
|
|
41
|
-
return new error_1.OciError(statusCode, "None", response.statusText, requestId);
|
|
41
|
+
return new error_1.OciError(statusCode, "None", response.statusText, requestId, targetService, operationName, timestamp, endpoint, apiReferenceLink);
|
|
42
42
|
}
|
|
43
43
|
else {
|
|
44
|
-
return new error_1.OciError(statusCode, "None", "unknown reason.", requestId);
|
|
44
|
+
return new error_1.OciError(statusCode, "None", "unknown reason.", requestId, targetService, operationName, timestamp, endpoint, apiReferenceLink);
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
47
|
exports.handleErrorResponse = handleErrorResponse;
|
package/lib/helper.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helper.js","sourceRoot":"","sources":["../../../../lib/helper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAKA,mCAAmC;AACnC,mCAAgC;AAChC,mCAA+C;AAC/C,uCAA0D;AAC1D,mCAAkC;AAGlC,wDAAiC;AAOjC,SAAgB,YAAY,CAAC,GAAyB,EAAE,UAAoB;IAC1E,MAAM,cAAc,GAAyB,EAAE,CAAC;IAChD,KAAK,IAAI,GAAG,IAAI,GAAG,EAAE;QACnB,cAAc,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;KAC5C;IACD,OAAO,cAAc,CAAC;AACxB,CAAC;AAND,oCAMC;AAED,SAAgB,mBAAmB,
|
|
1
|
+
{"version":3,"file":"helper.js","sourceRoot":"","sources":["../../../../lib/helper.ts"],"names":[],"mappings":"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"}
|
package/lib/http.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { RequestSigner } from "./signer";
|
|
|
7
7
|
import { HttpRequest } from "./http-request";
|
|
8
8
|
declare const Breaker: any;
|
|
9
9
|
export interface HttpClient {
|
|
10
|
-
send(req: HttpRequest, forceExcludeBody?: boolean): Promise<Response>;
|
|
10
|
+
send(req: HttpRequest, forceExcludeBody?: boolean, targetService?: string, operationName?: string, timestamp?: string, endpoint?: string, apiReferenceLink?: string): Promise<Response>;
|
|
11
11
|
}
|
|
12
12
|
export declare class FetchHttpClient implements HttpClient {
|
|
13
13
|
private readonly signer;
|
|
@@ -16,6 +16,6 @@ export declare class FetchHttpClient implements HttpClient {
|
|
|
16
16
|
constructor(signer: RequestSigner | null, circuitBreaker?: typeof Breaker, httpOptions?: {
|
|
17
17
|
[key: string]: any;
|
|
18
18
|
} | undefined);
|
|
19
|
-
send(req: HttpRequest, forceExcludeBody?: boolean): Promise<Response>;
|
|
19
|
+
send(req: HttpRequest, forceExcludeBody?: boolean, targetService?: string, operationName?: string, timestamp?: string, endpoint?: string, apiReferenceLink?: string): Promise<Response>;
|
|
20
20
|
}
|
|
21
21
|
export {};
|
package/lib/http.js
CHANGED
|
@@ -49,7 +49,7 @@ class FetchHttpClient {
|
|
|
49
49
|
if (httpOptions)
|
|
50
50
|
this.httpOptions = httpOptions;
|
|
51
51
|
}
|
|
52
|
-
send(req, forceExcludeBody = false) {
|
|
52
|
+
send(req, forceExcludeBody = false, targetService = "", operationName = "", timestamp = new Date().toISOString(), endpoint = "", apiReferenceLink = "") {
|
|
53
53
|
return __awaiter(this, void 0, void 0, function* () {
|
|
54
54
|
// Get Request body
|
|
55
55
|
const body = helper_1.getSignerAndReqBody(req.body, forceExcludeBody);
|
|
@@ -71,9 +71,9 @@ class FetchHttpClient {
|
|
|
71
71
|
let options = this.httpOptions;
|
|
72
72
|
if (this.circuitBreaker) {
|
|
73
73
|
return options
|
|
74
|
-
? this.circuitBreaker.fire(request, options)
|
|
74
|
+
? this.circuitBreaker.fire(request, options, targetService, operationName, timestamp, endpoint, apiReferenceLink)
|
|
75
75
|
: this.circuitBreaker
|
|
76
|
-
.fire(request)
|
|
76
|
+
.fire(request, undefined, targetService, operationName, timestamp, endpoint, apiReferenceLink)
|
|
77
77
|
.then((e) => {
|
|
78
78
|
return e.response ? e.response : e;
|
|
79
79
|
})
|
package/lib/http.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../../../lib/http.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,qDAAuC;AACvC,4BAA0B;AAG1B,qCAA+C;AAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AACnC,OAAO,CAAC,QAAQ,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../../../lib/http.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,qDAAuC;AACvC,4BAA0B;AAG1B,qCAA+C;AAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AACnC,OAAO,CAAC,QAAQ,EAAE,CAAC;AAcnB,MAAa,eAAe;IAI1B,YACmB,MAA4B,EAC7C,cAA+B,EAC/B,WAAgD;QAF/B,WAAM,GAAN,MAAM,CAAsB;QAJvC,mBAAc,GAAI,IAAkC,CAAC;QACrD,gBAAW,GAAuC,SAAS,CAAC;QAOlE,IAAI,cAAc,EAAE;YAClB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;SACtC;QAED,IAAI,WAAW;YAAE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IAClD,CAAC;IAEY,IAAI,CACf,GAAgB,EAChB,mBAA4B,KAAK,EACjC,gBAAwB,EAAE,EAC1B,gBAAwB,EAAE,EAC1B,YAAoB,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAC5C,WAAmB,EAAE,EACrB,mBAA2B,EAAE;;YAE7B,mBAAmB;YACnB,MAAM,IAAI,GAAG,4BAAmB,CAAC,GAAG,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;YAC7D,eAAe;YACf,IAAI,IAAI,CAAC,MAAM,EAAE;gBACf,MAAM,IAAI,CAAC,MAAM,CAAC,eAAe,CAC/B;oBACE,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,GAAG,EAAE,GAAG,CAAC,GAAG;oBACZ,IAAI,EAAE,IAAI,CAAC,UAAU;iBACtB,EACD,gBAAgB,CACjB,CAAC;aACH;YACD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE;gBACnC,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,OAAO,EAAE,GAAG,CAAC,OAAO;gBACpB,IAAI,EAAE,IAAI,CAAC,WAAW;aACvB,CAAC,CAAC;YAEH,qEAAqE;YACrE,IAAI,OAAO,GAAiB,IAAI,CAAC,WAAsC,CAAC;YAExE,IAAI,IAAI,CAAC,cAAc,EAAE;gBACvB,OAAO,OAAO;oBACZ,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,OAAO,EACP,OAAO,EACP,aAAa,EACb,aAAa,EACb,SAAS,EACT,QAAQ,EACR,gBAAgB,CACjB;oBACH,CAAC,CAAC,IAAI,CAAC,cAAc;yBAChB,IAAI,CACH,OAAO,EACP,SAAS,EACT,aAAa,EACb,aAAa,EACb,SAAS,EACT,QAAQ,EACR,gBAAgB,CACjB;yBACA,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE;wBACf,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;oBACrC,CAAC,CAAC;yBACD,KAAK,CAAC,CAAC,CAAM,EAAE,EAAE;wBAChB,IAAI,CAAC,CAAC,QAAQ,EAAE;4BACd,6EAA6E;4BAC7E,OAAO,CAAC,CAAC,QAAQ,CAAC;yBACnB;6BAAM;4BACL,gDAAgD;4BAChD,MAAM,CAAC,CAAC;yBACT;oBACH,CAAC,CAAC,CAAC;aACV;iBAAM;gBACL,OAAO,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;aAC3D;QACH,CAAC;KAAA;CACF;AArFD,0CAqFC"}
|
package/lib/request-generator.js
CHANGED
|
@@ -30,12 +30,21 @@ function composeRequest(params) {
|
|
|
30
30
|
const content = yield helper_1.autoDetectContentLengthAndReadBody(headers, params);
|
|
31
31
|
body = content ? content : body;
|
|
32
32
|
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
33
|
+
if (body === "{}") {
|
|
34
|
+
return {
|
|
35
|
+
method: params.method,
|
|
36
|
+
headers: headers,
|
|
37
|
+
uri: uri
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
return {
|
|
42
|
+
method: params.method,
|
|
43
|
+
headers: headers,
|
|
44
|
+
uri: uri,
|
|
45
|
+
body: body
|
|
46
|
+
};
|
|
47
|
+
}
|
|
39
48
|
});
|
|
40
49
|
}
|
|
41
50
|
exports.composeRequest = composeRequest;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-generator.js","sourceRoot":"","sources":["../../../../lib/request-generator.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;AAIH,qCAIkB;AAClB,6DAA6E;AAsC7E;;;GAGG;AACH,SAAsB,cAAc,CAAC,MAAqB;;QACxD,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC/B,IAAI,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC;QAE9B,wGAAwG;QACxG,IAAI,IAAI,EAAE;YACR,MAAM,OAAO,GAAG,MAAM,2CAAkC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC1E,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;SACjC;
|
|
1
|
+
{"version":3,"file":"request-generator.js","sourceRoot":"","sources":["../../../../lib/request-generator.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;AAIH,qCAIkB;AAClB,6DAA6E;AAsC7E;;;GAGG;AACH,SAAsB,cAAc,CAAC,MAAqB;;QACxD,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC/B,IAAI,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC;QAE9B,wGAAwG;QACxG,IAAI,IAAI,EAAE;YACR,MAAM,OAAO,GAAG,MAAM,2CAAkC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC1E,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;SACjC;QAED,IAAI,IAAI,KAAK,IAAI,EAAE;YACjB,OAAO;gBACL,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,OAAO,EAAE,OAAO;gBAChB,GAAG,EAAE,GAAG;aACT,CAAC;SACH;aAAM;YACL,OAAO;gBACL,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,OAAO,EAAE,OAAO;gBAChB,GAAG,EAAE,GAAG;gBACR,IAAI,EAAE,IAAI;aACX,CAAC;SACH;IACH,CAAC;CAAA;AAzBD,wCAyBC;AAED,SAAS,UAAU,CAAC,MAAqB;IACvC,MAAM,IAAI,GAAG,sBAAsB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IACpE,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAClD,IAAI,GAAG,GAAG,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;IACrC,IAAI,WAAW,EAAE;QACf,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,WAAW,CAAC;KAC/B;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAY,EAAE,UAAmB;IAC/D,IAAI,UAAU,EAAE;QACd,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YACrD,IAAI,KAAK,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,CAAC,EAAE;gBAC3C,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aAC7D;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,uCAAuC,GAAG,EAAE,CAAC,CAAC;aAC/D;SACF;KACF;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,cAAc,CAAC,MAAqB;IAC3C,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAE9B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE;QAChE,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;KACpC;IAED,IAAI,MAAM,CAAC,YAAY,EAAE;QACvB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE;YAC9D,IAAI,KAAK,EAAE;gBACT,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;aACpC;SACF;KACF;IACD,IAAI,MAAM,CAAC,YAAY,IAAI,2CAAsB,IAAI,MAAM,CAAC,YAAY,EAAE;QACxE,kCAAa,CAAC,OAAO,CAAC,CAAC;KACxB;IACD,6BAAoB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACtC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,SAAS,CAAC,WAAoB;IACrC,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,IAAI,WAAW,EAAE;QACf,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;aAC1B,GAAG,CAAC,UAAS,GAAG;YACf,IAAI,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YAC7B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;gBACxB,IAAI,SAAS,GAAG,qBAAqB,EAAE,CAAC;gBACxC,OAAQ,KAAoB,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aACnE;YACD,kDAAkD;YAClD,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,eAAe,IAAI,KAAK,YAAY,IAAI,EAAE;gBACtF,OAAO,GAAG,GAAG,GAAG,GAAG,4BAAmB,CAAC,KAAK,CAAC,CAAC;aAC/C;iBAAM,IAAI,KAAK,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,CAAC,EAAE;gBAClD,OAAO,GAAG,GAAG,GAAG,GAAG,KAAK,CAAC;aAC1B;QACH,CAAC,CAAC;aACD,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,CAAC;aAChD,IAAI,CAAC,GAAG,CAAC,CAAC;KACd;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,qBAAqB;IAC5B,OAAO,CAAC,GAAQ,EAAE,EAAE,CAAC,CAAC,MAAW,EAAE,KAAU,EAAE,EAAE;QAC/C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE;YACzD,OAAO,MAAM,CAAC;SACf;QAED,OAAO,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IACjD,CAAC,CAAC;AACJ,CAAC"}
|
package/lib/retrier.d.ts
CHANGED
|
@@ -41,10 +41,11 @@ export declare class GenericRetrier {
|
|
|
41
41
|
static get defaultRetryConfiguration(): RetryConfiguration | null;
|
|
42
42
|
static set defaultRetryConfiguration(retryConfig: RetryConfiguration | null);
|
|
43
43
|
set logger(logger: Logger);
|
|
44
|
+
get logger(): Logger;
|
|
44
45
|
get backUpBinaryBody(): boolean;
|
|
45
46
|
get retryConfiguration(): RetryConfigurationDetails;
|
|
46
47
|
static createPreferredRetrier(clientRetryConfiguration?: RetryConfiguration, requestRetryConfiguration?: RetryConfiguration, specRetryConfiguration?: RetryConfiguration): GenericRetrier;
|
|
47
|
-
makeServiceCall(httpClient: HttpClient, request: HttpRequest, excludeBody?: boolean): Promise<Response>;
|
|
48
|
+
makeServiceCall(httpClient: HttpClient, request: HttpRequest, targetService: string, operationName: string, apiReferenceLink: string, excludeBody?: boolean): Promise<Response>;
|
|
48
49
|
private static refreshRequest;
|
|
49
50
|
private addOpcClientRetryHeader;
|
|
50
51
|
private static isRequestRetryable;
|
package/lib/retrier.js
CHANGED
|
@@ -18,6 +18,7 @@ const waiter_1 = require("./waiter");
|
|
|
18
18
|
const helper_1 = require("./helper");
|
|
19
19
|
const __1 = require("..");
|
|
20
20
|
const constants_1 = require("./constants");
|
|
21
|
+
const TROUBLESHOOT_URL = "https://docs.oracle.com/en-us/iaas/Content/API/Concepts/sdk_troubleshooting.htm";
|
|
21
22
|
class DefaultRetryCondition {
|
|
22
23
|
static shouldBeRetried(error) {
|
|
23
24
|
return (error.statusCode === 500 ||
|
|
@@ -80,6 +81,9 @@ class GenericRetrier {
|
|
|
80
81
|
set logger(logger) {
|
|
81
82
|
this._logger = logger;
|
|
82
83
|
}
|
|
84
|
+
get logger() {
|
|
85
|
+
return this._logger;
|
|
86
|
+
}
|
|
83
87
|
get backUpBinaryBody() {
|
|
84
88
|
return this.retryConfiguration.backupBinaryBody;
|
|
85
89
|
}
|
|
@@ -95,43 +99,77 @@ class GenericRetrier {
|
|
|
95
99
|
retryConfigToUse = Object.assign(Object.assign({}, specRetryConfiguration), retryConfigToUse);
|
|
96
100
|
return new GenericRetrier(retryConfigToUse);
|
|
97
101
|
}
|
|
98
|
-
makeServiceCall(httpClient, request, excludeBody) {
|
|
102
|
+
makeServiceCall(httpClient, request, targetService, operationName, apiReferenceLink, excludeBody) {
|
|
99
103
|
return __awaiter(this, void 0, void 0, function* () {
|
|
100
104
|
const waitContext = new waiter_1.WaitContextImpl();
|
|
101
105
|
let lastKnownError;
|
|
102
106
|
let shouldBeRetried = true;
|
|
107
|
+
const timestamp = new Date();
|
|
108
|
+
const endpoint = `${request.method} ${request.uri}`;
|
|
109
|
+
let attempt = 0;
|
|
110
|
+
const configuration = this.retryConfiguration;
|
|
111
|
+
let maxDelayInSeconds = undefined;
|
|
112
|
+
let maxAttempts = undefined;
|
|
113
|
+
if (configuration.delayStrategy && configuration.delayStrategy.maxDelayInSeconds) {
|
|
114
|
+
maxDelayInSeconds = configuration.delayStrategy.maxDelayInSeconds;
|
|
115
|
+
}
|
|
116
|
+
if (configuration.terminationStrategy && configuration.terminationStrategy.maxAttempts) {
|
|
117
|
+
maxAttempts = configuration.terminationStrategy.maxAttempts;
|
|
118
|
+
}
|
|
119
|
+
if (this.logger) {
|
|
120
|
+
this.logger.debug(`Retry policy to use: MaximumNumberAttempts=${maxAttempts}, MaxSleepBetween=${maxDelayInSeconds}, ExponentialBackoffBase=2`);
|
|
121
|
+
}
|
|
103
122
|
while (true) {
|
|
104
123
|
try {
|
|
105
124
|
this.addOpcClientRetryHeader(request);
|
|
106
|
-
const response = yield httpClient.send(request, excludeBody);
|
|
125
|
+
const response = yield httpClient.send(request, excludeBody, targetService, operationName, timestamp.toISOString(), endpoint, apiReferenceLink);
|
|
107
126
|
if (response.status && response.status >= 200 && response.status <= 299) {
|
|
127
|
+
const currentTime = new Date().getTime();
|
|
128
|
+
const timeElapsed = currentTime - timestamp.getTime();
|
|
129
|
+
if (this.logger) {
|
|
130
|
+
this.logger.debug(`Total Latency for this API call is: ${timeElapsed} ms`);
|
|
131
|
+
}
|
|
108
132
|
return response;
|
|
109
133
|
}
|
|
110
134
|
else if (response.code === "EOPENBREAKER") {
|
|
111
135
|
// Circuit Breaker is in OPEN state
|
|
112
136
|
const circuitBreakerError = response;
|
|
113
|
-
const errorObject = new __1.OciError(circuitBreakerError.code, "unknown code", circuitBreakerError.message, "unknown");
|
|
137
|
+
const errorObject = new __1.OciError(circuitBreakerError.code, "unknown code", circuitBreakerError.message, "unknown", targetService, operationName, timestamp.toISOString(), endpoint, apiReferenceLink);
|
|
114
138
|
shouldBeRetried = this.retryConfiguration.retryCondition(errorObject); // TODO: need retryCondition to accept errorObject coming from Circuit Breaker
|
|
115
139
|
lastKnownError = errorObject;
|
|
116
140
|
}
|
|
117
141
|
else {
|
|
118
142
|
const errBody = yield helper_1.handleErrorBody(response);
|
|
119
|
-
const errorObject = helper_1.handleErrorResponse(response, errBody);
|
|
143
|
+
const errorObject = helper_1.handleErrorResponse(response, errBody, targetService, operationName, timestamp.toISOString(), endpoint, apiReferenceLink);
|
|
120
144
|
shouldBeRetried = this.retryConfiguration.retryCondition(errorObject);
|
|
121
145
|
lastKnownError = errorObject;
|
|
122
146
|
}
|
|
123
147
|
}
|
|
124
148
|
catch (err) {
|
|
125
|
-
|
|
149
|
+
// These are non-service errors
|
|
150
|
+
lastKnownError = {
|
|
151
|
+
code: err.code,
|
|
152
|
+
message: err.message,
|
|
153
|
+
requestEndpoint: endpoint,
|
|
154
|
+
troubleshootingPage: `See ${TROUBLESHOOT_URL} for help troubleshooting this error, or contact support and provide this full error message.`
|
|
155
|
+
};
|
|
126
156
|
shouldBeRetried = true;
|
|
127
157
|
}
|
|
158
|
+
let currentTime = new Date().getTime();
|
|
159
|
+
let timeElapsed = currentTime - timestamp.getTime();
|
|
128
160
|
if (!shouldBeRetried || !GenericRetrier.isRequestRetryable(request)) {
|
|
129
161
|
console.warn(`Request cannot be retried. Not Retrying. Exception occurred : ${lastKnownError}`);
|
|
162
|
+
if (this.logger) {
|
|
163
|
+
this.logger.debug(`Total Latency for this API call is: ${timeElapsed} ms`);
|
|
164
|
+
}
|
|
130
165
|
throw lastKnownError;
|
|
131
166
|
}
|
|
132
167
|
else if (this.retryConfiguration.terminationStrategy.shouldTerminate(waitContext)) {
|
|
133
168
|
console.warn(`All retry attempts have exhausted. Total Attempts : ${waitContext.attemptCount +
|
|
134
169
|
1}. Last exception occurred : ${lastKnownError}`);
|
|
170
|
+
if (this.logger) {
|
|
171
|
+
this.logger.debug(`Total Latency for this API call is: ${timeElapsed} ms`);
|
|
172
|
+
}
|
|
135
173
|
throw lastKnownError;
|
|
136
174
|
}
|
|
137
175
|
const delayTime = this.retryConfiguration.delayStrategy.delay(waitContext);
|
|
@@ -139,6 +177,12 @@ class GenericRetrier {
|
|
|
139
177
|
console.warn(`Request failed with Exception : ${lastKnownError}\nRetrying request -> Total Attempts : ${waitContext.attemptCount}, Retrying after ${delayTime} seconds...`);
|
|
140
178
|
yield waiter_1.delay(delayTime);
|
|
141
179
|
GenericRetrier.refreshRequest(request);
|
|
180
|
+
attempt += 1;
|
|
181
|
+
if (this.logger) {
|
|
182
|
+
lastKnownError instanceof __1.OciError
|
|
183
|
+
? this.logger.debug(`Http Status Code: ${lastKnownError.statusCode}, Error Code: ${lastKnownError.serviceCode}, Attempt: ${attempt}`)
|
|
184
|
+
: this.logger.debug(`Code: ${lastKnownError.code}, Message: ${lastKnownError.message}, Attempt: ${attempt}`);
|
|
185
|
+
}
|
|
142
186
|
}
|
|
143
187
|
});
|
|
144
188
|
}
|
package/lib/retrier.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retrier.js","sourceRoot":"","sources":["../../../../lib/retrier.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;AAGH,qCAOkB;AAIlB,qCAAgE;AAChE,0BAA8B;AAE9B,2CAA4C;
|
|
1
|
+
{"version":3,"file":"retrier.js","sourceRoot":"","sources":["../../../../lib/retrier.ts"],"names":[],"mappings":"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"}
|