diff options
author | Viacheslav Hletenko <v.gletenko@vyos.io> | 2023-08-31 08:37:17 +0000 |
---|---|---|
committer | Viacheslav Hletenko <v.gletenko@vyos.io> | 2023-08-31 08:37:17 +0000 |
commit | 6dd0499f4cb97dd749f3f9aa5b649039ae7cf6c4 (patch) | |
tree | b4654a3f650537d04c405f5b131f4ef8cf2b06c7 /src/conf_mode | |
parent | af737cf57e53a08a53ec2037ee476ee9098d8216 (diff) | |
download | vyos-1x-6dd0499f4cb97dd749f3f9aa5b649039ae7cf6c4.tar.gz vyos-1x-6dd0499f4cb97dd749f3f9aa5b649039ae7cf6c4.zip |
T5531: Containers add label option
Ability to set labels for container
set container name c1 allow-host-networks
set container name c1 image 'busybox'
set container name c1 label mypods value 'My label for containers'
Diffstat (limited to 'src/conf_mode')
-rwxr-xr-x | src/conf_mode/container.py | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/conf_mode/container.py b/src/conf_mode/container.py index 79b605ffb..46eb10714 100755 --- a/src/conf_mode/container.py +++ b/src/conf_mode/container.py @@ -178,6 +178,11 @@ def verify(container): if 'value' not in cfg: raise ConfigError(f'Environment variable {var} has no value assigned!') + if 'label' in container_config: + for var, cfg in container_config['label'].items(): + if 'value' not in cfg: + raise ConfigError(f'Label variable {var} has no value assigned!') + if 'volume' in container_config: for volume, volume_config in container_config['volume'].items(): if 'source' not in volume_config: @@ -268,6 +273,12 @@ def generate_run_arguments(name, container_config): for k, v in container_config['environment'].items(): env_opt += f" --env \"{k}={v['value']}\"" + # Check/set label options "--label foo=bar" + env_opt = '' + if 'label' in container_config: + for k, v in container_config['label'].items(): + env_opt += f" --label \"{k}={v['value']}\"" + hostname = '' if 'host_name' in container_config: hostname = container_config['host_name'] |