summaryrefslogtreecommitdiffstats
path: root/bin/README_SHELL_COMPLETION
blob: 49bba3acce20a90a3cd4c5b5d2405f69802c1cc1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# completion is available for ossh/oscp

ossh/oscp uses a dynamic inventory cache in order to lookup
hostnames and translate them to something meaningful
such as an IP address or dns name.

This allows us to treat our servers as cattle and not as pets.

If you have not run the ossh command and it has not laid down
a cache file the completions will not be available.

You can populate the cache by running `ossh --list`.  This
will populate the cache file and the completions should
become available.

This script will look at the cached version of your
multi_inventory results in ~/.ansible/tmp/multi_inventory.cache.
It will then parse a few {host}.{env} out of the json
and return them to be completable.

# BASH
In order to setup bash completion, source the following script:
/path/to/repository/openshift-ansible/bin/ossh_bash_completion

# ZSH
In order to setup zsh completion, you will need to verify
that the _ossh_zsh_completion script is somewhere in the path
of $fpath.

Once $fpath includes the _ossh_zsh_completion script then you should
run `exec zsh`.  This will then allow you to call `ossh host[TAB]`
for a list of completions.

Before completing the final step, zsh keeps its own cache in
~/.zcompdump of the known functions and variables.  In order to
refresh with new variables and completion arrays you might need
to `rm ~/.zcompdump` before running `exec zsh`.