Skip to content

Repository files navigation

Catalyst Cloud API client

PyPIPyPI - Python VersionGitHubTest Status

This is a package for installing the API clients and all necessary plugins for interacting with Catalyst Cloud.

Catalyst Cloud is an OpenStack-based public cloud based in New Zealand, with multiple regions available. We provide a range of different services for our customers, and have created this package to make it easier for customers to create a CLI environment from which they can interact with our cloud.

Note that this library is not required to interact with Catalyst Cloud APIs. The individual client libraries can be installed and used separately from this package; for more information refer to Available Commands.

Installation

The Catalyst Cloud API client supports Python 3.8 and later, and supports most systems running on Linux, macOS and Windows.

pip

The Catalyst Cloud API client can be installed directly using pip.

python -m pip install catalystcloud-client

This exposes the commands used to interact with Catalyst Cloud in the running Python environment.

Installing via pip is the recommended method for installing the package in a container image build, which can be used to, for example, create isolated command line environments or CI/CD pipelines using Catalyst Cloud.

When installing using pip it is highly recommended to install the API client into a virtual environment. This ensures that there are no conflicts with packages installed into the Python environment managed by your operating system.

pipx

For installing the Catalyst Cloud API client on a desktop machine for interactive use, an alternative installation method which may be easier is to use pipx.

pipx install catalystcloud-client --include-deps

This makes the openstack command available to run in your user environment, while installing the catalystcloud-client package into an isolated virtual environment to avoid conflicts.

Note that the --include-deps option is required to expose the commands used to interact with Catalyst Cloud so they can be executed by your user.

Once installed, run the following command to check that the installation was successful:

openstack --help

pipx also makes it easy to update the client and dependent packages using pipx upgrade.

pipx upgrade catalystcloud-client

Usage

For more information on how to interact with Catalyst Cloud from a command line environment, please refer to CLI Tools and SDKs in the Catalyst Cloud documentation.

Available Commands

Installing the Catalyst Cloud API client makes the following commands available:

  • openstack - The OpenStack API client. Used for most tasks via sub-commands. Provided by the python-openstackclient package.
  • swift - The Swift API client. An alternative command for interacting with the Catalyst Cloud Object Storage service using the Swift API. Provided by the python-swiftclient package.

Using the openstack command, the following services can be managed:

ServiceResource TypeSub-commandAPI Client Library
IdentityProjectsopenstack projectpython-keystoneclient
IdentityUsersopenstack userpython-keystoneclient
IdentityEC2 Credentialsopenstack ec2 credentialspython-keystoneclient
IdentityApplication Credentialsopenstack application credentialpython-keystoneclient
ComputeInstances / Serversopenstack serverpython-novaclient
ComputeKeypairsopenstack keypairpython-novaclient
NetworkingNetworksopenstack networkpython-neutronclient
NetworkingRoutersopenstack routerpython-neutronclient
NetworkingFloating IPsopenstack floating ippython-neutronclient
NetworkingSecurity Groupsopenstack security grouppython-neutronclient
NetworkingVPNsopenstack vpnpython-neutronclient
Load BalancerLoad Balancersopenstack loadbalancerpython-octaviaclient
Block StorageVolumesopenstack volumepython-cinderclient
ImageImagesopenstack imagepython-glanceclient
DatabaseDatabasesopenstack databasepython-troveclient
OrchestrationStacksopenstack stackpython-heatclient
KubernetesClustersopenstack coe clusterpython-magnumclient
KubernetesNode Groupsopenstack coe nodegrouppython-magnumclient
Object StorageContainersopenstack containerpython-swiftclient
Object StorageObjectsopenstack objectpython-swiftclient
Object StorageAccountsopenstack object store accountpython-swiftclient
Secret ManagementSecretsopenstack secretpython-barbicanclient
TelemetryMetricsopenstack metricgnocchiclient
TelemetryAlarmsopenstack alarmaodhclient
BillingInvoicesopenstack rating invoicepython-distilclient
BillingQuotationsopenstack rating quotationpython-distilclient
BillingProductsopenstack rating productpython-distilclient
AdministrationProject Usersopenstack project userpython-adjutantclient
AdministrationProject Quotasopenstack project quotapython-adjutantclient
AdministrationManageable Rolesopenstack manageable rolespython-adjutantclient
AdministrationPasswordsopenstack passwordpython-adjutantclient

For more information on using these services, please refer to the Catalyst Cloud documentation.

About

Python application for interacting with Catalyst Cloud APIs.

Resources

Stars

2 stars

Watchers

4 watching

Forks

Releases

Packages

Used by

Contributors