Commit Graph

1023 Commits

Author SHA1 Message Date
Sebastiaan van Stijn 190c64b415
Service cap-add/cap-drop: improve handling of combinations and special "ALL" value
When creating and updating services, we need to avoid unneeded service churn.

The interaction of separate lists to "add" and "drop" capabilities, a special
("ALL") capability, as well as a "relaxed" format for accepted capabilities
(case-insensitive, `CAP_` prefix optional) make this rather involved.

This patch updates how we handle `--cap-add` / `--cap-drop` when  _creating_ as
well as _updating_, with the following rules/assumptions applied:

- both existing (service spec) and new (values passed through flags or in
  the compose-file) are normalized and de-duplicated before use.
- the special "ALL" capability is equivalent to "all capabilities" and taken
  into account when normalizing capabilities. Combining "ALL" capabilities
  and other capabilities is therefore equivalent to just specifying "ALL".
- adding capabilities takes precedence over dropping, which means that if
  a capability is both set to be "dropped" and to be "added", it is removed
  from the list to "drop".
- the final lists should be sorted and normalized to reduce service churn
- no validation of capabilities is handled by the client. Validation is
  delegated to the daemon/server.

When deploying a service using a docker-compose file, the docker-compose file
is *mostly* handled as being "declarative". However, many of the issues outlined
above also apply to compose-files, so similar handling is applied to compose
files as well to prevent service churn.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-09-08 14:38:35 +02:00
Harald Albers 015cb98846 Complete capabilites with and without "CAP_" prefix.
Signed-off-by: Harald Albers <github@albersweb.de>
2020-09-04 11:09:16 +02:00
Sebastiaan van Stijn 43bc718895
Dockerfiles: update shellcheck v0.7.1
full diff: https://github.com/koalaman/shellcheck/compare/v0.7.0...v0.7.1

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-08-20 15:46:07 +02:00
Sebastiaan van Stijn ca35f2973a
Merge pull request #2646 from horpto/patch-1
Add shorthand for --tail option
2020-08-17 17:19:03 +02:00
Richard Chen Zheng 288326da1c
Fix Auto complete options available:
- Add support for --gpus to run/create container in bash and zsh
  - Remove --group from run and update container as it's not a valid flag in zsh
  - Add --group-add --group-rm for create and update update service in bash

