#!/usr/bin/env bash [[ " docker-options docker-options:add docker-options:remove help docker-options:help " == *" $1 "* ]] || exit "$DOKKU_NOT_IMPLEMENTED_EXIT" set -eo pipefail; [[ $DOKKU_TRACE ]] && set -x source "$PLUGIN_CORE_AVAILABLE_PATH/common/functions" source "$PLUGIN_CORE_AVAILABLE_PATH/docker-options/functions" declare APP # global assigned in case case "$1" in # Display applications docker options docker-options) verify_app_name "$2" && APP="$2" read -ra passed_phases <<< "$(get_phases "$3")" if [[ ! "${passed_phases[@]}" ]]; then display_all_phases_options else display_passed_phases_options passed_phases[@] fi ;; # Add a docker option to application docker-options:add) verify_app_name "$2" && APP="$2" read -ra passed_phases <<< "$(get_phases "$3")" shift 3 # everything else passed is the docker option passed_docker_option="$*" [[ -z "$passed_docker_option" ]] && dokku_log_fail "Please specify docker options to add to the phase" add_passed_docker_option passed_phases[@] "${passed_docker_option[@]}" ;; # Remove a docker option from application docker-options:remove) verify_app_name "$2" && APP="$2" read -ra passed_phases <<< "$(get_phases "$3")" shift 3 # everything else passed is the docker option [[ -z ${passed_docker_option="$@"} ]] && dokku_log_fail "Please specify docker options to add to the phase" remove_passed_docker_option passed_phases[@] "${passed_docker_option[@]}" ;; # Display usage help help | docker-options:help) cat<, Display app's Docker options for all phases docker-options , Display app's Docker options for phase (comma separated phase list) docker-options:add OPTION, Add Docker option to app for phase (comma separated phase list) docker-options:remove OPTION, Remove Docker option from app for phase (comma separated phase list) EOF ;; *) exit "$DOKKU_NOT_IMPLEMENTED_EXIT" ;; esac