.. image:: https://zuul.otc-service.com/api/tenant/eco/badge?project=opentelekomcloud/python-otcextensions&pipeline=check&branch=master :target: https://zuul.otc-service.com/t/eco/builds?project=opentelekomcloud%2Fpython-otcextensions
.. image:: https://readthedocs.org/projects/python-otcextensions/badge/?version=latest :target: http://python-otcextensions.readthedocs.io/en/latest/?badge=latest :alt: Documentation Status
The OTC Extensions augment the OpenStack SDK of features and services provided by the Open Telekom Cloud. If installed as a Python package, they add several extra commands to the OpenStack Client CLI. Therefore the project interacts closely with the
python-openstacksdk
python-openstackclient
packages.
Documentation Overview <https://docs.otc.t-systems.com/python-otcextensions/>
_
Installation Page <https://docs.otc.t-systems.com/python-otcextensions/install/index.html>
_
The OTC Extensions are hosted as the package otcextensions
on PyPI
and can be installed by pip as
.. code-block: console
$ pip install otcextensions
There are several options to do that including but not limited to pip userland installation, system wide installation as well as installation from operating system packets or directly from source. Refer to the installation instructions_ in the projects documentation.
Configuration Page <https://docs.otc.t-systems.com/python-otcextensions/install/configuration.html>
_
Acessing the Open Telekom Cloud APIs requires authentication and authorization. For both there are several options available:
Configuration files (recommended): A file called clouds.yaml
holds all necessary configuration parameters. The file can be placed
either in the local directory, below the user home directory in
.config/openstack
or in the system-wide directory
/etc/openstack
. You may use a second file secure.yaml
in the
same directories to extra protect clear-text password
credentials. For more details see the section configuration
_ in
the official documentation.
Minimal sample clouds.yaml
file:
.. code-block:: yaml
clouds:
otc:
profile: otc
auth:
username: '
user_domain_name: 'OTC00000000001000000xxx'
# or user_domain_id: '<123456_DOMAIN_ID>'
auth_url: 'https://iam.eu-de.otc.t-systems.com:443/v3'
interface: 'public'
identity_api_version: 3 # !Important
ak: '<AK_VALUE>' # AK/SK pair for access to OBS
sk: '<SK_VALUE>'
With this configuration you can start using the CLI with openstack --os-cloud otc *command*
or by export OS_CLOUD=otc; openstack *command*
.
Environment variables: Authentication using username/password is often used::
export OS_AUTH_URL=
Command-Line Options: The corresponding command-line options look very similar::
--os-auth-url
If a password is not provided above (in plaintext), you will be interactively prompted to provide one securely.
Existing Token: Authentication may also be performed using an already-acquired token and a URL pointing directly to the service API that presumably was acquired from the Service Catalog::
export OS_TOKEN=
The corresponding command-line options look very similar::
--os-token
In addition to that a regular clouds.yaml
configuration file can be used
More information is available at https://docs.openstack.org/python-openstackclient/latest/cli/authentication.html or https://developer.openstack.org/sdks/python/openstacksdk/users/config
OTCE CLI Command Overview <https://docs.otc.t-systems.com/python-otcextensions/cli/index.html>
_
OTCE SDK Guides <https://docs.otc.t-systems.com/python-otcextensions/sdk/guides/index.html>
_
Contribution Page <https://docs.otc.t-systems.com/python-otcextensions/contributor/index.html>
_Release Notes <https://docs.otc.t-systems.com/releasenotes/otcdocstheme/>
_Issue Tracker <https://github.com/OpenTelekomCloud/python-otcextensions/issues>
_.. _instructions: https://docs.otc.t-systems.com/python-otcextensions/install/index.html