stdlib/docker: #Run checks if the container exists and can optionnally recreate it
Signed-off-by: Sam Alba <samalba@users.noreply.github.com>
This commit is contained in:
parent
2cc3f9ad5a
commit
72723c4ca7
@ -200,6 +200,9 @@ import (
|
||||
// Container name
|
||||
name?: dagger.#Input & {string}
|
||||
|
||||
// Recreate container?
|
||||
recreate: dagger.#Input & {bool | *true}
|
||||
|
||||
// Image registry
|
||||
registry?: {
|
||||
target: string
|
||||
@ -216,6 +219,16 @@ import (
|
||||
|
||||
if [ ! -z "$CONTAINER_NAME" ]; then
|
||||
OPTS="$OPTS --name $CONTAINER_NAME"
|
||||
docker inspect "$CONTAINER_NAME" >/dev/null && {
|
||||
# Container already exists
|
||||
if [ ! -z "$CONTAINER_RECREATE" ]; then
|
||||
echo "Replacing container $CONTAINER_NAME"
|
||||
docker stop "$CONTAINER_NAME"
|
||||
docker rm "$CONTAINER_NAME"
|
||||
else
|
||||
echo "$CONTAINER_NAME already exists"
|
||||
fi
|
||||
}
|
||||
fi
|
||||
|
||||
if [ ! -z "$CONTAINER_PORTS" ]; then
|
||||
@ -240,6 +253,10 @@ import (
|
||||
CONTAINER_NAME: name
|
||||
}
|
||||
|
||||
if recreate {
|
||||
CONTAINER_RECREATE: "true"
|
||||
}
|
||||
|
||||
if ports != _|_ {
|
||||
CONTAINER_PORTS: strings.Join(ports, " -p ")
|
||||
}
|
||||
|
Reference in New Issue
Block a user