
While we should not start using this for cloning things in the gate yet, the opendev.org links provide for a nicer browsing experience already even though the service is in beta. Go ahead and swap our browsing links. While in there, remove some masakari references to github links to the source code. Masakari now publishes api docs to developer.openstack.org so there is no need to point people to source code for api docs. Change-Id: I14afa3476f9832ef433ec744e888348fc9a359e3
106 lines
2.9 KiB
ReStructuredText
106 lines
2.9 KiB
ReStructuredText
..
|
|
Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
not use this file except in compliance with the License. You may obtain
|
|
a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
License for the specific language governing permissions and limitations
|
|
under the License.
|
|
|
|
=================
|
|
Managing Profiles
|
|
=================
|
|
|
|
A **profile type** can be treated as the meta-type of a `Profile` object. A
|
|
registry of profile types is built when the Cluster service starts. When
|
|
creating a `Profile` object, you will indicate the profile type used in its
|
|
`spec` property.
|
|
|
|
|
|
List Profiles
|
|
~~~~~~~~~~~~~
|
|
|
|
To examine the list of profiles:
|
|
|
|
.. literalinclude:: ../../examples/clustering/profile.py
|
|
:pyobject: list_profiles
|
|
|
|
When listing profiles, you can specify the sorting option using the ``sort``
|
|
parameter and you can do pagination using the ``limit`` and ``marker``
|
|
parameters.
|
|
|
|
Full example: `manage profile`_
|
|
|
|
|
|
Create Profile
|
|
~~~~~~~~~~~~~~
|
|
|
|
When creating a profile, you will provide a dictionary with keys and values
|
|
specified according to the profile type referenced.
|
|
|
|
.. literalinclude:: ../../examples/clustering/profile.py
|
|
:pyobject: create_profile
|
|
|
|
Optionally, you can specify a ``metadata`` keyword argument that contains some
|
|
key-value pairs to be associated with the profile.
|
|
|
|
Full example: `manage profile`_
|
|
|
|
|
|
Find Profile
|
|
~~~~~~~~~~~~
|
|
|
|
To find a profile based on its name or ID:
|
|
|
|
.. literalinclude:: ../../examples/clustering/profile.py
|
|
:pyobject: find_profile
|
|
|
|
The Cluster service doesn't allow updating the ``spec`` of a profile. The only
|
|
way to achieve that is to create a new profile.
|
|
|
|
Full example: `manage profile`_
|
|
|
|
|
|
Get Profile
|
|
~~~~~~~~~~~
|
|
|
|
To get a profile based on its name or ID:
|
|
|
|
.. literalinclude:: ../../examples/clustering/profile.py
|
|
:pyobject: get_profile
|
|
|
|
Full example: `manage profile`_
|
|
|
|
|
|
Update Profile
|
|
~~~~~~~~~~~~~~
|
|
|
|
After a profile is created, most of its properties are immutable. Still, you
|
|
can update a profile's ``name`` and/or ``metadata``.
|
|
|
|
.. literalinclude:: ../../examples/clustering/profile.py
|
|
:pyobject: update_profile
|
|
|
|
The Cluster service doesn't allow updating the ``spec`` of a profile. The only
|
|
way to achieve that is to create a new profile.
|
|
|
|
Full example: `manage profile`_
|
|
|
|
|
|
Delete Profile
|
|
~~~~~~~~~~~~~~
|
|
|
|
A profile can be deleted after creation, provided that it is not referenced
|
|
by any active clusters or nodes. If you attempt to delete a profile that is
|
|
still in use, you will get an error message.
|
|
|
|
.. literalinclude:: ../../examples/clustering/profile.py
|
|
:pyobject: delete_profile
|
|
|
|
|
|
.. _manage profile: https://opendev.org/openstack/openstacksdk/src/branch/master/examples/clustering/profile.py
|