mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-07-17 14:04:24 +02:00
Restored get_docker_image functionality
This commit is contained in:
parent
63bf7f7640
commit
56caecc5d8
@ -1,17 +0,0 @@
|
||||
from get_app_conf import get_app_conf
|
||||
|
||||
def get_docker_image(applications, application_id, image_key: str = None):
|
||||
"""
|
||||
Wrapper for compatibility: Compose the docker image:version string.
|
||||
Raises error if value missing, like before.
|
||||
"""
|
||||
image_key = image_key if image_key else application_id
|
||||
image = get_app_conf(applications, application_id, f"docker.images.{image_key}", strict=True)
|
||||
version = get_app_conf(applications, application_id, f"docker.versions.{image_key}", strict=True)
|
||||
return f"{image}:{version}"
|
||||
|
||||
class FilterModule(object):
|
||||
def filters(self):
|
||||
return {
|
||||
'get_docker_image': get_docker_image,
|
||||
}
|
19
filter_plugins/get_docker_image.py
Normal file
19
filter_plugins/get_docker_image.py
Normal file
@ -0,0 +1,19 @@
|
||||
def get_docker_image(applications, application_id, image_key:str=None):
|
||||
image_key = image_key if image_key else application_id
|
||||
docker = applications.get(application_id, {}).get("docker", {})
|
||||
version = docker.get("versions", {}).get(image_key)
|
||||
image = docker.get("images", {}).get(image_key)
|
||||
|
||||
if not image:
|
||||
raise ValueError(f"Missing image for {application_id}:{image_key}")
|
||||
|
||||
if not version:
|
||||
raise ValueError(f"Missing version for {application_id}:{image_key}")
|
||||
|
||||
return f"{image}:{version}"
|
||||
|
||||
class FilterModule(object):
|
||||
def filters(self):
|
||||
return {
|
||||
'get_docker_image': get_docker_image,
|
||||
}
|
@ -7,7 +7,7 @@ import unittest
|
||||
# Add filter_plugins/ to the import path
|
||||
sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), "../../../..", "filter_plugins")))
|
||||
|
||||
from docker_image import FilterModule
|
||||
from get_docker_image import FilterModule
|
||||
|
||||
class TestGetDockerImage(unittest.TestCase):
|
||||
def setUp(self):
|
||||
|
Loading…
x
Reference in New Issue
Block a user