Skip to content

Commit 82ba16a

Browse files
committed
Merge branch 'w/9.0/improvement/CLDSRV-648-kmipretry' into tmp/octopus/w/9.1/improvement/CLDSRV-648-kmipretry
2 parents dfde059 + dee5d54 commit 82ba16a

4 files changed

Lines changed: 15 additions & 6 deletions

File tree

lib/Config.js

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -719,6 +719,7 @@ class Config extends EventEmitter {
719719
process.env.S3KMIP_BUCKET_ATTRIBUTE_NAME || '',
720720
},
721721
transport: this._parseKmipTransport({}),
722+
retries: 0,
722723
};
723724
if (config.kmip) {
724725
assert(config.kmip.providerName, 'config.kmip.providerName must be defined');
@@ -743,6 +744,14 @@ class Config extends EventEmitter {
743744
if (Array.isArray(config.kmip.transport)) {
744745
this.kmip.transport = config.kmip.transport.map(t =>
745746
this._parseKmipTransport(t));
747+
if (config.kmip.retries) {
748+
assert(typeof config.kmip.retries === 'number',
749+
'bad config: KMIP Cluster retries must be a number');
750+
assert(config.kmip.retries <= this.kmip.transport.length - 1,
751+
'bad config: KMIP Cluster retries must be lower or equal to the number of hosts - 1');
752+
} else {
753+
this.kmip.retries = this.kmip.transport.length - 1;
754+
}
746755
} else {
747756
this.kmip.transport =
748757
this._parseKmipTransport(config.kmip.transport);

lib/kms/wrapper.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ const kmsFactory = {
5252
throw new Error('KMIP KMS driver configuration is missing.');
5353
}
5454
const client = Array.isArray(config.kmip.transport)
55-
? new KMIPClusterClient({ kmip: config.kmip })
55+
? new KMIPClusterClient({ kmip: config.kmip, logger, retries: config.kmip.retries })
5656
: new KMIPClient({ kmip: config.kmip });
5757
return { client, implName: 'kmip' };
5858
},

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@zenko/cloudserver",
3-
"version": "9.0.10",
3+
"version": "9.0.11",
44
"description": "Zenko CloudServer, an open-source Node.js implementation of a server handling the Amazon S3 protocol",
55
"main": "index.js",
66
"engines": {
@@ -21,7 +21,7 @@
2121
"dependencies": {
2222
"@azure/storage-blob": "^12.25.0",
2323
"@hapi/joi": "^17.1.1",
24-
"arsenal": "git+https://github.com/scality/arsenal#8.2.16",
24+
"arsenal": "git+https://github.com/scality/arsenal#8.2.17",
2525
"async": "2.6.4",
2626
"aws-sdk": "^2.1692.0",
2727
"bucketclient": "scality/bucketclient#8.2.3",

yarn.lock

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1474,9 +1474,9 @@ arraybuffer.prototype.slice@^1.0.4:
14741474
optionalDependencies:
14751475
ioctl "^2.0.2"
14761476

1477-
"arsenal@git+https://github.com/scality/arsenal#8.2.16":
1478-
version "8.2.16"
1479-
resolved "git+https://github.com/scality/arsenal#3f104fc56492bb76e2675b0d166c33e50445d8d0"
1477+
"arsenal@git+https://github.com/scality/arsenal#8.2.17":
1478+
version "8.2.17"
1479+
resolved "git+https://github.com/scality/arsenal#692a82c9e2778549f24c1a1f108e663ed20108ce"
14801480
dependencies:
14811481
"@azure/identity" "^4.9.1"
14821482
"@azure/storage-blob" "^12.27.0"

0 commit comments

Comments
 (0)