Skip to content

Commit

Permalink
Added flags and upgraded to docker-compose v1.7.
Browse files Browse the repository at this point in the history
  • Loading branch information
brgmnn committed Apr 29, 2016
1 parent 226e6b7 commit a82822c
Showing 1 changed file with 118 additions and 20 deletions.
138 changes: 118 additions & 20 deletions completions/docker-compose.fish
Original file line number Diff line number Diff line change
Expand Up @@ -54,26 +54,29 @@ function __fish_docker_compose_all_services --description \
end

# All docker-compose commands
complete -c docker-compose -n '__fish_use_subcommand' -xa build --description "Build or rebuild services"
complete -c docker-compose -n '__fish_use_subcommand' -xa help --description "Get help on a command"
complete -c docker-compose -n '__fish_use_subcommand' -xa kill --description "Kill containers"
complete -c docker-compose -n '__fish_use_subcommand' -xa logs --description "View output from containers"
complete -c docker-compose -n '__fish_use_subcommand' -xa port --description "Print the public port for a port binding"
complete -c docker-compose -n '__fish_use_subcommand' -xa ps --description "List containers"
complete -c docker-compose -n '__fish_use_subcommand' -xa pull --description "Pulls service images"
complete -c docker-compose -n '__fish_use_subcommand' -xa restart --description "Restart services"
complete -c docker-compose -n '__fish_use_subcommand' -xa rm --description "Remove stopped containers"
complete -c docker-compose -n '__fish_use_subcommand' -xa run --description "Run a one-off command"
complete -c docker-compose -n '__fish_use_subcommand' -xa scale --description "Set number of containers for a service"
complete -c docker-compose -n '__fish_use_subcommand' -xa start --description "Start services"
complete -c docker-compose -n '__fish_use_subcommand' -xa stop --description "Stop services"
complete -c docker-compose -n '__fish_use_subcommand' -xa up --description "Create and start containers"
complete -c docker-compose -n '__fish_use_subcommand' -xa migrate-to-labels --description "Recreate containers to add labels"
complete -c docker-compose -n '__fish_use_subcommand' -xa version --description "Show the Docker-Compose version information"
complete -c docker-compose -n '__fish_use_subcommand' -xa create --description "Create containers without starting them"
complete -c docker-compose -n '__fish_use_subcommand' -xa config --description "Validate and print compose configuration"
complete -c docker-compose -n '__fish_use_subcommand' -xa down --description "Stop and remove all container resources"
complete -c docker-compose -n '__fish_use_subcommand' -xa events --description "Monitor events from containers"
complete -c docker-compose -n '__fish_use_subcommand' -xa build --description "Build or rebuild services"
complete -c docker-compose -n '__fish_use_subcommand' -xa config --description "Validate and print compose configuration"
complete -c docker-compose -n '__fish_use_subcommand' -xa create --description "Create containers without starting them"
complete -c docker-compose -n '__fish_use_subcommand' -xa down --description "Stop and remove all container resources"
complete -c docker-compose -n '__fish_use_subcommand' -xa events --description "Monitor events from containers"
complete -c docker-compose -n '__fish_use_subcommand' -xa exec --description "Execute a command in a running container"
complete -c docker-compose -n '__fish_use_subcommand' -xa help --description "Get help on a command"
complete -c docker-compose -n '__fish_use_subcommand' -xa kill --description "Kill containers"
complete -c docker-compose -n '__fish_use_subcommand' -xa logs --description "View output from containers"
complete -c docker-compose -n '__fish_use_subcommand' -xa migrate-to-labels --description "Recreate containers to add labels"
complete -c docker-compose -n '__fish_use_subcommand' -xa pause --description "Pause services"
complete -c docker-compose -n '__fish_use_subcommand' -xa port --description "Print the public port for a port binding"
complete -c docker-compose -n '__fish_use_subcommand' -xa ps --description "List containers"
complete -c docker-compose -n '__fish_use_subcommand' -xa pull --description "Pulls service images"
complete -c docker-compose -n '__fish_use_subcommand' -xa restart --description "Restart services"
complete -c docker-compose -n '__fish_use_subcommand' -xa rm --description "Remove stopped containers"
complete -c docker-compose -n '__fish_use_subcommand' -xa run --description "Run a one-off command"
complete -c docker-compose -n '__fish_use_subcommand' -xa scale --description "Set number of containers for a service"
complete -c docker-compose -n '__fish_use_subcommand' -xa start --description "Start services"
complete -c docker-compose -n '__fish_use_subcommand' -xa stop --description "Stop services"
complete -c docker-compose -n '__fish_use_subcommand' -xa unpause --description "Unpause services"
complete -c docker-compose -n '__fish_use_subcommand' -xa up --description "Create and start containers"
complete -c docker-compose -n '__fish_use_subcommand' -xa version --description "Show the Docker-Compose version information"

