1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00

Handle globalAgent having a single non-array CA (#6628)

* Handle globalAgent having a single non-array CA

Signed-off-by: Sebastian Malton <sebastian@malton.name>

* Rewrite ternary as IIFE

Signed-off-by: Sebastian Malton <sebastian@malton.name>

Signed-off-by: Sebastian Malton <sebastian@malton.name>
This commit is contained in:
Sebastian Malton 2022-11-24 11:28:33 -08:00 committed by GitHub
parent aedc47551a
commit 27fb128c05
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -22,15 +22,36 @@ const injectSystemCAsInjectable = getInjectable({
const requestSystemCAs = di.inject(requestSystemCAsInjectionToken);
return async () => {
for (const cert of await requestSystemCAs()) {
if (isCertActive(cert)) {
if (Array.isArray(globalAgent.options.ca) && !globalAgent.options.ca.includes(cert)) {
globalAgent.options.ca.push(cert);
} else {
globalAgent.options.ca = [cert];
}
const certs = await requestSystemCAs();
if (certs.length === 0) {
// Leave the global option alone
return;
}
const cas = (() => {
if (Array.isArray(globalAgent.options.ca)) {
return globalAgent.options.ca;
}
if (globalAgent.options.ca) {
return [globalAgent.options.ca];
}
return [];
})();
for (const cert of certs) {
if (!isCertActive(cert)) {
continue;
}
if (!cas.includes(cert)) {
cas.push(cert);
}
}
globalAgent.options.ca = cas;
};
},
});