Require name parameter in docker-container recipe

This commit is contained in:
Olivier 'reivilibre' 2020-12-31 20:50:31 +00:00
parent 6eb6b54f26
commit dd848d0bf9

View File

@ -2,7 +2,7 @@ from scone.default.utensils.docker_utensils import (
DockerContainerRun, DockerContainerRun,
DockerImagePull, DockerImagePull,
DockerNetworkCreate, DockerNetworkCreate,
DockerVolumeCreate, DockerVolumeCreate, DockerContainerState, ContainerState,
) )
from scone.head.kitchen import Kitchen from scone.head.kitchen import Kitchen
from scone.head.recipe import Recipe, RecipeContext from scone.head.recipe import Recipe, RecipeContext
@ -17,12 +17,17 @@ class DockerContainer(Recipe):
self.image = check_type(args.get("image"), str) self.image = check_type(args.get("image"), str)
self.command = check_type(args.get("command"), str) self.command = check_type(args.get("command"), str)
self.name = check_type(args.get("name"), str)
async def cook(self, kitchen: Kitchen) -> None: async def cook(self, kitchen: Kitchen) -> None:
kitchen.get_dependency_tracker() kitchen.get_dependency_tracker()
await kitchen.ut1areq(
DockerContainerRun(self.image, self.command), DockerContainerRun.Result current_state = await kitchen.ut1(DockerContainerState(self.name))
)
if current_state == ContainerState.NOTFOUND:
await kitchen.ut1areq(
DockerContainerRun(self.image, self.command, self.name), DockerContainerRun.Result
)
class DockerImage(Recipe): class DockerImage(Recipe):