# docker-compose commands that take services
for subcmd in build create down kill logs port ps pull restart rm run scale \
Expand All @@ -82,3 +85,98 @@ for subcmd in build create down kill logs port ps pull restart rm run scale \
-a '(__fish_docker_compose_all_services)' \
--description "Docker compose service"
end


#
# FLAGS
#

# build
complete -c docker-compose -n "__fish_docker_using_command build" -l force-rm --description "Always remove intermediate containers"
complete -c docker-compose -n "__fish_docker_using_command build" -l no-cache --description "Do not use cache when building the image"
complete -c docker-compose -n "__fish_docker_using_command build" -l pull --description "Always attempt to pull a newer version of the image"

# config
complete -c docker-compose -n "__fish_docker_using_command config" -l services --description "Print the service names, one per line"
complete -c docker-compose -n "__fish_docker_using_command config" -s q -l quiet --description "Only validate the configuration, don't print anything"

# create
complete -c docker-compose -n "__fish_docker_using_command create" -l build --description "Build images before creating containers"
complete -c docker-compose -n "__fish_docker_using_command create" -l force-recreate --description "Recreate containers even if their configruation and image haven't changed. Incompatible with --no-recreate"
complete -c docker-compose -n "__fish_docker_using_command create" -l no-build --description "Don't build an image, even if it's missing"
complete -c docker-compose -n "__fish_docker_using_command create" -l no-recreate --description "If containers already exist, don't recreate them. Incompatible with --force-recreate"

# down
complete -c docker-compose -n "__fish_docker_using_command down" -l remove-orphans --description "Remove containers for services not defined in the Compose file"
complete -c docker-compose -n "__fish_docker_using_command down" -l rmi -a "all local" --description "Remove images, type may be one of: 'all' to remove all images, or 'local' to remove only images that don't have a custom name set by the 'image' field"
complete -c docker-compose -n "__fish_docker_using_command down" -s v -l volumes --description "Remove data volumes"

# events
complete -c docker-compose -n "__fish_docker_using_command events" -l json --description "Output events as a stream of json objects"

# exec
complete -c docker-compose -n "__fish_docker_using_command exec" -l index -a "1" --description "Index of the container if there are multiple instances of a service. Defaults to 1"
complete -c docker-compose -n "__fish_docker_using_command exec" -l privileged --description "Give extended privileges to the process"
complete -c docker-compose -n "__fish_docker_using_command exec" -l user --description "Run the command as this user"
complete -c docker-compose -n "__fish_docker_using_command exec" -s d --description "Detached mode: Run command in the background"

# kill
complete -c docker-compose -n "__fish_docker_using_command kill" -s s --description "SIGNAL to send to the container. Default signal is SIGKILL"

# logs
complete -c docker-compose -n "__fish_docker_using_command logs" -l no-color --description "Produce monochrome output"
complete -c docker-compose -n "__fish_docker_using_command logs" -l tail --description "Number of lines to show from the end of the logs for each container"
complete -c docker-compose -n "__fish_docker_using_command logs" -s f -l follow --description "Follow log output"
complete -c docker-compose -n "__fish_docker_using_command logs" -s t -l timestaps --description "Show timestamps"

# port
complete -c docker-compose -n "__fish_docker_using_command port" -l index -a "1" --description "Index of the container if there are multiple instances of a service. Defaults to 1"
complete -c docker-compose -n "__fish_docker_using_command port" -l protocol -a "tcp udp" --description "Protocol to use, TCP or UDP. Defaults to TCP"

