openstacksdk/releasenotes/notes
Monty Taylor dffe0f0463
Add ability to register non-official services
openstacksdk is in the business of being an SDK for OpenStack. While
it's tempting to support other services that people might want to run
alongside their OpenStack cloud and register in their keystone catalog,
doing so is just not feasible.

At the same time, the 95% case is that the openstacksdk will be used for
OpenStack services, so using entrpoints-based plugin loading as part of
normal usage incurs a startup cost that can be rather high (it's based
on the number of python packages installed on the system, not the number
of plugins for openstacksdk)

Add a method and a constructor parameter to Connection that allows
people to programmatically enable support for additional non-OpenStack
services. This introduce a new Service description class that maps
service_type, Proxy class and optional service_type aliases. A subclass
of Service could be provided by whoever is writing the Proxy class and
associated Resoure objects, or the base class can be instantiated with
type and proxy_class as arguments.

While doing this, rework the loading of the official OpenStack services
to use the Service descriptor objects. Add an OpenStackService subclass
which does the importlib searching of the openstack module tree for
proxy classes. This gets all of the module searching and loading into
the openstack.services module and out of Connection.

This should allow us to delete the metric service from the tree but
provide people who want to use the metric service with openstacksdk a
mechanism to do so. It also should provide a vehicle for people
developing new not-yet-official services to develop their Resource and
Proxy classes out of tree, and then move them in once they are official

