mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
Display environment variables coming from secret in pod details (#2167)
Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>
This commit is contained in:
parent
5258aab0d2
commit
103467d31b
@ -30,7 +30,11 @@ export const ContainerEnvironment = observer((props: Props) => {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
envFrom && envFrom.forEach(item => {
|
envFrom && envFrom.forEach(item => {
|
||||||
const { configMapRef } = item;
|
const { configMapRef, secretRef } = item;
|
||||||
|
|
||||||
|
if (secretRef && secretRef.name) {
|
||||||
|
secretsStore.load({ name: secretRef.name, namespace });
|
||||||
|
}
|
||||||
|
|
||||||
if (configMapRef && configMapRef.name) {
|
if (configMapRef && configMapRef.name) {
|
||||||
configMapsStore.load({ name: configMapRef.name, namespace });
|
configMapsStore.load({ name: configMapRef.name, namespace });
|
||||||
@ -89,21 +93,54 @@ export const ContainerEnvironment = observer((props: Props) => {
|
|||||||
|
|
||||||
const renderEnvFrom = () => {
|
const renderEnvFrom = () => {
|
||||||
const envVars = envFrom.map(vars => {
|
const envVars = envFrom.map(vars => {
|
||||||
if (!vars.configMapRef || !vars.configMapRef.name) return;
|
if (vars.configMapRef?.name) {
|
||||||
const configMap = configMapsStore.getByName(vars.configMapRef.name, namespace);
|
return renderEnvFromConfigMap(vars.configMapRef.name);
|
||||||
|
} else if (vars.secretRef?.name ) {
|
||||||
if (!configMap) return;
|
return renderEnvFromSecret(vars.secretRef.name);
|
||||||
|
}
|
||||||
return Object.entries(configMap.data).map(([name, value]) => (
|
|
||||||
<div className="variable" key={name}>
|
|
||||||
<span className="var-name">{name}</span>: {value}
|
|
||||||
</div>
|
|
||||||
));
|
|
||||||
});
|
});
|
||||||
|
|
||||||
return _.flatten(envVars);
|
return _.flatten(envVars);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const renderEnvFromConfigMap = (configMapName: string) => {
|
||||||
|
const configMap = configMapsStore.getByName(configMapName, namespace);
|
||||||
|
|
||||||
|
if (!configMap) return;
|
||||||
|
|
||||||
|
return Object.entries(configMap.data).map(([name, value]) => (
|
||||||
|
<div className="variable" key={name}>
|
||||||
|
<span className="var-name">{name}</span>: {value}
|
||||||
|
</div>
|
||||||
|
));
|
||||||
|
};
|
||||||
|
|
||||||
|
const renderEnvFromSecret = (secretName: string) => {
|
||||||
|
const secret = secretsStore.getByName(secretName, namespace);
|
||||||
|
|
||||||
|
if (!secret) return;
|
||||||
|
|
||||||
|
return Object.keys(secret.data).map(key => {
|
||||||
|
const secretKeyRef = {
|
||||||
|
name: secret.getName(),
|
||||||
|
key
|
||||||
|
};
|
||||||
|
|
||||||
|
const value = (
|
||||||
|
<SecretKey
|
||||||
|
reference={secretKeyRef}
|
||||||
|
namespace={namespace}
|
||||||
|
/>
|
||||||
|
);
|
||||||
|
|
||||||
|
return (
|
||||||
|
<div className="variable" key={key}>
|
||||||
|
<span className="var-name">{key}</span>: {value}
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<DrawerItem name="Environment" className="ContainerEnvironment">
|
<DrawerItem name="Environment" className="ContainerEnvironment">
|
||||||
{env && renderEnv()}
|
{env && renderEnv()}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user