mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
* Stop using source code in build file Signed-off-by: Sebastian Malton <sebastian@malton.name> * Add new injectable version of binaryName Signed-off-by: Sebastian Malton <sebastian@malton.name> * Add new NormalizedPlatform type Signed-off-by: Sebastian Malton <sebastian@malton.name> * Switch legacy execHelm to use legacy global DI for binaryPath Signed-off-by: Sebastian Malton <sebastian@malton.name> * Remove dead code Signed-off-by: Sebastian Malton <sebastian@malton.name> * Introduce injectable for kube auth proxy certs Signed-off-by: Sebastian Malton <sebastian@malton.name> * Introduce injectable forms of PrometheusProviders - Remove class requirement - Make everything injectable Signed-off-by: Sebastian Malton <sebastian@malton.name> * Update tests to not use private functions Signed-off-by: Sebastian Malton <sebastian@malton.name> * Cleanup creating binary names and paths Signed-off-by: Sebastian Malton <sebastian@malton.name> Signed-off-by: Sebastian Malton <sebastian@malton.name>
39 lines
1.0 KiB
TypeScript
39 lines
1.0 KiB
TypeScript
/**
|
|
* Copyright (c) OpenLens Authors. All rights reserved.
|
|
* Licensed under MIT License. See LICENSE in root directory for more information.
|
|
*/
|
|
|
|
import { generate } from "selfsigned";
|
|
import { getInjectable, lifecycleEnum } from "@ogre-tools/injectable";
|
|
|
|
const kubeAuthProxyCertificateInjectable = getInjectable({
|
|
id: "kube-auth-proxy-certificate",
|
|
instantiate: (di, hostname) => generate(
|
|
[
|
|
{ name: "commonName", value: "Lens Certificate Authority" },
|
|
{ name: "organizationName", value: "Lens" },
|
|
],
|
|
{
|
|
keySize: 2048,
|
|
algorithm: "sha256",
|
|
days: 365,
|
|
extensions: [
|
|
{ name: "basicConstraints", cA: true },
|
|
{
|
|
name: "subjectAltName", altNames: [
|
|
{ type: 2, value: hostname },
|
|
{ type: 2, value: "localhost" },
|
|
{ type: 7, ip: "127.0.0.1" },
|
|
],
|
|
},
|
|
],
|
|
},
|
|
),
|
|
lifecycle: lifecycleEnum.keyedSingleton({
|
|
getInstanceKey: (di, hostname: string) => hostname,
|
|
}),
|
|
});
|
|
|
|
export default kubeAuthProxyCertificateInjectable;
|
|
|