Change-Id: I6d1e0c45026a2e7b3c42983df9c0565b1c501bc3
2018-01-16 14:46:47 -06:00
..
add_description_create_user-0ddc9a0ef4da840d.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
add_designate_recordsets_support-69af0a6b317073e7.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
add_designate_zones_support-35fa9b8b09995b43.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
add_heat_tag_support-135aa43ba1dce3bb.yaml Add reno for tag support on heat stacks 2017-12-12 15:14:43 +00:00
add_host_aggregate_support-471623faf45ec3c3.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
add_magnum_baymodel_support-e35e5aab0b14ff75.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
add_magnum_services_support-3d95f9dcc60b5573.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
add_server_group_support-dfa472e3dae7d34d.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
add_update_server-8761059d6de7e68b.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
add_update_service-28e590a7a7524053.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
add-current-user-id-49b6463e6bcc3b31.yaml Document current_user_id in a release note 2017-11-29 10:15:55 -06:00
add-jmespath-support-f47b7a503dbbfda1.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
add-list_flavor_access-e038253e953e6586.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
add-server-console-078ed2696e5b04d9.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
add-service-0bcc16eb026eade3.yaml Add ability to register non-official services 2018-01-16 14:46:47 -06:00
add-show-all-images-flag-352748b6c3d99f3f.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
alternate-auth-context-3939f1492a0e1355.yaml Remove reference to context-managers from release note 2017-11-29 10:15:55 -06:00
always-detail-cluster-templates-3eb4b5744ba327ac.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
boot-on-server-group-a80e51850db24b3d.yaml Add group parameter to create_server 2017-10-12 16:46:59 -04:00
bug-2001080-de52ead3c5466792.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
cache-in-use-volumes-c7fa8bb378106fe3.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
catch-up-release-notes-e385fad34e9f3d6e.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
change-attach-vol-return-value-4834a1f78392abb1.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
cinder_volume_backups_support-6f7ceab440853833.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
cinderv2-norm-fix-037189c60b43089f.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
cleanup-objects-f99aeecf22ac13dd.yaml Cleanup objects that we create on behalf of images 2017-12-01 09:49:47 -06:00
cloud-profile-status-e0d29b5e2f10e95c.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
compute-quotas-b07a0f24dfac8444.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
compute-usage-defaults-5f5b2936f17ff400.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
config-flavor-specs-ca712e17971482b6.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
create_server_network_fix-c4a56b31d2850a4b.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
create_service_norm-319a97433d68fa6a.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
create-stack-fix-12dbb59a48ac7442.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
data-model-cf50d86982646370.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
default-cloud-7ee0bcb9e5dd24b9.yaml Treat clouds.yaml with one cloud like envvars 2017-12-01 09:49:48 -06:00
delete_project-399f9b3107014dde.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
delete-autocreated-1839187b0aa35022.yaml Add method to cleanup autocreated image objects 2017-12-01 09:49:48 -06:00
delete-image-objects-9d4b4e0fff36a23f.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
delete-obj-return-a3ecf0415b7a2989.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
domain_operations_name_or_id-baba4cac5b67234d.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
dual-stack-networks-8a81941c97d28deb.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
endpoint-from-catalog-bad36cb0409a4e6a.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
false-not-attribute-error-49484d0fdc61f75d.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
feature-server-metadata-50caf18cec532160.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
fip_timeout-035c4bb3ff92fa1f.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
fix-compat-with-old-keystoneauth-66e11ee9d008b962.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
fix-config-drive-a148b7589f7e1022.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
fix-delete-ips-1d4eebf7bc4d4733.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
fix-list-networks-a592725df64c306e.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
fix-missing-futures-a0617a1c1ce6e659.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
fix-properties-key-conflict-2161ca1faaad6731.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
fix-supplemental-fips-c9cd58aac12eb30e.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
fix-update-domain-af47b066ac52eb7f.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
fixed-magnum-type-7406f0a60525f858.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
flavor_fix-a53c6b326dc34a2c.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
fnmatch-name-or-id-f658fe26f84086c8.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
get_object_api-968483adb016bce1.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
get-limits-c383c512f8e01873.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
get-usage-72d249ff790d1b8f.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
glance-image-pagination-0b4dfef22b25852b.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
grant-revoke-assignments-231d3f9596a1ae75.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
image-flavor-by-name-54865b00ebbf1004.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
image-from-volume-9acf7379f5995b5b.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
infer-secgroup-source-58d840aaf1a1f485.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
ironic-microversion-ba5b0f36f11196a6.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
less-file-hashing-d2497337da5acbef.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
list-az-names-a38c277d1192471b.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
list-role-assignments-keystone-v2-b127b12b4860f50c.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
list-servers-all-projects-349e6dc665ba2e8d.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
load-yaml-3177efca78e5c67a.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
log-request-ids-37507cb6eed9a7da.yaml Move shade and os-client-config python content 2017-10-04 12:39:43 -05:00
magic-fixes-dca4ae4dac2441a8.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
make_object_metadata_easier.yaml-e9751723e002e06f.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
make-rest-client-dd3d365632a26fa0.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
make-rest-client-version-discovery-84125700f159491a.yaml Update make_rest_client to work with version discovery 2017-12-01 09:49:48 -06:00
merge-shade-os-client-config-29878734ad643e33.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
meta-passthrough-d695bff4f9366b65.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
min-max-legacy-version-301242466ddefa93.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
multiple-updates-b48cc2f6db2e526d.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
nat-source-field-7c7db2a724616d59.yaml Added nat_source flag for networks. 2017-12-01 09:49:48 -06:00
net_provider-dd64b697476b7094.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
network-list-e6e9dafdd8446263.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
network-quotas-b98cce9ffeffdbf4.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
new-floating-attributes-213cdf5681d337e1.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
no-more-troveclient-0a4739c21432ac63.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
norm_role_assignments-a13f41768e62d40c.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
normalize-images-1331bea7bfffa36a.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
nova-flavor-to-rest-0a5757e35714a690.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
nova-old-microversion-5e4b8e239ba44096.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
option-precedence-1fecab21fdfb2c33.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
remove-magnumclient-875b3e513f98f57c.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
remove-novaclient-3f8d4db20d5f9582.yaml Move shade and os-client-config python content 2017-10-04 12:39:43 -05:00
removed-glanceclient-105c7fba9481b9be.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
removed-profile-437f3038025b0fb3.yaml Rename CloudConfig to CloudRegion 2018-01-09 11:56:04 -06:00
removed-swiftclient-aff22bfaeee5f59f.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
renamed-bare-metal-b1cdbc52af14e042.yaml Rework config and rest layers 2017-11-15 11:46:50 -06:00
renamed-block-store-bc5e0a7315bfeb67.yaml Rework config and rest layers 2017-11-15 11:46:50 -06:00
renamed-cluster-743da6d321fffcba.yaml Rework config and rest layers 2017-11-15 11:46:50 -06:00
renamed-telemetry-c08ae3e72afca24f.yaml Rework config and rest layers 2017-11-15 11:46:50 -06:00
router_ext_gw-b86582317bca8b39.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
sdk-helper-41f8d815cfbcfb00.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
server-create-error-id-66c698c7e633fb8b.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
server-security-groups-840ab28c04f359de.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
service_enabled_flag-c917b305d3f2e8fd.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
session-client-b581a6e5d18c8f04.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
set-bootable-volume-454a7a41e7e77d08.yaml Add method to set bootable flag on volumes 2017-10-12 21:40:53 +00:00
shade-helper-568f8cb372eef6d9.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
stack-update-5886e91fd6e423bf.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
started-using-reno-242e2b0cd27f9480.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
stream-to-file-91f48d6dcea399c6.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
strict-mode-d493abc0c3e87945.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
swift-upload-lock-d18f3d42b3a0719a.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
update_endpoint-f87c1f42d0c0d1ef.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
use-interface-ip-c5cb3e7c91150096.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
vendor-updates-f11184ba56bb27cf.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
version-discovery-a501c4e9e9869f77.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
volume-quotas-5b674ee8c1f71eb6.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
volume-types-a07a14ae668e7dd2.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
wait_for_server-8dc8446b7c673d36.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
wait-on-image-snapshot-27cd2eacab2fabd8.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00
workaround-transitive-deps-1e7a214f3256b77e.yaml Merge shade and occ releasenotes 2017-09-20 10:29:27 -05:00