# ps
complete -c docker-compose -n "__fish_docker_using_command ps" -s q --description "Only display IDs"

# pull
complete -c docker-compose -n "__fish_docker_using_command pull" -l ignore-pull-failures --description "Pull what it can and ignores images with pull failures"

# restart
complete -c docker-compose -n "__fish_docker_using_command restart" -s t -l timeout -a "10" --description "Specify a shutdown timeout in seconds. Default 10"

# rm
complete -c docker-compose -n "__fish_docker_using_command rm" -s a -l all --description "Also remove one-off containers created by docker-compose run"
complete -c docker-compose -n "__fish_docker_using_command rm" -s f -l force --description "Don't ask to confirm removal"
complete -c docker-compose -n "__fish_docker_using_command rm" -s v --description "Remove volumes associated with containers"

# run
complete -c docker-compose -n "__fish_docker_using_command run" -l entrypoint --description "Override the entrypoint of the image"
complete -c docker-compose -n "__fish_docker_using_command run" -l name --description "Assign a name to the container"
complete -c docker-compose -n "__fish_docker_using_command run" -l no-deps --description "Don't start linked services"
complete -c docker-compose -n "__fish_docker_using_command run" -l rm --description "Remove container after run. Ignored in detached mode"
complete -c docker-compose -n "__fish_docker_using_command run" -l service-ports --description "Run command with the service's ports enabled and mapped to the host"
complete -c docker-compose -n "__fish_docker_using_command run" -s T --description "Disable pseudo-tty allocation. By default 'docker-compose run' allocates a TTY"
complete -c docker-compose -n "__fish_docker_using_command run" -s d --description "Detached mode: Run container in the background, print new container name"
complete -c docker-compose -n "__fish_docker_using_command run" -s e --description "Set an environment variable (can be used multiple times)"
complete -c docker-compose -n "__fish_docker_using_command run" -s p -l publish --description "Publish a container's port(s) to the host"
complete -c docker-compose -n "__fish_docker_using_command run" -s u -l user --description "Run as a specified username or uid"
complete -c docker-compose -n "__fish_docker_using_command run" -s w -l workdir --description "Working directory inside the container"

# scale
complete -c docker-compose -n "__fish_docker_using_command scale" -s t -l timeout -a "10" --description "Specify a shutdown timeout in seconds. Default 10"

# stop
complete -c docker-compose -n "__fish_docker_using_command stop" -s t -l timeout -a "10" --description "Specify a shutdown timeout in seconds. Default 10"

# up
complete -c docker-compose -n "__fish_docker_using_command up" -s d --description "Detached mode: Run containers in the background, print new container names"
complete -c docker-compose -n "__fish_docker_using_command up" -l no-color --description "Produce monochrome output"
complete -c docker-compose -n "__fish_docker_using_command up" -l no-deps --description "Don't start linked services"
complete -c docker-compose -n "__fish_docker_using_command up" -l force-recreate --description "Recreate containers even if their configuration and image haven't changed"
complete -c docker-compose -n "__fish_docker_using_command up" -l no-recreate --description "If containers already exist, don't recreate them. Incompatible with --force-recreate"
complete -c docker-compose -n "__fish_docker_using_command up" -l no-build --description "Don't build an image, even if it's missing"
complete -c docker-compose -n "__fish_docker_using_command up" -l build --description "Build images before starting containers"
complete -c docker-compose -n "__fish_docker_using_command up" -l abort-on-container-exit --description "Stop all containers if any container was stopped. Incompatible with -d"
complete -c docker-compose -n "__fish_docker_using_command up" -s t -l timeout --description "Use this timeout in seconds for container shutdown when attached or when containers are already running. Default 10"
complete -c docker-compose -n "__fish_docker_using_command up" -l remove-orphans --description "Remove containers for services not defined in the Compose file"

# version
complete -c docker-compose -n "__fish_docker_using_command version" -l short --description "Shows only Compose's version number"

0 comments on commit a82822c

Please sign in to comment.