OpenShift Cookbook
上QQ阅读APP看书,第一时间看更新

Enabling the autocomplete feature in an rhc command-line client

The rhc command-line utility supports autocompletion. This involves rhc predicting a command that the user wants to type in without them actually typing it completely. This is very helpful for new users who do not know all the commands supported by rhc. In this recipe, you will learn how to enable autocomplete for the rhc command-line client.

Note

The autocomplete feature does not work for Windows Terminal.

Getting ready

To step through this recipe, you will need to have rhc installed on your machine. Refer to the Installing the OpenShift rhc command-line client recipe for instructions.

How to do it…

To enable autocompletion, perform the following steps:

  1. Run the rhc setup command again with the autocomplete option:
    $ rhc setup --autocomplete
    
  2. The previous step will generate a file named bash_autocomplete in the .openshift folder at ~/.openshift. To enable autocompletion, you have to add the ~/.openshift/bash_autocomplete line to the .bashrc or .bash_profile file present in your user's home directory. The .bashrhc file on my Fedora box is as follows:
    # .bashrc
    . ~/.openshift/bash_autocomplete
    # Source global definitions
    if [ -f /etc/bashrc ]; then
    . /etc/bashrc
    fi
    # User specific aliases and functions
    
  3. Note that on Mac OS X, you have to add ~/.openshift/bash_autocomplete to your ~/.bash_profile. On Mac OS X, the new Terminal windows and tabs are always considered login shells, so this is a necessary step for OS X users.
  4. Reload or restart the shell to allow these changes to take effect.

How it works…

You should try to understand what you have done in the preceding section. In step 1, you ran the setup command with the autocomplete option. This generated a bash script called bash_autocomplete in the .openshift folder at ~/.openshift. This bash script defines a custom completion function called _rhc for the rhc command-line client. Bash will execute this function when the rhc tab key is typed at the prompt and will display possible completions.

In step 2, you sourced the bash_autocomplete file by adding ~/.openshift/bash_autocomplete to the .bashrc script. This will make sure that the autocompletion functionality is available for each shell.

Finally, in step 3, you restarted the shell to load the _rhc function. Now, if you type rhc and then press the Tab key, it will show you all the rhc commands:

$ rhc
account app-tidy deployment-list member-list // removed all commands for brevity

There's more…

Most of the rhc commands have options, which you can provide. To view all the options for a command, type in -- and press Tab. For example, to view all the rhc setup command options, type in rhc setup -- and press Tab:

$ rhc setup --
--autocomplete --clean --create-token --no-create-token --server

See also

  • The Setting up an OpenShift account using rhc recipe