diff --git a/functions b/functions index 354447a..6e6f8d2 100755 --- a/functions +++ b/functions @@ -106,10 +106,11 @@ service_create_container() { [[ -f "$SERVICE_ROOT/IMAGE" ]] && PLUGIN_IMAGE="$(cat "$SERVICE_ROOT/IMAGE")" [[ -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")" if [[ -n "$network" ]]; then DOCKER_ARGS+=("--network=${network}") - DOCKER_ARGS+=("--network-alias=$SERVICE_NAME") + DOCKER_ARGS+=("--network-alias=${network_alias}") LINK_CONTAINER_DOCKER_ARGS+=("--network=${network}") fi @@ -133,7 +134,7 @@ service_create_container() { fi 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_container_log_verbose_quiet "$SERVICE_NAME" dokku_log_info2_quiet "End of $SERVICE container output" diff --git a/tests/link_networks.bats b/tests/link_networks.bats index 6c1ffd8..da6937f 100755 --- a/tests/link_networks.bats +++ b/tests/link_networks.bats @@ -48,6 +48,14 @@ teardown() { assert_output_contains bridge 0 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 echo "output: $output" echo "status: $status" @@ -178,6 +186,14 @@ teardown() { assert_output_contains bridge 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 echo "output: $output" echo "status: $status" @@ -237,6 +253,14 @@ teardown() { assert_output_contains bridge 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 echo "output: $output" echo "status: $status"