d82d8b2420
Attributes which are mandatory (ie, required for object creation) should not be removable. However, some attributes (such as baymodel.server_type) are not required for object creation, but should not be removable if they are set. This commit does the following: - rename JsonPatchType.mandatory_attrs to non_removable_attrs to better describe its meaning, - change its return type to set-of-strings for faster lookup - ensure all mandatory attributes on the type being patched are included in the set of non-removable attributes, - add a new field, JsonPatchType._extra_non_removable_attrs, which should be a set of attributes that are not required for creation but should not be removed if set. Since the object to be patched does not exist at patch-validation time, we leave the validation logic in methods of JsonPatchType and subclasses. This means introspecting the types to be patched. This patch is copied from ironic [1]. [1] https://review.openstack.org/#/c/240202/9 Change-Id: Ifcfc4e48a05d75b919a33ef463754c199da94a8e Close-Bug: #1530771 |
||
---|---|---|
contrib | ||
devstack | ||
doc | ||
etc/magnum | ||
install-guide/source | ||
magnum | ||
releasenotes | ||
specs | ||
tools | ||
.coveragerc | ||
.gitignore | ||
.gitreview | ||
.mailmap | ||
.testr.conf | ||
CONTRIBUTING.rst | ||
Dockerfile | ||
HACKING.rst | ||
LICENSE | ||
README.rst | ||
babel.cfg | ||
functional_creds.conf.sample | ||
requirements.txt | ||
setup.cfg | ||
setup.py | ||
test-requirements.txt | ||
tox.ini |
README.rst
Magnum
Magnum is an OpenStack project which offers container orchestration engines for deploying and managing containers as first class resources in OpenStack.
For more information, please refer to the following resources:
- Free software: under the Apache license
- Documentation: http://docs.openstack.org/developer/magnum
- Source: http://git.openstack.org/cgit/openstack/magnum
- Blueprints: https://blueprints.launchpad.net/magnum
- Bugs: http://bugs.launchpad.net/magnum
- REST Client: http://git.openstack.org/cgit/openstack/python-magnumclient