feat: add network alias that is $SERVICE_NAME.$SERVICE_TYPE

This alias is in addition to the existing dokku.$SERVICE_TYPE.$SERVICE_NAME network alias that is derived from the hostname.
This commit is contained in:
Jose Diaz-Gonzalez
2023-02-08 11:00:01 -05:00
parent ad2509d3ec
commit b664ce6411
2 changed files with 27 additions and 2 deletions

View File

@@ -110,10 +110,11 @@ service_create_container() {
[[ -f "$SERVICE_ROOT/IMAGE" ]] && PLUGIN_IMAGE="$(cat "$SERVICE_ROOT/IMAGE")" [[ -f "$SERVICE_ROOT/IMAGE" ]] && PLUGIN_IMAGE="$(cat "$SERVICE_ROOT/IMAGE")"
[[ -f "$SERVICE_ROOT/IMAGE_VERSION" ]] && PLUGIN_IMAGE_VERSION="$(cat "$SERVICE_ROOT/IMAGE_VERSION")" [[ -f "$SERVICE_ROOT/IMAGE_VERSION" ]] && PLUGIN_IMAGE_VERSION="$(cat "$SERVICE_ROOT/IMAGE_VERSION")"
local network_alias="$(get_database_name "$SERVICE").$PLUGIN_COMMAND_PREFIX"
local network="$(fn-plugin-property-get "$PLUGIN_COMMAND_PREFIX" "$SERVICE" "initial-network")" local network="$(fn-plugin-property-get "$PLUGIN_COMMAND_PREFIX" "$SERVICE" "initial-network")"
if [[ -n "$network" ]]; then if [[ -n "$network" ]]; then
DOCKER_ARGS+=("--network=${network}") DOCKER_ARGS+=("--network=${network}")
DOCKER_ARGS+=("--network-alias=$SERVICE_NAME") DOCKER_ARGS+=("--network-alias=${network_alias}")
LINK_CONTAINER_DOCKER_ARGS+=("--network=${network}") LINK_CONTAINER_DOCKER_ARGS+=("--network=${network}")
fi fi
@@ -137,7 +138,7 @@ service_create_container() {
fi fi
dokku_log_verbose_quiet "Waiting for container to be ready" dokku_log_verbose_quiet "Waiting for container to be ready"
if ! suppress_output "$DOCKER_BIN" container run "${LINK_CONTAINER_DOCKER_ARGS[@]}" "$PLUGIN_WAIT_IMAGE" -c "$SERVICE_NAME:$PLUGIN_DATASTORE_WAIT_PORT"; then if ! suppress_output "$DOCKER_BIN" container run "${LINK_CONTAINER_DOCKER_ARGS[@]}" "$PLUGIN_WAIT_IMAGE" -c "$network_alias:$PLUGIN_DATASTORE_WAIT_PORT"; then
dokku_log_info2_quiet "Start of $SERVICE container output" dokku_log_info2_quiet "Start of $SERVICE container output"
dokku_container_log_verbose_quiet "$SERVICE_NAME" dokku_container_log_verbose_quiet "$SERVICE_NAME"
dokku_log_info2_quiet "End of $SERVICE container output" dokku_log_info2_quiet "End of $SERVICE container output"

View File

@@ -48,6 +48,14 @@ teardown() {
assert_output_contains bridge 0 assert_output_contains bridge 0
assert_output_contains custom-network assert_output_contains custom-network
run docker inspect dokku.$PLUGIN_COMMAND_PREFIX.ls -f '{{range $net,$v := .NetworkSettings.Networks}}{{range $k,$alias := $v.Aliases}}{{printf "alias:%s\n" $alias}}{{end}}{{end}}'
echo "output: $output"
echo "status: $status"
assert_success
assert_output_contains "alias:dokku.$PLUGIN_COMMAND_PREFIX.ls"
assert_output_contains "alias:ls.$PLUGIN_COMMAND_PREFIX"
assert_output_contains "alias:ls"
run dokku "$PLUGIN_COMMAND_PREFIX:set" ls initial-network run dokku "$PLUGIN_COMMAND_PREFIX:set" ls initial-network
echo "output: $output" echo "output: $output"
echo "status: $status" echo "status: $status"
@@ -178,6 +186,14 @@ teardown() {
assert_output_contains bridge assert_output_contains bridge
assert_output_contains custom-network assert_output_contains custom-network
run docker inspect dokku.$PLUGIN_COMMAND_PREFIX.ls -f '{{range $net,$v := .NetworkSettings.Networks}}{{range $k,$alias := $v.Aliases}}{{printf "alias:%s\n" $alias}}{{end}}{{end}}'
echo "output: $output"
echo "status: $status"
assert_success
assert_output_contains "alias:dokku.$PLUGIN_COMMAND_PREFIX.ls"
assert_output_contains "alias:ls.$PLUGIN_COMMAND_PREFIX"
assert_output_contains "alias:ls"
run dokku "$PLUGIN_COMMAND_PREFIX:set" ls post-start-network run dokku "$PLUGIN_COMMAND_PREFIX:set" ls post-start-network
echo "output: $output" echo "output: $output"
echo "status: $status" echo "status: $status"
@@ -237,6 +253,14 @@ teardown() {
assert_output_contains bridge assert_output_contains bridge
assert_output_contains custom-network assert_output_contains custom-network
run docker inspect dokku.$PLUGIN_COMMAND_PREFIX.ls -f '{{range $net,$v := .NetworkSettings.Networks}}{{range $k,$alias := $v.Aliases}}{{printf "alias:%s\n" $alias}}{{end}}{{end}}'
echo "output: $output"
echo "status: $status"
assert_success
assert_output_contains "alias:dokku.$PLUGIN_COMMAND_PREFIX.ls"
assert_output_contains "alias:ls.$PLUGIN_COMMAND_PREFIX"
assert_output_contains "alias:ls"
run dokku "$PLUGIN_COMMAND_PREFIX:destroy" lsa --force run dokku "$PLUGIN_COMMAND_PREFIX:destroy" lsa --force
echo "output: $output" echo "output: $output"
echo "status: $status" echo "status: $status"