This adds the commands needed to list and show nodegroups in a
cluster. Specifically the commands added are:
* openstack coe nodegroup list <cluster>
* openstack coe nodegroup show <cluster> <nodegroup>
Depends-On: I5607c27eb0e84677acda29af006335374b60dd27
Change-Id: I910c7c7caff34aba2ce08ca5c9362403d11f324c
Add OSprofiler support in Magnum Client
Co-Authored-By: Hieu LE <hieulq@vn.fujitsu.com>
Change-Id: I85f766f636f754fc6ad8e28e3df2793cd02a618e
Depends-On: I7d68995aab81d365433950aada078ef1fcd5469b
Implements: blueprint osprofiler-support-in-magnum
The insecure client options and timeout were bypassed
if auth token was given, as in case of Magnum UI.
This is causing SSL error even insecure is set to true
by Magnum UI and magnum client is unable to skip SSL check
becuase insecure option was not passed to HTTPClient.
This was caused due to this change :
a374b9f99c (diff-c8d8ebbd1f15e85c914906c6357e0a5f)
As a consequence, any HTTPS based connections to magnum endpoint
fail. With this patch, the missing options to HTTPClient are
correctly passed to and SSL checks are skipped safely if insecure
is set to True.
Change-Id: I885301d6eb69182f109cdfbfbc771bbbf13beb2a
Closes-Bug: #1634305
This patch adds 'OpenStack-API-Version' header for each
requests.
Change-Id: I49310f1b53447ce00e78e26661cc895ce4f1c4e5
Implements: blueprint api-versioning
Currently, magnumclient doesn't work with token and endpoint_override.
Due to cloud_config limitation. This issue breaks magnum horizon plugin.
This patch fixes it.
Change-Id: I0d0a41e72a1a806c4422c2dcde2b86e9889bc35f
Closes-Bug: #1616315
Add new base classes for Bay and Cluster to inherit from.
Add new tests for cluster and cluster_template code.
Leaves all commands in-place and adds new cluster-related
commands for magnumclient.
Add deprecation decorator and messages for bay/baymodel.
Implements: blueprint rename-bay-to-cluster
Change-Id: I64e1aa6a71b109687568005655c6de55f86fad29
Use os-client-config[1] to process options and get the Session from
keystoneauth1. This adds support for reading clouds.yaml
files and supporting the OS_CLOUD env var for selecting named clouds
from a list of them.
[1]: https://github.com/openstack/os-client-config
Closes-Bug: #1599747
Change-Id: I23a6e80648e67c0b652693cd146bd9e94ad4fb23
Currently while any exception during creating Client object, generic
log 'Not Authorized' was logged which hides the actual error. This
patch fixes the issue by logging in the actual error message.
Change-Id: I1891ee0cf3d1c58fc922792300a48d9ab95a634b
Closes-bug: #1597469
After this patch [1], Magnum is no longer the "Container Service", it
became the "Container Infrastructure Management Service". Based on the
decision, this patch proposed to rename Magnum service type from
"container" to "container-infra". The old service type will be
deprecated and eventually not supported.
There is another patch [2] on Magnum server side for the renaming.
This patch should land first, then the server patch.
[1] https://review.openstack.org/#/c/311476/
[2] https://review.openstack.org/#/c/319300/
Change-Id: I55205ff2b304678d2b53bbd4d66403078c6baac8
Closes-Bug: #1584251
Magnum supports multiple COEs however it contains APIs that only work
with Kubernetes. We will allow additional API extensions for specific
bay drivers to allow access to the k8s APIs through Magnum. This will
allow us to support multiple COEs without having to compromise the
container API to the lowest common denominator between COEs.
Change-Id: Ic6927f77f413f5202a3dd160ff809c7ec057d3b5
When trying to consume python-magnumclient from os-cloud-config,
it is failing with:
TypeError: __init__() got an unexpected keyword argument 'endpoint_override'
That is because this parameter is not supported in v1 from magnumclient. Add the
parameter, forcing to be the equivalent of magnum_url.
Change-Id: I3e9d41c3efabf23826f35fc8d1bb12c14770460b
Closes-Bug: 1573468
The node object represents either a bare metal or virtual machine
node that is provisioned with an OS to run the containers, or
alternatively, run kubernetes. Magnum use Heat to deploy the nodes,
so it is unnecessary to maintain node object in Magnum. Heat can do
the work for us. The code about node object is useless now, so let's
remove it from Magnum.
Change-Id: Icb7bd21032b592c94033d93e22f460d8c2270fbe
Closes-Bug: #1541255
Depends-On: If8761b06a364127683099afb4dc51ea551be6f89
Adds insecure option and associated MAGNUMCLIENT_INSECURE environment
variable for skipping SSL certificate verifcation in the client.
Change-Id: I0396453e8315c5f24703161457c91f7640827b8d
All client interactions should actually flow through a keystoneauth
Session. Add the parameter for a user to pass one in, but support
the old style of direct parameters too. A followup patch will add
os-client-config support to the shell, so add that to requirements.txt
instead of keystoneauth directly to look forward.
Also, trim unneeded things from requirements.txt because we're adding
os-client-config which pulls in various things.
Closes-Bug: #1514733
Change-Id: I88b1d0e4e119429599dec75c5db24237a92edcec
This commit adds two operations to the magnum client:
magnum ca-show --bay bay_uuid
magnum ca-sign --bay bay_uuid --csr /path/to/csr.pem
ca-show retrieves the CA certificate for the provided bay.
ca-sign, sends the provided CSR to Magnum, and prints the signed
certificate returned by Magnum. The certificate is signed with the
CA for the given Bay.
Change-Id: I784a1b3dc77e72dfb9e7f8d25cbbc37a0b5ffce0
Partial-Implements: blueprint magnum-as-a-ca
This change removes homemade code to search magnum endpoint and uses
keystoneclient url_for method.
Closes-Bug: #1444409
Change-Id: Ida5fc20bd4ee46ec2d6846a31c3ec79e216b73f2
Currently get_keystoneclient uses a side effect (keystone_client
attribute) to cache keystone client instance but it's not more required
as get_keystoneclient is called at most once, thanks to parent changes.
Closes-Bug: #1444405
Change-Id: I832f4ef90fd9ec32ebf4d97675379b73620b0646
Magnumclient authenticates twice when no token and no magnum url are
provided by the user. This change avoids the 2nd authentication.
Closes-Bug: #1442457
Change-Id: I9877e1be5d2e531442774ee4627bdfe1745781d7
This changes enables keystone region support using:
* an option: --os-region-name=<region-name>
* an env variable: OS_REGION_NAME=<region-name>
DocImpact
Closes-Bug: #1436774
Change-Id: I1f82d437f05c2d96ed7ed12d22906efd00edbacb
1) Rename replicationcontroller.py to replicationcontrollers.py
2) Add pod_data support in client (backend will be updated later)
Change-Id: If315873a02bc896129e2ba41eb2a3d6fdd10b5ed
Closes-Bug: #1410447
It is better taht we can change the folder of api to v1 for
magnumclient in case we have v2, v3 ... vx in future.
Change-Id: If59c77e5d1c184c65f1e73ddd43fd89fcdcba18e