Signed-off-by: Richard Chen Zheng <58443436+rchenzheng@users.noreply.github.com>
2020-08-13 13:56:33 -04:00
horpto 0b7147a2a5 fix docs, completion and docker service
Signed-off-by: horpto <__Singleton__@hackerdom.ru>
2020-08-06 17:37:08 +03:00
Miroslav Gula 1c79d16d89 added 'docker build --taget' to zsh completion
Signed-off-by: Miroslav Gula <miroslav.gula@naytrolabs.com>
2020-07-20 01:33:02 +02:00
Brian Wieder a6cfbd2351 Added env-file flag to docker exec
Signed-off-by: Brian Wieder <brian@4wieders.com>
2020-06-29 18:32:44 -04:00
Sebastiaan van Stijn 395a6d560d
Add support for --limit-pids on service create / update (swarm)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-06-18 21:25:02 +02:00
Sebastiaan van Stijn 92dc906059
Merge pull request #1918 from tcoupin/patch-1
completion with container names on restart
2020-04-28 15:57:16 +02:00
Dominik Braun 9d9568263f Replace 'numeric' with object in -q description
Signed-off-by: Dominik Braun <Dominik.Braun@nbsp.de>
2020-03-02 10:28:52 +01:00
Sebastiaan van Stijn 8ef8547eb6
Merge pull request #2024 from rgulewich/1988-run-cgroupns-mode
docker run: specify cgroup namespace mode with --cgroupns
2020-02-11 11:16:05 +01:00
Rob Gulewich 5ad1d4d4c8 docker run: specify cgroup namespace mode with --cgroupns
Signed-off-by: Rob Gulewich <rgulewich@netflix.com>
2020-01-29 22:50:37 +00:00
Sebastiaan van Stijn 9e620e990f
implement docker push -a/--all-tags
The `docker push` command up until [v0.9.1](https://github.com/moby/moby/blob/v0.9.1/api/client.go#L998)
always pushed all tags of a given image, so `docker push foo/bar` would push (e.g.)
all of  `foo/bar:latest`, `foo:/bar:v1`, `foo/bar:v1.0.0`.

Pushing all tags of an image was not desirable in many case, so docker v0.10.0
enhanced `docker push` to optionally specify a tag to push (`docker push foo/bar:v1`)
(see https://github.com/moby/moby/issues/3411 and the pull request that implemented
this: https://github.com/moby/moby/pull/4948).

This behavior exists up until today, and is confusing, because unlike other commands,
`docker push` does not default to use the `:latest` tag when omitted, but instead
makes it push "all tags of the image"

For example, in the following situation;

```
docker images

REPOSITORY          TAG                        IMAGE ID            CREATED             SIZE
thajeztah/myimage   latest                     b534869c81f0        41 hours ago        1.22MB
```

Running `docker push thajeztah/myimage` seemingly does the expected behavior (it
pushes `thajeztah/myimage:latest` to Docker Hub), however, it does not so for the
reason expected (`:latest` being the default tag), but because `:latest` happens
to be the only tag present for the `thajeztah/myimage` image.

If another tag exists for the image:

```
docker images

REPOSITORY          TAG                        IMAGE ID            CREATED             SIZE
thajeztah/myimage   latest                     b534869c81f0        41 hours ago        1.22MB
thajeztah/myimage   v1.0.0                     b534869c81f0        41 hours ago        1.22MB
```

Running the same command (`docker push thajeztah/myimage`) will push _both_ images
to Docker Hub.

> Note that the behavior described above is currently not (clearly) documented;
> the `docker push` reference documentation (https://docs.docker.com/engine/reference/commandline/push/)
does not mention that omitting the tag will push all tags

This patch changes the default behavior, and if no tag is specified, `:latest` is
assumed. To push _all_ tags, a new flag (`-a` / `--all-tags`) is added, similar
to the flag that's present on `docker pull`.

With this change:

- `docker push myname/myimage` will be the equivalent of `docker push myname/myimage:latest`
- to push all images, the user needs to set a flag (`--all-tags`), so `docker push --all-tags myname/myimage:latest`

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-01-28 16:21:06 +01:00
Sebastiaan van Stijn 8f5379b301
Update flag description for docker rm -v
The `-v` option removes anonymous volume only, and keeps
named volumes.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-01-25 13:54:23 +01:00
Sebastiaan van Stijn e9b9a0014c
completion: add `--max-download-attempts`
Follow-up to 86281a7b4b

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-01-20 14:47:52 +01:00
Sebastiaan van Stijn 43b2f52d0c
Remove "docker engine" subcommands
These subcommands were created to allow upgrading a Docker Community
engine to Docker Enterprise, but never really took off.

This patch removes the `docker engine` subcommands, as they added
quite some complexity / additional code.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-12-12 17:51:25 +01:00
Sebastiaan van Stijn 99ad13e374
Remove experimental "deploy" from "dab" files
The top-level `docker deploy` command (using the "Docker Application Bundle"
(`.dab`) file format was introduced as an experimental feature in Docker 1.13 /
17.03, but superseded by support for Docker Compose files.

With no development being done on this feature, and no active use of the file
format, support for the DAB file format and the top-level `docker deploy` command
(hidden by default in 19.03), is removed in this patch, in favour of `docker stack deploy`
using compose files.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-12-09 10:34:14 +01:00
Justyn Temme 756ab2fb92
Add support for docker push --quiet
Signed-off-by: Justyn Temme <justyntemme@gmail.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-11-12 09:48:04 -08:00
Sebastiaan van Stijn 3fa5aef0f9
Merge pull request #2078 from artheus/contrib/faster-bash-completion
Contrib: Make bash completion faster for services
2019-10-29 12:31:13 +01:00
Morten Hekkvang fc19fb6d95 Fix erroneous space indentation of shell script
Signed-off-by: Morten Hekkvang <morten.hekkvang@sbab.se>
2019-10-11 09:59:10 +02:00
Harald Albers cd9b39fc52 Add bash completion for `builder build` options
Signed-off-by: Harald Albers <github@albersweb.de>
2019-10-05 22:33:11 +02:00
Harald Albers e3060aa27c
Merge pull request #2116 from trapier/bash-completion-builder-build
Add bash completion for `builder build`
2019-10-04 15:22:01 +02:00
Tibor Vass c3990f3ba6 build: remove --stream
--stream was always experimental and this patch removes the functionality.

Users should enable BuildKit with DOCKER_BUILDKIT=1

Signed-off-by: Tibor Vass <tibor@docker.com>
2019-10-01 18:30:46 +00:00
Trapier Marshall 86ae871e0a Add bash completion for `builder build`
Signed-off-by: Trapier Marshall <trapier.marshall@docker.com>
2019-09-30 12:04:23 -04:00
Carlos de Paula 41aa20b6b5 Add riscv64 to manifest annotation and bash completion
Signed-off-by: Carlos de Paula <me@carlosedp.com>
2019-09-10 13:00:23 -03:00
Morten Hekkvang 6ebcc211a7
Move filtering to __docker_complete_services, as suggested by @albers
Signed-off-by: Morten Hekkvang <morten.hekkvang@sbab.se>
2019-09-10 16:08:19 +02:00
Morten Hekkvang b85e1e2efe
Fix substitution of comma to space character, suggested by @albers
Signed-off-by: Morten Hekkvang <morten.hekkvang@sbab.se>
2019-09-06 10:15:19 +02:00
Morten Hekkvang f55c5b6566
Make service completion faster
Signed-off-by: Morten Hekkvang <morten.hekkvang@sbab.se>
2019-09-06 10:11:54 +02:00
Tim Sampson 2f7b364cb3 add rudimentary fish completions for docker network
Signed-off-by: Tim Sampson <tim@sampson.fi>
2019-08-25 17:00:48 +03:00
Rohan Verma 1dc756e8df fix: docker login autocomplete for zsh
Changed `--user` to `--username`

Signed-off-by: Rohan Verma <hello@rohanverma.net>
2019-06-14 13:23:41 +05:30
Thibault Coupin 17e0438289 completion with container names on restart
Signed-off-by: tcoupin <thibault.coupin@gmail.com>
2019-06-09 21:36:02 +02:00
Sebastiaan van Stijn 589b35b180
Merge pull request #1868 from albers/completion-context-create--from
Add bash completion for `context create --from`
2019-05-10 15:16:42 -07:00
Tibor Vass 3e660c2221
Merge pull request #1869 from albers/completion-events--filter-node
Add bash completion for `events --filter node`
2019-05-10 14:58:34 -07:00
Harald Albers c1639e1e42 Add bash completion for `events --filter node`
Signed-off-by: Harald Albers <github@albersweb.de>
2019-05-10 22:14:39 +02:00
Harald Albers b55992afc6 Add bash completion for `context create --from`
Signed-off-by: Harald Albers <github@albersweb.de>
2019-05-10 21:48:27 +02:00
Trapier Marshall 50a45babac bash completion: add node type filter
Signed-off-by: Trapier Marshall <trapier.marshall@docker.com>
2019-05-07 14:26:20 -04:00
Sebastiaan van Stijn 55879706ce
Merge pull request #1848 from albers/completion-storage-driver-overlay
Remove deprecated storage drivers from bash completion
2019-04-26 10:38:32 -07:00
Harald Albers 1648d6c4a4 Add bash completion for `--security-opt systempaths=unconfined`
Signed-off-by: Harald Albers <github@albersweb.de>
2019-04-25 23:49:30 +02:00
Harald Albers bfa43d2989 Remove deprecated storage drivers from bash completion
Signed-off-by: Harald Albers <github@albersweb.de>
2019-04-25 23:06:39 +02:00
Harald Albers 7945010874 Add support for BuildKit specific options to bash completion
Signed-off-by: Harald Albers <github@albersweb.de>
2019-04-05 23:27:12 +02:00
Tibor Vass 984ad2f075
Merge pull request #1626 from albers/completion-engine
Add bash completion for `docker engine` command family
2019-03-21 14:51:56 -07:00
Tõnis Tiigi dca6d2afa1
Merge pull request #1765 from thaJeztah/carry_181_pids_limit
Add `--pids-limit` flag to `docker update`
2019-03-21 14:11:09 -07:00
Harald Albers e3544b2e99 Add bash completion for `docker engine` command family
Signed-off-by: Harald Albers <github@albersweb.de>
2019-03-21 22:02:48 +01:00
Sebastiaan van Stijn 93f34dc097
Merge pull request #1727 from albers/completion-builder-prune
Add bash completion for `builder prune`
2019-03-21 12:08:07 +01:00
Sebastiaan van Stijn 62a9303232
Merge pull request #1726 from albers/completion-network-ls-filter-dangling
Add bash completion for `network ls --filter dangling`
2019-03-21 10:53:24 +01:00
Sunny de3a5f0fe5
Add `--pids-limit` flag to `docker update`
Signed-off-by: Sunny Gogoi <indiasuny000@gmail.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-03-21 01:20:32 +01:00
Sebastiaan van Stijn f620349837
Add systctl support for services
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-03-19 13:33:32 +01:00
Harald Albers 24ca6cc68c Add bash completion for `builder prune`
Signed-off-by: Harald Albers <github@albersweb.de>
2019-03-09 16:04:08 +01:00
Harald Albers 9c8dec9f0b Add bash completion for `network ls --filter dangling`
Signed-off-by: Harald Albers <github@albersweb.de>
2019-03-09 14:41:41 +01:00
Sebastiaan van Stijn ff107b313a
Update to shellcheck v0.6.0
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-02-26 15:12:52 +01:00
Sebastiaan van Stijn cd7d2dfe87
Bash completion: add '--replicas-max-per-node'
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-02-22 11:20:29 +01:00
Sebastiaan van Stijn 8271c94dfe
Merge pull request #1650 from MatteoOreficeIT/master
prevent bash process substitution error in cygwin
2019-02-11 15:32:56 +01:00
Matteo Orefice 0b49495b1d Prevent bash process substitution error in cygwin
Signed-off-by: Matteo Orefice <matteo.orefice@bites4bits.software>
2019-02-10 14:04:45 +00:00
Sebastiaan van Stijn 8af4e77994
Merge pull request #1588 from mdsouza2/add-quiet-flag-to-docker-pull
Add quiet flag to bash completion for docker pull
2019-02-08 23:18:31 +01:00
Brian Goff 3e8a23a7fb
Merge pull request #1625 from albers/completion-stoppable
Complete paused containers on `docker stop`
2019-02-07 09:37:35 -08:00
Harald Albers 884d0783bd Add bash completion for global `--context|-c` option
Signed-off-by: Harald Albers <github@albersweb.de>
2019-01-22 22:27:01 +01:00
Harald Albers 33e0bce89f Complete paused containers on `docker stop`
Signed-off-by: Harald Albers <github@albersweb.de>
2019-01-20 21:59:47 +01:00
Harald Albers 41bd8dad8c Add bash completion for the `context` command family
Signed-off-by: Harald Albers <github@albersweb.de>
2019-01-20 21:10:33 +01:00
Mohini Anne Dsouza db31142a6a Add quiet flag to bash completion for docker pull
Signed-off-by: Mohini Anne Dsouza <mohini3917@gmail.com>
2018-12-21 10:44:21 -08:00
Sebastiaan van Stijn a0fe333cab
Merge pull request #1546 from albers/completion-import--platform
Add bash completion for `import --platform`
2018-12-07 20:07:49 +01:00
Sebastiaan van Stijn 687cf9bef7
Merge pull request #1547 from albers/completion-log-driver-local
Add bash completion for "local" log driver
2018-12-07 20:04:09 +01:00
Aleksa Sarai 647579068f
cli: add a separate --domainname flag
A while ago, Docker split the "Domainname" field out from the "Hostname"
field for the container configuration. There was no real user-visible
change associated with this (and under the hood "Domainname" was mostly
left unused from the command-line point of view). We now add this flag
in order to match other proposed changes to allow for setting the NIS
domainname of a container.

This also includes a fix for the --hostname parsing tests (they would
not error out if only one of .Hostname and .Domainname were incorrectly
set -- which is not correct).

Signed-off-by: Aleksa Sarai <asarai@suse.de>
2018-12-08 00:03:56 +11:00
Harald Albers c59038b15c Add bash completion for "local" log driver
Ref: https://github.com/moby/moby/pull/37092

Also adds log-opt `compress` to json-file log driver because this was
also added in the referenced PR.

Signed-off-by: Harald Albers <github@albersweb.de>
2018-12-02 19:07:19 +01:00
Harald Albers e0fe546c37 Add bash completion for `import --platform`
Signed-off-by: Harald Albers <github@albersweb.de>
2018-12-01 23:30:30 +01:00
Sebastiaan van Stijn 1f6a1a438c
Merge pull request #1252 from albers/completion-cli-experimental
Add bash completion for experimental CLI commands (manifest)
2018-11-29 17:11:28 +01:00
Silvin Lubecki 69bd2728c4
Merge pull request #1509 from selansen/master
Data Path Port configuration support
2018-11-28 17:10:39 +01:00
selansen e3e976a82a Data Path Port configuration support
This PR chnages allow user to configure data path
port number. By default we use 4789 port number. But this commit
will allow user to configure port number during swarm init.
Data path port can't be modified after swarm init.

Signed-off-by: selansen <elango.siva@docker.com>
2018-11-28 10:55:42 -05:00
Harald Albers 5fa5eb1da6 Fix bash completion for `service update --force`
- `--force` is not available in `service create`
- `--force` is a boolean option

Signed-off-by: Harald Albers <github@albersweb.de>
2018-11-15 13:43:58 +01:00
Trapier Marshall 1695eac4b3 Add bash completion for `service --no-resolve-image`
Signed-off-by: Trapier Marshall <trapier.marshall@docker.com>
2018-10-12 11:02:10 -04:00
Harald Albers 0fb4256a00 Add bash completion for `manifest` command family
Signed-off-by: Harald Albers <github@albersweb.de>
2018-08-30 08:54:49 +02:00
Harald Albers a183c952c6 Add support for experimental cli features to bash completion
This is needed for implementing bash completion for the `docker manifest`
command family.

Signed-off-by: Harald Albers <github@albersweb.de>
2018-08-30 08:54:49 +02:00
Harald Albers 564d4da06e Refactor usage of `docker version` in bash completion
This preapares bash completion for more context sensitivity:

- experimental cli features
- orchestrator specific features

Also renames _daemon_ to _server_ where used in context of `docker version`
because the fields there are grouped unter _Server_.

Signed-off-by: Harald Albers <github@albersweb.de>
2018-08-30 08:54:49 +02:00
selansen 587a94c935 Global Default Address Pool feature support
This feature brings new attribute/option for swarm init command.
default-addr-pool will take string input which can be in below format.
"CIDR,CIDR,CIDR...:SUBNET-SIZE".
Signed-off-by: selansen <elango.siva@docker.com>
2018-08-21 14:34:00 -04:00
Sebastiaan van Stijn b5768bea9b
Merge pull request #1271 from albers/completion-shellcheck
Fix shellcheck warnings
2018-08-04 01:36:36 +02:00
Sebastiaan van Stijn e8cd06c8eb
Merge pull request #1269 from albers/completion-cp--archive
Add bash completion for `cp --archive`
2018-08-03 23:48:52 +02:00
Harald Albers e587ec293b Fix shellcheck warnings
Signed-off-by: Harald Albers <github@albersweb.de>
2018-08-03 15:28:09 +02:00
Ace-Tang 7b4e2f3145 bash completion: fix uncorrect completion
fix uncorrect completion for command
docker docker <tab>

Signed-off-by: Ace-Tang <aceapril@126.com>
2018-08-03 21:27:27 +08:00
Harald Albers b9b3754ad3 Add bash completion for `cp --archive`
Signed-off-by: Harald Albers <github@albersweb.de>
2018-08-03 14:30:30 +02:00
Harald Albers 08f8ee1320 Add bash completion for kubernetes orchestrator
Signed-off-by: Harald Albers <github@albersweb.de>
2018-08-02 13:54:31 +02:00
Harald Albers 8ef01e869e Only complete swarm specific options with orchestrator=swarm
Signed-off-by: Harald Albers <github@albersweb.de>
2018-08-02 13:54:31 +02:00
Harald Albers ff953751d3 Add support for orchestrator specific bash completions
Signed-off-by: Harald Albers <github@albersweb.de>
2018-08-02 13:54:31 +02:00
Silvin Lubecki 9022a00fbe Remove outdated completion reviewers file
Clean maintainers and code owners files

Signed-off-by: Silvin Lubecki <silvin.lubecki@docker.com>
2018-08-01 15:08:36 +02:00
Sebastiaan van Stijn 08f5f52cdc
Merge pull request #1215 from albers/completion-service-logs-options
Add bash completion for `service logs --details|--raw`
2018-07-31 22:25:36 +02:00
Silvin 6cd0e2fe70
Merge pull request #1222 from thaJeztah/its_not_standard_but_its_in
Update --compose-file flag description to mention stdin
2018-07-30 16:23:29 +02:00
Tom Milligan da00d1c49f Fixed typo breaking zsh docker update autocomplete
Signed-off-by: Tom Milligan <tommilligan@users.noreply.github.com>
2018-07-25 12:23:08 +01:00
Paweł Szczekutowicz 13db1bc95f Added events filter scope zsh completion
Signed-off-by: Paweł Szczekutowicz <pszczekutowicz@gmail.com>
2018-07-20 15:47:00 +02:00
Paweł Szczekutowicz c922ea2f45 Added events filter scope bash completion
Signed-off-by: Paweł Szczekutowicz <pszczekutowicz@gmail.com>
2018-07-20 15:37:49 +02:00
Sebastiaan van Stijn 2c7822b036
Update --compose-file flag description to mention stdin
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2018-07-19 14:55:48 +02:00
Harald Albers 4912846de2 Add bash completion for `service logs --details|--raw`
Signed-off-by: Harald Albers <github@albersweb.de>
2018-07-16 18:46:06 +02:00
Harald Albers 97d312e02a Add bash completion for `service create|update --init`
Signed-off-by: Harald Albers <github@albersweb.de>
2018-07-13 09:05:29 +02:00
Sebastiaan van Stijn 3991b2fae3
Merge pull request #1158 from albers/completion-dockerd--default-address-pool
Add bash completion for `dockerd --default-address-pool`
2018-06-29 11:48:43 +02:00
Harald Albers 8443982188 Add bash completion for `exec_die` event
Signed-off-by: Harald Albers <github@albersweb.de>
2018-06-29 11:20:23 +02:00
Harald Albers 0e6d9dfe85 Add bash completion for `dockerd --default-address-pool`
Signed-off-by: Harald Albers <github@albersweb.de>
2018-06-29 11:11:24 +02:00
Mauro Porras P acf3d2d95a Minor fix: "stdin" instead of "stding"
Signed-off-by: Mauro Porras P <mauroporrasp@gmail.com>
2018-05-18 08:48:42 -05:00
Sebastiaan van Stijn 6bab4a2a94
Merge pull request #1061 from eiais/fishupdate
Update Events, Exec, Export, History, Images, Import, Inspect, Load, and Login subcommand fish completions
2018-05-17 14:50:29 +02:00
Kyle Spiers 4d890fc686 update docker Login subcommand completions
Signed-off-by: Kyle Spiers <Kyle@Spiers.me>
2018-05-05 01:35:48 -07:00
Kyle Spiers 647d4c983f update docker Load subcommand completions
Signed-off-by: Kyle Spiers <Kyle@Spiers.me>
2018-05-05 01:33:47 -07:00
Kyle Spiers 20f269a1ff update docker Inspect subcommand completions
Signed-off-by: Kyle Spiers <Kyle@Spiers.me>
2018-05-05 01:27:43 -07:00
Kyle Spiers 202601b774 update docker Import subcommand completions
Signed-off-by: Kyle Spiers <Kyle@Spiers.me>
2018-05-05 01:22:45 -07:00