To utilize the Openstack Command Line Interface (CLI) you will need to create application credentials.


Login to the Openstack dashboard and navigate to the Identity menu.  Click on the 'Application Credentials' menu item and then click on the 'Create Application Credentials' button.





Fill out the options in the dialogue box depending on your needs.  



Name & Description - Give it a name and optional description that is appropriate for this use case


Secret - Leave blank so that a random secret is generated for you by Openstack


Expiration date & time - These are recommended if you're planning to use this for an application; however, we do not recommend them for your account.  


Roles - as described in the dialogue box, you may select a specific role for this set of credentials or leaving it blank will give you all the roles you have access to on this project.


Access Rules - see description in dialogue box


Unrestricted - we do NOT recommend checking this unless you've researched the consequences and absolutely require it for your work. 




Download the application credential openrc file and secret now as it will not be available once you move past this step!






Use the openrc file to connect to your Openstack project:


We recommend Python virtual environments for accessing the Openstack CLI.  If you do not already have Python 3 installed, you will need to do that.  Then create a virtual environment, install the openstack cli packages, and source your openrc file:


virtualenv openstack-cli

source openstack-cli/bin/activate

pip install --upgrade pip

pip install python-openstackclient

source app-cred-test-openrc.sh (or whatever you named your file)


Test to make sure it's working:

openstack flavor list

You should see a list of all the "flavors" (types of instances you can start) available in CCR's cloud



For more information on the Openstack CLI see their documentation here.



Application Credentials


Application credentials are used to automate authentication to openstack without having to share your password with an application.  They can be configured to selectively grant roles to your project and also set to expire automatically.  More details can be found in the Openstack documentation on application credentials