From edaec6a1026ced0d8fa31e9244df8b3312c78a87 Mon Sep 17 00:00:00 2001 From: annegentle Date: Tue, 28 Feb 2012 08:16:11 -0600 Subject: [PATCH] Moves wadls and docs to API repo, bug 928059 Please enter the commit message for your changes. Lines starting Change-Id: I39cef24f69347a24a89a43861ad3c87251083d1c --- openstack-identity-api/pom.xml | 30 +- .../src/docbkx/HP-IDM/HP-IDM-admin.wadl | 37 +- .../src/docbkx/HP-IDM/HP-IDM-admin.wadl~ | 149 ++ .../src/docbkx/HP-IDM/HP-IDM.xml | 24 +- .../{ => OS-KS}/OS-KSADM-admin-devguide.xml | 8 +- .../src/docbkx/OS-KS/OS-KSADM-admin.wadl | 793 ++++++++++ .../OS-KSCATALOG-admin-devguide.xml | 8 +- .../src/docbkx/OS-KS/OS-KSCATALOG-admin.wadl | 295 ++++ .../{ => OS-KS}/OS-KSEC2-admin-devguide.xml | 14 +- .../src/docbkx/OS-KS/OS-KSEC2-admin.wadl | 211 +++ .../{ => OS-KS}/OS-KSEC2-service-devguide.xml | 16 +- .../src/docbkx/OS-KS/OS-KSS3-admin.wadl | 212 +++ .../src/docbkx/OS-KS/OS-KSVALIDATE-admin.wadl | 192 +++ .../src/docbkx/RAX-KS/RAX-KSGRP-admin.wadl | 73 + .../RAX-KSGRP-service-devguide.xml | 28 +- .../{ => RAX-KS}/RAX-KSKEY-admin-devguide.xml | 29 +- .../src/docbkx/RAX-KS/RAX-KSKEY-admin.wadl | 211 +++ .../RAX-KSKEY-service-devguide.xml | 16 +- .../src/docbkx/RAX-KS/RAX-KSQA-admin.wadl | 106 ++ .../src/docbkx/admin/OS-KSADM-admin.wadl | 793 ++++++++++ .../src/docbkx/admin/OS-KSCATALOG-admin.wadl | 261 ++++ .../src/docbkx/admin/OS-KSEC2-admin.wadl | 212 +++ .../src/docbkx/admin/RAX-KSGRP-admin.wadl | 74 + .../src/docbkx/admin/RAX-KSKEY-admin.wadl | 212 +++ .../src/docbkx/admin/RAX-KSQA-admin.wadl | 106 ++ .../src/docbkx/admin/extensions.json | 1 + .../src/docbkx/admin/extensions.xml | 5 + .../src/docbkx/admin/identity-admin.wadl | 508 +++++++ .../src/docbkx/admin/version.json.tpl | 38 + .../src/docbkx/admin/version.xml.tpl | 27 + .../src/docbkx/client/identity-client-api.xml | 18 + .../src/docbkx/common/common.ent | 56 + .../{ => common}/identity-OS-KSADM-api.xml | 32 +- .../identity-OS-KSCATALOG-api.xml | 8 +- .../src/docbkx/common/identity-admin.wadl | 508 +++++++ .../docbkx/{ => common}/identity-concepts.xml | 0 .../{ => common}/identity-dev-guide.xml | 1 - .../identity-general-api-info.xml | 0 .../{ => common}/identity-service-api.xml | 46 +- .../src/docbkx/common/identity.wadl | 182 +++ .../{ => common}/img/Check_mark_23x20_02.svg | 0 .../src/docbkx/common/js/shjs/sh_java.js | 337 +++++ .../docbkx/common/js/shjs/sh_javascript.js | 347 +++++ .../src/docbkx/common/js/shjs/sh_main.js | 538 +++++++ .../src/docbkx/common/js/shjs/sh_xml.js | 115 ++ .../docbkx/common/js/trc/schema/controller.js | 184 +++ .../common/js/trc/schema/layoutManager.js | 137 ++ .../common/js/trc/schema/sampleManager.js | 342 +++++ .../src/docbkx/common/js/trc/util.js | 564 +++++++ .../common/samples/RAX-KSGRP-groups.json | 8 + .../common/samples/RAX-KSGRP-groups.xml | 5 + .../common/samples/RAX-KSQA-secretQA.json | 6 + .../common/samples/RAX-KSQA-secretQA.xml | 7 + .../common/samples/apiKeyCredentials.json | 6 + .../common/samples/apiKeyCredentials.xml | 6 + .../src/docbkx/common/samples/auth.json | 87 ++ .../src/docbkx/common/samples/auth.xml | 70 + .../samples/auth_credentials-OS-KSEC2.json | 10 + .../samples/auth_credentials-OS-KSEC2.xml} | 7 +- .../samples/auth_credentials-RAX-KSKEY.json | 9 + .../samples/auth_credentials-RAX-KSKEY.xml | 7 + .../common/samples/auth_credentials.json | 9 + .../common/samples/auth_credentials.xml | 6 + .../common/samples/auth_with_token.json | 8 + .../docbkx/common/samples/auth_with_token.xml | 7 + .../docbkx/common/samples/authwithgroups.json | 87 ++ .../samples/authwithgroups.xml} | 32 +- .../src/docbkx/common/samples/choices.json | 64 + .../docbkx/{ => common}/samples/choices.xml | 0 .../docbkx/common/samples/credentials.json | 10 + .../src/docbkx/common/samples/credentials.xml | 5 + .../common/samples/credentialswithapikey.json | 16 + .../common/samples/credentialswithapikey.xml | 9 + .../common/samples/credentialswithec2.json | 17 + .../common/samples/credentialswithec2.xml | 7 + .../docbkx/common/samples/ec2Credentials.json | 7 + .../docbkx/common/samples/ec2Credentials.xml | 7 + .../src/docbkx/common/samples/endpoint.json | 14 + .../src/docbkx/common/samples/endpoint.xml | 18 + .../common/samples/endpointTemplate.json | 14 + .../{ => common}/samples/endpointTemplate.xml | 9 +- .../samples/endpointTemplateWithOnlyId.json | 5 + .../samples/endpointTemplateWithOnlyId.xml | 6 + .../common/samples/endpointTemplates.json | 59 + .../samples/endpointTemplates.xml | 47 +- .../src/docbkx/common/samples/endpoints.json | 64 + .../src/docbkx/common/samples/endpoints.xml | 76 + .../{ => common}/samples/ext-getuser.json | 9 +- .../{ => common}/samples/ext-getuser.xml | 0 .../{ => common}/samples/extension.json | 0 .../docbkx/{ => common}/samples/extension.xml | 0 .../src/docbkx/common/samples/extensions.json | 40 + .../{ => common}/samples/extensions.xml | 0 .../src/docbkx/common/samples/getuser-1.json | 22 + .../docbkx/{ => common}/samples/getuser-1.xml | 0 .../{ => common}/samples/identity_fault.json | 0 .../{ => common}/samples/identity_fault.xml | 0 .../{ => common}/samples/item_not_found.json | 0 .../{ => common}/samples/item_not_found.xml | 0 .../docbkx/common/samples/norequestbody.txt | 1 + .../docbkx/common/samples/noresponsebody.txt | 1 + .../common/samples/passwordcredentials.json | 6 + .../common/samples/passwordcredentials.xml | 4 + .../src/docbkx/{ => common}/samples/role.json | 3 +- .../src/docbkx/common/samples/role.xml | 4 + .../src/docbkx/common/samples/roles.json | 9 + .../src/docbkx/common/samples/roles.xml | 6 + .../samples/samplerequestheader.txt | 0 .../samples/sampleresponseheader.txt | 0 .../src/docbkx/common/samples/service.json | 8 + .../src/docbkx/common/samples/service.xml | 4 + .../src/docbkx/common/samples/services.json | 16 + .../src/docbkx/common/samples/services.xml | 6 + .../docbkx/{ => common}/samples/tenant.json | 0 .../docbkx/{ => common}/samples/tenant.xml | 0 .../{ => common}/samples/tenantlock.json | 0 .../{ => common}/samples/tenantlock.xml | 0 .../src/docbkx/common/samples/tenants-1.json | 14 + .../docbkx/{ => common}/samples/tenants-1.xml | 0 .../src/docbkx/common/samples/tenants-2.json | 18 + .../docbkx/{ => common}/samples/tenants-2.xml | 0 .../src/docbkx/common/samples/tenants-3.json | 14 + .../docbkx/{ => common}/samples/tenants-3.xml | 0 .../{ => common}/samples/tenants-request.txt | 0 .../src/docbkx/common/samples/tenants.json | 16 + .../docbkx/{ => common}/samples/tenants.xml | 0 .../common/samples/tenantwithoutid.json | 7 + .../docbkx/common/samples/tenantwithoutid.xml | 5 + .../{ => common}/samples/updatedtenant.json | 0 .../{ => common}/samples/updatedtenant.xml | 0 .../src/docbkx/{ => common}/samples/user.json | 2 +- .../src/docbkx/{ => common}/samples/user.xml | 3 +- .../src/docbkx/common/samples/users.json | 16 + .../src/docbkx/common/samples/users.xml | 9 + .../common/samples/userwithenabledonly.json | 5 + .../common/samples/userwithenabledonly.xml | 5 + .../docbkx/common/samples/userwithoutid.json | 7 + .../docbkx/common/samples/userwithoutid.xml | 4 + .../docbkx/common/samples/validatetoken.json | 27 + .../docbkx/common/samples/validatetoken.xml | 12 + .../{ => common}/samples/version-atom.xml | 2 +- .../docbkx/{ => common}/samples/version.json | 2 +- .../docbkx/{ => common}/samples/version.xml | 0 .../{ => common}/samples/versions-atom.xml | 0 .../src/docbkx/common/samples/versions.json | 34 + .../docbkx/{ => common}/samples/versions.xml | 0 .../src/docbkx/common/style/schema.css | 82 + .../src/docbkx/common/style/shjs/sh_acid.css | 151 ++ .../docbkx/common/style/shjs/sh_darkblue.css | 151 ++ .../src/docbkx/common/style/shjs/sh_emacs.css | 139 ++ .../src/docbkx/common/style/shjs/sh_night.css | 151 ++ .../src/docbkx/common/style/shjs/sh_pablo.css | 151 ++ .../src/docbkx/common/style/shjs/sh_print.css | 145 ++ .../src/docbkx/common/style/shjs/sh_style.css | 66 + .../common/style/shjs/sh_whitengrey.css | 139 ++ .../src/docbkx/common/xsd/OS-KSADM.xsd | 108 ++ .../src/docbkx/common/xsd/OS-KSCATALOG.xsd | 193 +++ .../common/xsd/OS-KSEC2-credentials.xsd | 35 + .../common/xsd/RAX-KSADM-credentials.xsd | 33 + .../src/docbkx/common/xsd/RAX-KSADM-users.xsd | 43 + .../docbkx/common/xsd/RAX-KSGRP-groups.xsd | 53 + .../common/xsd/RAX-KSKEY-credentials.xsd | 52 + .../docbkx/common/xsd/RAX-KSQA-secretQA.xsd | 51 + .../src/docbkx/common/xsd/api-common.xsd | 55 + .../src/docbkx/common/xsd/api.xsd | 22 + .../src/docbkx/common/xsd/atom/atom.xsd | 115 ++ .../src/docbkx/common/xsd/atom/xml.xsd | 287 ++++ .../src/docbkx/common/xsd/credentials.xsd | 105 ++ .../src/docbkx/common/xsd/endpoints.xsd | 160 ++ .../src/docbkx/common/xsd/extensions.xsd | 60 + .../src/docbkx/common/xsd/fault.xsd | 138 ++ .../src/docbkx/common/xsd/roles.xsd | 66 + .../src/docbkx/common/xsd/services.xsd | 103 ++ .../src/docbkx/common/xsd/tenant.xsd | 151 ++ .../src/docbkx/common/xsd/token.xsd | 298 ++++ .../src/docbkx/common/xsd/user.xsd | 131 ++ .../src/docbkx/common/xsd/version.xsd | 357 +++++ .../src/docbkx/common/xslt/schema.xslt | 1342 +++++++++++++++++ .../src/docbkx/contrib/__init__.py | 0 .../src/docbkx/contrib/__init__.pyc | Bin 0 -> 147 bytes .../src/docbkx/contrib/extensions/__init__.py | 44 + .../docbkx/contrib/extensions/__init__.pyc | Bin 0 -> 1562 bytes .../contrib/extensions/admin/__init__.py | 40 + .../contrib/extensions/admin/extension.py | 20 + .../extensions/admin/osec2/__init__.py | 0 .../extensions/admin/osec2/extension.json | 21 + .../extensions/admin/osec2/extension.xml | 19 + .../extensions/admin/osksadm/__init__.py | 149 ++ .../extensions/admin/osksadm/extension.json | 20 + .../extensions/admin/osksadm/extension.xml | 15 + .../extensions/admin/oskscatalog/__init__.py | 63 + .../admin/oskscatalog/extension.json | 20 + .../admin/oskscatalog/extension.xml | 15 + .../extensions/admin/raxgrp/extension.json | 19 + .../extensions/admin/raxgrp/extension.xml | 15 + .../extensions/admin/raxkey/__init__.py | 0 .../extensions/admin/raxkey/extension.json | 20 + .../extensions/admin/raxkey/extension.xml | 15 + .../extensions/admin/raxkey/frontend.py | 99 ++ .../contrib/extensions/service/__init__.py | 0 .../extensions/service/osec2/__init__.py | 0 .../extensions/service/osec2/extension.json | 16 + .../extensions/service/osec2/extension.xml | 16 + .../extensions/service/osec2/frontend.py | 99 ++ .../extensions/service/raxgrp/__init__.py | 0 .../contrib/extensions/service/raxgrp/api.py | 140 ++ .../extensions/service/raxgrp/extension.json | 14 + .../extensions/service/raxgrp/extension.xml | 13 + .../extensions/service/raxkey/__init__.py | 0 .../extensions/service/raxkey/extension.json | 14 + .../extensions/service/raxkey/extension.xml | 13 + .../extensions/service/raxkey/frontend.py | 99 ++ .../src/docbkx/identity-client-api.xml | 19 - .../src/docbkx/samples/auth.json | 67 - .../samples/auth_credentials-OS-EC2.json | 10 - .../samples/auth_credentials-RAX-KEY.json | 8 - .../samples/auth_credentials-RAX-KEY.xml | 7 - .../src/docbkx/samples/auth_credentials.json | 9 - .../src/docbkx/samples/auth_credentials.xml | 8 - .../src/docbkx/samples/choices.json | 67 - .../src/docbkx/samples/endpoint.json | 6 - .../src/docbkx/samples/endpoint.xml | 6 - .../src/docbkx/samples/endpointTemplate.json | 14 - .../src/docbkx/samples/endpointTemplates.json | 54 - .../src/docbkx/samples/endpoints.json | 20 - .../src/docbkx/samples/endpoints.xml | 20 - .../src/docbkx/samples/extensions.json | 41 - .../src/docbkx/samples/getuser-1.json | 25 - .../src/docbkx/samples/role.xml | 4 - .../src/docbkx/samples/roles.json | 13 - .../src/docbkx/samples/roles.xml | 6 - .../src/docbkx/samples/service.json | 7 - .../src/docbkx/samples/service.xml | 4 - .../src/docbkx/samples/services.json | 13 - .../src/docbkx/samples/services.xml | 6 - .../src/docbkx/samples/tenants-1.json | 18 - .../src/docbkx/samples/tenants-2.json | 21 - .../src/docbkx/samples/tenants-3.json | 18 - .../src/docbkx/samples/tenants.json | 17 - .../src/docbkx/samples/validatetoken.json | 19 - .../src/docbkx/samples/validatetoken.xml | 13 - .../src/docbkx/samples/versions.json | 37 - 242 files changed, 15229 insertions(+), 775 deletions(-) create mode 100644 openstack-identity-api/src/docbkx/HP-IDM/HP-IDM-admin.wadl~ rename openstack-identity-api/src/docbkx/{ => OS-KS}/OS-KSADM-admin-devguide.xml (92%) create mode 100644 openstack-identity-api/src/docbkx/OS-KS/OS-KSADM-admin.wadl rename openstack-identity-api/src/docbkx/{ => OS-KS}/OS-KSCATALOG-admin-devguide.xml (91%) create mode 100644 openstack-identity-api/src/docbkx/OS-KS/OS-KSCATALOG-admin.wadl rename openstack-identity-api/src/docbkx/{ => OS-KS}/OS-KSEC2-admin-devguide.xml (89%) create mode 100644 openstack-identity-api/src/docbkx/OS-KS/OS-KSEC2-admin.wadl rename openstack-identity-api/src/docbkx/{ => OS-KS}/OS-KSEC2-service-devguide.xml (88%) create mode 100644 openstack-identity-api/src/docbkx/OS-KS/OS-KSS3-admin.wadl create mode 100644 openstack-identity-api/src/docbkx/OS-KS/OS-KSVALIDATE-admin.wadl create mode 100644 openstack-identity-api/src/docbkx/RAX-KS/RAX-KSGRP-admin.wadl rename openstack-identity-api/src/docbkx/{ => RAX-KS}/RAX-KSGRP-service-devguide.xml (84%) rename openstack-identity-api/src/docbkx/{ => RAX-KS}/RAX-KSKEY-admin-devguide.xml (86%) create mode 100644 openstack-identity-api/src/docbkx/RAX-KS/RAX-KSKEY-admin.wadl rename openstack-identity-api/src/docbkx/{ => RAX-KS}/RAX-KSKEY-service-devguide.xml (88%) create mode 100644 openstack-identity-api/src/docbkx/RAX-KS/RAX-KSQA-admin.wadl create mode 100644 openstack-identity-api/src/docbkx/admin/OS-KSADM-admin.wadl create mode 100644 openstack-identity-api/src/docbkx/admin/OS-KSCATALOG-admin.wadl create mode 100644 openstack-identity-api/src/docbkx/admin/OS-KSEC2-admin.wadl create mode 100644 openstack-identity-api/src/docbkx/admin/RAX-KSGRP-admin.wadl create mode 100644 openstack-identity-api/src/docbkx/admin/RAX-KSKEY-admin.wadl create mode 100644 openstack-identity-api/src/docbkx/admin/RAX-KSQA-admin.wadl create mode 100644 openstack-identity-api/src/docbkx/admin/extensions.json create mode 100644 openstack-identity-api/src/docbkx/admin/extensions.xml create mode 100644 openstack-identity-api/src/docbkx/admin/identity-admin.wadl create mode 100644 openstack-identity-api/src/docbkx/admin/version.json.tpl create mode 100644 openstack-identity-api/src/docbkx/admin/version.xml.tpl create mode 100644 openstack-identity-api/src/docbkx/client/identity-client-api.xml create mode 100644 openstack-identity-api/src/docbkx/common/common.ent rename openstack-identity-api/src/docbkx/{ => common}/identity-OS-KSADM-api.xml (74%) rename openstack-identity-api/src/docbkx/{ => common}/identity-OS-KSCATALOG-api.xml (84%) create mode 100644 openstack-identity-api/src/docbkx/common/identity-admin.wadl rename openstack-identity-api/src/docbkx/{ => common}/identity-concepts.xml (100%) rename openstack-identity-api/src/docbkx/{ => common}/identity-dev-guide.xml (97%) rename openstack-identity-api/src/docbkx/{ => common}/identity-general-api-info.xml (100%) rename openstack-identity-api/src/docbkx/{ => common}/identity-service-api.xml (63%) create mode 100644 openstack-identity-api/src/docbkx/common/identity.wadl rename openstack-identity-api/src/docbkx/{ => common}/img/Check_mark_23x20_02.svg (100%) create mode 100644 openstack-identity-api/src/docbkx/common/js/shjs/sh_java.js create mode 100644 openstack-identity-api/src/docbkx/common/js/shjs/sh_javascript.js create mode 100644 openstack-identity-api/src/docbkx/common/js/shjs/sh_main.js create mode 100644 openstack-identity-api/src/docbkx/common/js/shjs/sh_xml.js create mode 100644 openstack-identity-api/src/docbkx/common/js/trc/schema/controller.js create mode 100644 openstack-identity-api/src/docbkx/common/js/trc/schema/layoutManager.js create mode 100644 openstack-identity-api/src/docbkx/common/js/trc/schema/sampleManager.js create mode 100644 openstack-identity-api/src/docbkx/common/js/trc/util.js create mode 100644 openstack-identity-api/src/docbkx/common/samples/RAX-KSGRP-groups.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/RAX-KSGRP-groups.xml create mode 100644 openstack-identity-api/src/docbkx/common/samples/RAX-KSQA-secretQA.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/RAX-KSQA-secretQA.xml create mode 100644 openstack-identity-api/src/docbkx/common/samples/apiKeyCredentials.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/apiKeyCredentials.xml create mode 100644 openstack-identity-api/src/docbkx/common/samples/auth.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/auth.xml create mode 100644 openstack-identity-api/src/docbkx/common/samples/auth_credentials-OS-KSEC2.json rename openstack-identity-api/src/docbkx/{samples/auth_credentials-OS-EC2.xml => common/samples/auth_credentials-OS-KSEC2.xml} (59%) create mode 100644 openstack-identity-api/src/docbkx/common/samples/auth_credentials-RAX-KSKEY.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/auth_credentials-RAX-KSKEY.xml create mode 100644 openstack-identity-api/src/docbkx/common/samples/auth_credentials.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/auth_credentials.xml create mode 100644 openstack-identity-api/src/docbkx/common/samples/auth_with_token.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/auth_with_token.xml create mode 100644 openstack-identity-api/src/docbkx/common/samples/authwithgroups.json rename openstack-identity-api/src/docbkx/{samples/auth.xml => common/samples/authwithgroups.xml} (68%) create mode 100644 openstack-identity-api/src/docbkx/common/samples/choices.json rename openstack-identity-api/src/docbkx/{ => common}/samples/choices.xml (100%) create mode 100644 openstack-identity-api/src/docbkx/common/samples/credentials.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/credentials.xml create mode 100644 openstack-identity-api/src/docbkx/common/samples/credentialswithapikey.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/credentialswithapikey.xml create mode 100644 openstack-identity-api/src/docbkx/common/samples/credentialswithec2.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/credentialswithec2.xml create mode 100644 openstack-identity-api/src/docbkx/common/samples/ec2Credentials.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/ec2Credentials.xml create mode 100644 openstack-identity-api/src/docbkx/common/samples/endpoint.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/endpoint.xml create mode 100644 openstack-identity-api/src/docbkx/common/samples/endpointTemplate.json rename openstack-identity-api/src/docbkx/{ => common}/samples/endpointTemplate.xml (53%) create mode 100644 openstack-identity-api/src/docbkx/common/samples/endpointTemplateWithOnlyId.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/endpointTemplateWithOnlyId.xml create mode 100644 openstack-identity-api/src/docbkx/common/samples/endpointTemplates.json rename openstack-identity-api/src/docbkx/{ => common}/samples/endpointTemplates.xml (58%) create mode 100644 openstack-identity-api/src/docbkx/common/samples/endpoints.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/endpoints.xml rename openstack-identity-api/src/docbkx/{ => common}/samples/ext-getuser.json (82%) rename openstack-identity-api/src/docbkx/{ => common}/samples/ext-getuser.xml (100%) rename openstack-identity-api/src/docbkx/{ => common}/samples/extension.json (100%) rename openstack-identity-api/src/docbkx/{ => common}/samples/extension.xml (100%) create mode 100644 openstack-identity-api/src/docbkx/common/samples/extensions.json rename openstack-identity-api/src/docbkx/{ => common}/samples/extensions.xml (100%) create mode 100644 openstack-identity-api/src/docbkx/common/samples/getuser-1.json rename openstack-identity-api/src/docbkx/{ => common}/samples/getuser-1.xml (100%) rename openstack-identity-api/src/docbkx/{ => common}/samples/identity_fault.json (100%) rename openstack-identity-api/src/docbkx/{ => common}/samples/identity_fault.xml (100%) rename openstack-identity-api/src/docbkx/{ => common}/samples/item_not_found.json (100%) rename openstack-identity-api/src/docbkx/{ => common}/samples/item_not_found.xml (100%) create mode 100644 openstack-identity-api/src/docbkx/common/samples/norequestbody.txt create mode 100644 openstack-identity-api/src/docbkx/common/samples/noresponsebody.txt create mode 100644 openstack-identity-api/src/docbkx/common/samples/passwordcredentials.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/passwordcredentials.xml rename openstack-identity-api/src/docbkx/{ => common}/samples/role.json (58%) create mode 100644 openstack-identity-api/src/docbkx/common/samples/role.xml create mode 100644 openstack-identity-api/src/docbkx/common/samples/roles.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/roles.xml rename openstack-identity-api/src/docbkx/{ => common}/samples/samplerequestheader.txt (100%) rename openstack-identity-api/src/docbkx/{ => common}/samples/sampleresponseheader.txt (100%) create mode 100644 openstack-identity-api/src/docbkx/common/samples/service.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/service.xml create mode 100644 openstack-identity-api/src/docbkx/common/samples/services.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/services.xml rename openstack-identity-api/src/docbkx/{ => common}/samples/tenant.json (100%) rename openstack-identity-api/src/docbkx/{ => common}/samples/tenant.xml (100%) rename openstack-identity-api/src/docbkx/{ => common}/samples/tenantlock.json (100%) rename openstack-identity-api/src/docbkx/{ => common}/samples/tenantlock.xml (100%) create mode 100644 openstack-identity-api/src/docbkx/common/samples/tenants-1.json rename openstack-identity-api/src/docbkx/{ => common}/samples/tenants-1.xml (100%) create mode 100644 openstack-identity-api/src/docbkx/common/samples/tenants-2.json rename openstack-identity-api/src/docbkx/{ => common}/samples/tenants-2.xml (100%) create mode 100644 openstack-identity-api/src/docbkx/common/samples/tenants-3.json rename openstack-identity-api/src/docbkx/{ => common}/samples/tenants-3.xml (100%) rename openstack-identity-api/src/docbkx/{ => common}/samples/tenants-request.txt (100%) create mode 100644 openstack-identity-api/src/docbkx/common/samples/tenants.json rename openstack-identity-api/src/docbkx/{ => common}/samples/tenants.xml (100%) create mode 100644 openstack-identity-api/src/docbkx/common/samples/tenantwithoutid.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/tenantwithoutid.xml rename openstack-identity-api/src/docbkx/{ => common}/samples/updatedtenant.json (100%) rename openstack-identity-api/src/docbkx/{ => common}/samples/updatedtenant.xml (100%) rename openstack-identity-api/src/docbkx/{ => common}/samples/user.json (96%) rename openstack-identity-api/src/docbkx/{ => common}/samples/user.xml (76%) create mode 100644 openstack-identity-api/src/docbkx/common/samples/users.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/users.xml create mode 100644 openstack-identity-api/src/docbkx/common/samples/userwithenabledonly.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/userwithenabledonly.xml create mode 100644 openstack-identity-api/src/docbkx/common/samples/userwithoutid.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/userwithoutid.xml create mode 100644 openstack-identity-api/src/docbkx/common/samples/validatetoken.json create mode 100644 openstack-identity-api/src/docbkx/common/samples/validatetoken.xml rename openstack-identity-api/src/docbkx/{ => common}/samples/version-atom.xml (91%) rename openstack-identity-api/src/docbkx/{ => common}/samples/version.json (89%) rename openstack-identity-api/src/docbkx/{ => common}/samples/version.xml (100%) rename openstack-identity-api/src/docbkx/{ => common}/samples/versions-atom.xml (100%) create mode 100644 openstack-identity-api/src/docbkx/common/samples/versions.json rename openstack-identity-api/src/docbkx/{ => common}/samples/versions.xml (100%) create mode 100644 openstack-identity-api/src/docbkx/common/style/schema.css create mode 100644 openstack-identity-api/src/docbkx/common/style/shjs/sh_acid.css create mode 100644 openstack-identity-api/src/docbkx/common/style/shjs/sh_darkblue.css create mode 100644 openstack-identity-api/src/docbkx/common/style/shjs/sh_emacs.css create mode 100644 openstack-identity-api/src/docbkx/common/style/shjs/sh_night.css create mode 100644 openstack-identity-api/src/docbkx/common/style/shjs/sh_pablo.css create mode 100644 openstack-identity-api/src/docbkx/common/style/shjs/sh_print.css create mode 100644 openstack-identity-api/src/docbkx/common/style/shjs/sh_style.css create mode 100644 openstack-identity-api/src/docbkx/common/style/shjs/sh_whitengrey.css create mode 100644 openstack-identity-api/src/docbkx/common/xsd/OS-KSADM.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/OS-KSCATALOG.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/OS-KSEC2-credentials.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/RAX-KSADM-credentials.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/RAX-KSADM-users.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/RAX-KSGRP-groups.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/RAX-KSKEY-credentials.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/RAX-KSQA-secretQA.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/api-common.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/api.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/atom/atom.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/atom/xml.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/credentials.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/endpoints.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/extensions.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/fault.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/roles.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/services.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/tenant.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/token.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/user.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xsd/version.xsd create mode 100644 openstack-identity-api/src/docbkx/common/xslt/schema.xslt create mode 100644 openstack-identity-api/src/docbkx/contrib/__init__.py create mode 100644 openstack-identity-api/src/docbkx/contrib/__init__.pyc create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/__init__.py create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/__init__.pyc create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/admin/__init__.py create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/admin/extension.py create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/admin/osec2/__init__.py create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/admin/osec2/extension.json create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/admin/osec2/extension.xml create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/admin/osksadm/__init__.py create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/admin/osksadm/extension.json create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/admin/osksadm/extension.xml create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/admin/oskscatalog/__init__.py create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/admin/oskscatalog/extension.json create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/admin/oskscatalog/extension.xml create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/admin/raxgrp/extension.json create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/admin/raxgrp/extension.xml create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/admin/raxkey/__init__.py create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/admin/raxkey/extension.json create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/admin/raxkey/extension.xml create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/admin/raxkey/frontend.py create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/service/__init__.py create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/service/osec2/__init__.py create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/service/osec2/extension.json create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/service/osec2/extension.xml create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/service/osec2/frontend.py create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/service/raxgrp/__init__.py create mode 100755 openstack-identity-api/src/docbkx/contrib/extensions/service/raxgrp/api.py create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/service/raxgrp/extension.json create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/service/raxgrp/extension.xml create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/service/raxkey/__init__.py create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/service/raxkey/extension.json create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/service/raxkey/extension.xml create mode 100644 openstack-identity-api/src/docbkx/contrib/extensions/service/raxkey/frontend.py delete mode 100644 openstack-identity-api/src/docbkx/identity-client-api.xml delete mode 100644 openstack-identity-api/src/docbkx/samples/auth.json delete mode 100644 openstack-identity-api/src/docbkx/samples/auth_credentials-OS-EC2.json delete mode 100644 openstack-identity-api/src/docbkx/samples/auth_credentials-RAX-KEY.json delete mode 100644 openstack-identity-api/src/docbkx/samples/auth_credentials-RAX-KEY.xml delete mode 100644 openstack-identity-api/src/docbkx/samples/auth_credentials.json delete mode 100644 openstack-identity-api/src/docbkx/samples/auth_credentials.xml delete mode 100644 openstack-identity-api/src/docbkx/samples/choices.json delete mode 100644 openstack-identity-api/src/docbkx/samples/endpoint.json delete mode 100644 openstack-identity-api/src/docbkx/samples/endpoint.xml delete mode 100644 openstack-identity-api/src/docbkx/samples/endpointTemplate.json delete mode 100644 openstack-identity-api/src/docbkx/samples/endpointTemplates.json delete mode 100644 openstack-identity-api/src/docbkx/samples/endpoints.json delete mode 100644 openstack-identity-api/src/docbkx/samples/endpoints.xml delete mode 100644 openstack-identity-api/src/docbkx/samples/extensions.json delete mode 100644 openstack-identity-api/src/docbkx/samples/getuser-1.json delete mode 100644 openstack-identity-api/src/docbkx/samples/role.xml delete mode 100644 openstack-identity-api/src/docbkx/samples/roles.json delete mode 100644 openstack-identity-api/src/docbkx/samples/roles.xml delete mode 100644 openstack-identity-api/src/docbkx/samples/service.json delete mode 100644 openstack-identity-api/src/docbkx/samples/service.xml delete mode 100644 openstack-identity-api/src/docbkx/samples/services.json delete mode 100644 openstack-identity-api/src/docbkx/samples/services.xml delete mode 100644 openstack-identity-api/src/docbkx/samples/tenants-1.json delete mode 100644 openstack-identity-api/src/docbkx/samples/tenants-2.json delete mode 100644 openstack-identity-api/src/docbkx/samples/tenants-3.json delete mode 100644 openstack-identity-api/src/docbkx/samples/tenants.json delete mode 100644 openstack-identity-api/src/docbkx/samples/validatetoken.json delete mode 100644 openstack-identity-api/src/docbkx/samples/validatetoken.xml delete mode 100644 openstack-identity-api/src/docbkx/samples/versions.json diff --git a/openstack-identity-api/pom.xml b/openstack-identity-api/pom.xml index a33a6ab9..54b4f354 100644 --- a/openstack-identity-api/pom.xml +++ b/openstack-identity-api/pom.xml @@ -33,7 +33,7 @@ UTF-8 - 1.0.9-SNAPSHOT + 1.0.11-SNAPSHOT @@ -117,7 +117,7 @@ jar="${net.sourceforge.saxon:saxon:jar}" fork="true"> - + @@ -125,7 +125,7 @@ jar="${net.sourceforge.saxon:saxon:jar}" fork="true"> - + @@ -134,7 +134,7 @@ jar="${net.sourceforge.saxon:saxon:jar}" fork="true"> - + @@ -143,7 +143,7 @@ jar="${net.sourceforge.saxon:saxon:jar}" fork="true"> - + @@ -152,7 +152,7 @@ jar="${net.sourceforge.saxon:saxon:jar}" fork="true"> - + @@ -215,7 +215,7 @@ - + @@ -234,7 +234,7 @@ tofile="${basedir}/target/docbkx/webhelp/api/openstack-identity-service/2.0/identity-dev-guide-2.0.pdf"/> - + tofile="${basedir}/target/docbkx/webhelp/identitydevguide/admin/OS-KSEC2-admin-devguide.pdf"/>--> @@ -270,7 +270,7 @@ generate-pdf generate-webhelp - generate-sources + HP-IDM/HP-IDM.xml 1 @@ -295,8 +295,14 @@ true src/docbkx - identity-dev-guide.xml,,OS-KSADM-admin-devguide.xml,OS-KSCATALOG-admin-devguide.xml,RAX-KSKEY-service-devguide.xml, - OS-KSEC2-service-devguide.xml,RAX-KSGRP-service-devguide.xml,RAX-KSKEY-admin-devguide.xml,OS-KSEC2-admin-devguide.xml + common/identity-dev-guide.xml reviewer openstack diff --git a/openstack-identity-api/src/docbkx/HP-IDM/HP-IDM-admin.wadl b/openstack-identity-api/src/docbkx/HP-IDM/HP-IDM-admin.wadl index d2a78172..626de56d 100644 --- a/openstack-identity-api/src/docbkx/HP-IDM/HP-IDM-admin.wadl +++ b/openstack-identity-api/src/docbkx/HP-IDM/HP-IDM-admin.wadl @@ -7,21 +7,21 @@ + %common; ]> + xmlns:identity="http://docs.openstack.org/identity/api/v2.0" + xmlns:HP-IDM="http://docs.openstack.org/identity/api/ext/HP-IDM/v1.0" + xmlns:capi="http://docs.openstack.org/common/api/v1.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"> - - + + @@ -35,7 +35,7 @@ You need a valid admin token for access. - + @@ -50,7 +50,6 @@ - @@ -89,15 +88,15 @@ - - - - + + + + - - - - + + + + &commonFaults; &getFaults; diff --git a/openstack-identity-api/src/docbkx/HP-IDM/HP-IDM-admin.wadl~ b/openstack-identity-api/src/docbkx/HP-IDM/HP-IDM-admin.wadl~ new file mode 100644 index 00000000..cea5d3c1 --- /dev/null +++ b/openstack-identity-api/src/docbkx/HP-IDM/HP-IDM-admin.wadl~ @@ -0,0 +1,149 @@ + + + + + + + + + + %common; +]> + + + + + + + + + + + + + + + + + + + You need a valid admin token for access. + + + + + + + + + + + + + + + + + + +

+ Check that a token is valid and that it belongs to a supplied tenant + and services and return the permissions relevant to a particular client. +

+

+ Valid tokens will exist in the + /tokens/{tokenId} path and invalid + tokens will not. In other words, a user should expect an + itemNotFound (404) fault for an + invalid token. +

+

+ If 'HP-IDM-serviceId' is provided, it must be a comma-separated string of + service IDs. If any of the service IDs is invalid or if there are no + roles associated with the service IDs, a user should expect a 401. +

+
+ + + +

+ Validates a token has the supplied tenant in scope. +

+
+ + + +

+ If provided, filter the roles to be returned by the given service IDs. +

+
+ +
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

+ Check that a token is valid and that it belongs to a particular tenant and services + (For performance). +

+

+ Valid tokens will exist in the + /tokens/{tokenId} path and invalid + tokens will not. In other words, a user should expect an + itemNotFound (404) fault for an + invalid token. +

+

+ If `belongsTo` is provided, validates that a token has a specific tenant in scope. +

+

+ If 'HP-IDM-serviceId' is provided, it must be a comma-separated string of + service IDs. If any of the service ID is invalid or if there are no + roles associated with the service IDs, a user should expect a 401. +

+

+ No response body is returned for this method. +

+
+ + + +

+ Validates a token has the supplied tenant in scope. (for performance). +

+
+ + + +

+ Check the roles against the given service IDs. +

+
+ +
+ + &commonFaults; + &getFaults; +
+
diff --git a/openstack-identity-api/src/docbkx/HP-IDM/HP-IDM.xml b/openstack-identity-api/src/docbkx/HP-IDM/HP-IDM.xml index 4edbc9a7..f7371755 100644 --- a/openstack-identity-api/src/docbkx/HP-IDM/HP-IDM.xml +++ b/openstack-identity-api/src/docbkx/HP-IDM/HP-IDM.xml @@ -130,8 +130,8 @@ Doc Link (PDF) - - https://github.com/openstack/keystone/raw/master/content/admin/HP-IDM-admin-devguide.pdf + + http://docs.openstack.org/api/openstack-identity/ext/admin/HP-IDM-admin-devguide.pdf @@ -140,8 +140,8 @@ Doc Link (WADL) - - https://raw.github.com/openstack/keystone/master/keystone/content/admin/HP-IDM-admin.wadl + + http://docs.openstack.org/api/openstack-identity/ext/admin/HP-IDM-admin.wadl @@ -186,7 +186,7 @@ Extension Query Response: JSON -
+
Document Change History The most recent changes to this document are described @@ -199,7 +199,7 @@
- + Summary of Changes None.
-
+
New Faults None.
-
+
New Resources None.
-
+
New States + + + + + + + + +%common; +]> + + + + + + + + + + + + + + + + + You need a valid admin token for access. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+ Creates a tenant. +

+

This call creates a tenant.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; +
+ + + +

+ Updates a tenant. +

+

This call updates a tenant.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; + &postPutFaults; +
+ + + +

+ Deletes a tenant. +

+

This call deletes a tenant.

+
+ + &commonFaults; + &getFaults; +
+ + + +

Lists all the users for a tenant.

+

Lists all the users for a tenant.

+ +
+ + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

Adds a specific role to a user for a tenant.

+
+ + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Deletes a specific role from a user for a tenant.

+
+ + &commonFaults; + &getFaults; +
+ + + + +

List users.

+ +
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + + +

Adds a user.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; + &postPutFaults; +
+ + + +

Update a user.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Delete a user.

+
+ + &commonFaults; + &getFaults; +
+ + + +

Enable user.

+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + + +

Adds a specific global role to a user.

+
+ + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Deletes a specific global role from a user.

+
+ + &commonFaults; + &getFaults; +
+ + + + + +

Adds a credential to a user.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

List credentials.

+ +
+ + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

List credentials by type.

+ +
+ + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

Update credentials.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Delete User credentials.

+
+ + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Get user credentials.

+ +
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + + +

List roles.

+ +
+ + + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

Add a Role.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Get a role by Name.

+
+ + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + + +

Get a role.

+
+ + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Delete a role.

+
+ + &commonFaults; + &getFaults; +
+ + + + +

List services.

+
+ + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

Get a service by name.

+
+ + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

Get a service.

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

Add a service.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + +

Delete a service.

+
+ + &commonFaults; + &getFaults; +
+
diff --git a/openstack-identity-api/src/docbkx/OS-KSCATALOG-admin-devguide.xml b/openstack-identity-api/src/docbkx/OS-KS/OS-KSCATALOG-admin-devguide.xml similarity index 91% rename from openstack-identity-api/src/docbkx/OS-KSCATALOG-admin-devguide.xml rename to openstack-identity-api/src/docbkx/OS-KS/OS-KSCATALOG-admin-devguide.xml index e24849bd..016f781b 100644 --- a/openstack-identity-api/src/docbkx/OS-KSCATALOG-admin-devguide.xml +++ b/openstack-identity-api/src/docbkx/OS-KS/OS-KSCATALOG-admin-devguide.xml @@ -34,9 +34,9 @@ format="SVG" scale="60"/> '> - - - + + + ]> Extension Operations - + diff --git a/openstack-identity-api/src/docbkx/OS-KS/OS-KSCATALOG-admin.wadl b/openstack-identity-api/src/docbkx/OS-KS/OS-KSCATALOG-admin.wadl new file mode 100644 index 00000000..45f29381 --- /dev/null +++ b/openstack-identity-api/src/docbkx/OS-KS/OS-KSCATALOG-admin.wadl @@ -0,0 +1,295 @@ + + + + + + + + + + +%common; +]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

List Endpoint Templates.

+ +
+ + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

Get Endpoint Template.

+ +
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

Add Endpoint Template.

+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; + &postPutFaults; +
+ + + +

Update Endpoint Template.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; + &postPutFaults; +
+ + + +

Delete a Endpoint Template.

+
+ + &commonFaults; + &getFaults; +
+ + + +

Add Endpoint to a tenant.

+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; + &postPutFaults; +
+ + + +

List Endpoints of a Tenant.

+ +
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

Get Endpoint of a Tenant.

+ +
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

Delete a Endpoint from a Tenant.

+
+ + &commonFaults; + &getFaults; +
+
diff --git a/openstack-identity-api/src/docbkx/OS-KSEC2-admin-devguide.xml b/openstack-identity-api/src/docbkx/OS-KS/OS-KSEC2-admin-devguide.xml similarity index 89% rename from openstack-identity-api/src/docbkx/OS-KSEC2-admin-devguide.xml rename to openstack-identity-api/src/docbkx/OS-KS/OS-KSEC2-admin-devguide.xml index efc878da..c3f06491 100644 --- a/openstack-identity-api/src/docbkx/OS-KSEC2-admin-devguide.xml +++ b/openstack-identity-api/src/docbkx/OS-KS/OS-KSEC2-admin-devguide.xml @@ -34,13 +34,13 @@ format="SVG" scale="60"/> '> - - - - - - - + + + + + + + ]> + + + + + + + + + +%common; +]> + + + + + + + + + + + + + + + + + + You need a valid admin token for access. + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Adds a credential to a user.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

List credentials.

+
+ + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

List credentials by type.

+
+ + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

Update credentials.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Delete User credentials.

+
+ + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Get user credentials.

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+
diff --git a/openstack-identity-api/src/docbkx/OS-KSEC2-service-devguide.xml b/openstack-identity-api/src/docbkx/OS-KS/OS-KSEC2-service-devguide.xml similarity index 88% rename from openstack-identity-api/src/docbkx/OS-KSEC2-service-devguide.xml rename to openstack-identity-api/src/docbkx/OS-KS/OS-KSEC2-service-devguide.xml index 7d7a9ac5..2d536f69 100644 --- a/openstack-identity-api/src/docbkx/OS-KSEC2-service-devguide.xml +++ b/openstack-identity-api/src/docbkx/OS-KS/OS-KSEC2-service-devguide.xml @@ -34,14 +34,14 @@ '> - - - - - - - - + + + + + + + + ]> diff --git a/openstack-identity-api/src/docbkx/OS-KS/OS-KSS3-admin.wadl b/openstack-identity-api/src/docbkx/OS-KS/OS-KSS3-admin.wadl new file mode 100644 index 00000000..a43045ae --- /dev/null +++ b/openstack-identity-api/src/docbkx/OS-KS/OS-KSS3-admin.wadl @@ -0,0 +1,212 @@ + + + + + + + + + + +%common; +]> + + + + + + + + + + + + + + + + + You need a valid admin token for access. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Adds a credential to a user.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

List credentials.

+
+ + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

List credentials by type.

+
+ + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

Update credentials.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Delete User credentials.

+
+ + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Get user credentials.

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+
diff --git a/openstack-identity-api/src/docbkx/OS-KS/OS-KSVALIDATE-admin.wadl b/openstack-identity-api/src/docbkx/OS-KS/OS-KSVALIDATE-admin.wadl new file mode 100644 index 00000000..302a13af --- /dev/null +++ b/openstack-identity-api/src/docbkx/OS-KS/OS-KSVALIDATE-admin.wadl @@ -0,0 +1,192 @@ + + + + + + + + + + %common; +]> + + + + + + + + + + + + + + + + + + + + You need a valid admin token for access. + + + You need to supply a token to validate. + + + + + + + + + + You need a valid admin token for access. + + + You need to supply a token to validate. + + + + + + + + + + + + + + + + + +

+ Check that a token is valid and that it belongs to a supplied tenant + and services and return the permissions relevant to a particular client. +

+

+ Behaviour is similar to /tokens/{tokenId}. In + other words, a user should expect an + itemNotFound (404) fault for an + invalid token. +

+

+ 'X-Subject-Token' is encrypted, but can still be used for + caching. This extension will basically decrypt this header and + internally call Keystone's normal validation, passing along all + headers and query parameters. It should therefore support + all exsting calls on /tokens/{tokenId}, including + extensions such as HP-IDM. +

+
+ + + +

+ Validates a token has the supplied tenant in scope. +

+
+ + + +

+ If provided, filter the roles to be returned by the given service IDs. +

+
+ +
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

+ Check that a token is valid and that it belongs to a particular + tenant and services (For performance). +

+

+ Behaviour is similar to /tokens/{tokenId}. In + other words, a user should expect an + itemNotFound (404) fault for an + invalid token. +

+

+ 'X-Subject-Token' is encrypted, but can still be used for + caching. This extension will basically decrypt this header and + internally call Keystone's normal validation, passing along all + headers and query parameters. It should therefore support + all exsting calls on /tokens/{tokenId}, including + extensions such as HP-IDM. +

+

+ No response body is returned for this method. +

+
+ + + +

+ Validates a token has the supplied tenant in scope. (for performance). +

+
+ + + +

+ Check the roles against the given service IDs. +

+
+ +
+ + &commonFaults; + &getFaults; +
+ + +

+ Returns a list of endpoints associated with a specific token. +

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ +
diff --git a/openstack-identity-api/src/docbkx/RAX-KS/RAX-KSGRP-admin.wadl b/openstack-identity-api/src/docbkx/RAX-KS/RAX-KSGRP-admin.wadl new file mode 100644 index 00000000..f5306186 --- /dev/null +++ b/openstack-identity-api/src/docbkx/RAX-KS/RAX-KSGRP-admin.wadl @@ -0,0 +1,73 @@ + + + + + + + + + + +%common; +]> + + + + + + + + + + + + + + + + + You need a valid admin token for access. + + + + + + + + + + + + + + +

List all the groups for a user.

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+
diff --git a/openstack-identity-api/src/docbkx/RAX-KSGRP-service-devguide.xml b/openstack-identity-api/src/docbkx/RAX-KS/RAX-KSGRP-service-devguide.xml similarity index 84% rename from openstack-identity-api/src/docbkx/RAX-KSGRP-service-devguide.xml rename to openstack-identity-api/src/docbkx/RAX-KS/RAX-KSGRP-service-devguide.xml index edf4668b..c00c0174 100644 --- a/openstack-identity-api/src/docbkx/RAX-KSGRP-service-devguide.xml +++ b/openstack-identity-api/src/docbkx/RAX-KS/RAX-KSGRP-service-devguide.xml @@ -34,20 +34,20 @@ '> - - + + - - - - + + + + - - - - - - + + + + + + ]> @@ -279,11 +279,11 @@ XML Auth Response that contains Groups - Yet To Be added + JSON Auth Response that contains Groups - Yet To Be added +
diff --git a/openstack-identity-api/src/docbkx/RAX-KSKEY-admin-devguide.xml b/openstack-identity-api/src/docbkx/RAX-KS/RAX-KSKEY-admin-devguide.xml similarity index 86% rename from openstack-identity-api/src/docbkx/RAX-KSKEY-admin-devguide.xml rename to openstack-identity-api/src/docbkx/RAX-KS/RAX-KSKEY-admin-devguide.xml index adb53867..8831dec9 100644 --- a/openstack-identity-api/src/docbkx/RAX-KSKEY-admin-devguide.xml +++ b/openstack-identity-api/src/docbkx/RAX-KS/RAX-KSKEY-admin-devguide.xml @@ -34,16 +34,15 @@ '> - - - - - - - - - - + + + + + + + + + ]> This document is intended for service developers interested - in using the Rackspace API Key Authentication Admin Extension along with the + in using the Rackspace API Key Authentication Admin Extension along with the Keystone - OpenStack Identity (API). @@ -193,7 +192,7 @@ Summary of Changes - The Rackspace API Key Authentication Admin Extension allows crud/listing operations on apikeyCredentials. + The Rackspace API Key Authentication Admin Extension allows crud/listing operations on apikeyCredentials.
New Headers @@ -217,7 +216,7 @@ apikeyCredentials This extension allows authentication calls to accept new type of credentials apikeyCredentials. These are additional type of credentials defined to support rackspace style authentication. - Examples of apikeyCredentials are illustrated below + Examples of apikeyCredentials are illustrated below apikeyCredentials XML @@ -228,7 +227,7 @@
-
+
@@ -265,7 +264,7 @@ -
+ diff --git a/openstack-identity-api/src/docbkx/RAX-KS/RAX-KSKEY-admin.wadl b/openstack-identity-api/src/docbkx/RAX-KS/RAX-KSKEY-admin.wadl new file mode 100644 index 00000000..aaafebd3 --- /dev/null +++ b/openstack-identity-api/src/docbkx/RAX-KS/RAX-KSKEY-admin.wadl @@ -0,0 +1,211 @@ + + + + + + + + + + +%common; +]> + + + + + + + + + + + + + + + + + You need a valid admin token for access. + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Adds a credential to a user.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

List credentials.

+
+ + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

List credentials by type.

+ +
+ + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

Update credentials.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Delete User credentials.

+
+ + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Get user credentials.

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+
diff --git a/openstack-identity-api/src/docbkx/RAX-KSKEY-service-devguide.xml b/openstack-identity-api/src/docbkx/RAX-KS/RAX-KSKEY-service-devguide.xml similarity index 88% rename from openstack-identity-api/src/docbkx/RAX-KSKEY-service-devguide.xml rename to openstack-identity-api/src/docbkx/RAX-KS/RAX-KSKEY-service-devguide.xml index 58284984..4ec74e5c 100644 --- a/openstack-identity-api/src/docbkx/RAX-KSKEY-service-devguide.xml +++ b/openstack-identity-api/src/docbkx/RAX-KS/RAX-KSKEY-service-devguide.xml @@ -34,14 +34,14 @@ '> - - - - - - - - + + + + + + + + ]> diff --git a/openstack-identity-api/src/docbkx/RAX-KS/RAX-KSQA-admin.wadl b/openstack-identity-api/src/docbkx/RAX-KS/RAX-KSQA-admin.wadl new file mode 100644 index 00000000..f11f9221 --- /dev/null +++ b/openstack-identity-api/src/docbkx/RAX-KS/RAX-KSQA-admin.wadl @@ -0,0 +1,106 @@ + + + + + + + + + + +%common; +]> + + + + + + + + + + + + + + + + You need a valid admin token for access. + + + + + + + + + + + + + + + + + +

Gets a User secret Question and Answer.

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

Updates a User secret Question and Answer.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; +
+
diff --git a/openstack-identity-api/src/docbkx/admin/OS-KSADM-admin.wadl b/openstack-identity-api/src/docbkx/admin/OS-KSADM-admin.wadl new file mode 100644 index 00000000..8ee61a00 --- /dev/null +++ b/openstack-identity-api/src/docbkx/admin/OS-KSADM-admin.wadl @@ -0,0 +1,793 @@ + + + + + + + + + + +%common; +]> + + + + + + + + + + + + + + + + + You need a valid admin token for access. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+ Creates a tenant. +

+

This call creates a tenant.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; +
+ + + +

+ Updates a tenant. +

+

This call updates a tenant.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; + &postPutFaults; +
+ + + +

+ Deletes a tenant. +

+

This call deletes a tenant.

+
+ + &commonFaults; + &getFaults; +
+ + + +

Lists all the users for a tenant.

+

Lists all the users for a tenant.

+ +
+ + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

Adds a specific role to a user for a tenant.

+
+ + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Deletes a specific role from a user for a tenant.

+
+ + &commonFaults; + &getFaults; +
+ + + + +

List users.

+ +
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + + +

Adds a user.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; + &postPutFaults; +
+ + + +

Update a user.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Delete a user.

+
+ + &commonFaults; + &getFaults; +
+ + + +

Enable user.

+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + + +

Adds a specific global role to a user.

+
+ + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Deletes a specific global role from a user.

+
+ + &commonFaults; + &getFaults; +
+ + + + + +

Adds a credential to a user.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

List credentials.

+ +
+ + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

List credentials by type.

+ +
+ + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

Update credentials.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Delete User credentials.

+
+ + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Get user credentials.

+ +
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + + +

List roles.

+ +
+ + + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

Add a Role.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Get a role by Name.

+
+ + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + + +

Get a role.

+
+ + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Delete a role.

+
+ + &commonFaults; + &getFaults; +
+ + + + +

List services.

+
+ + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

Get a service by name.

+
+ + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

Get a service.

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

Add a service.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + +

Delete a service.

+
+ + &commonFaults; + &getFaults; +
+
diff --git a/openstack-identity-api/src/docbkx/admin/OS-KSCATALOG-admin.wadl b/openstack-identity-api/src/docbkx/admin/OS-KSCATALOG-admin.wadl new file mode 100644 index 00000000..29b52502 --- /dev/null +++ b/openstack-identity-api/src/docbkx/admin/OS-KSCATALOG-admin.wadl @@ -0,0 +1,261 @@ + + + + + + + + + + +%common; +]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

List Endpoint Templates.

+ +
+ + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

Get Endpoint Template.

+ +
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

Add Endpoint Template.

+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; + &postPutFaults; +
+ + + +

Delete a Endpoint Template.

+
+ + &commonFaults; + &getFaults; +
+ + + +

Add Endpoint to a tenant.

+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; + &postPutFaults; +
+ + + +

List Endpoints of a Tenant.

+ +
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

Get Endpoint of a Tenant.

+ +
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

Delete a Endpoint from a Tenant.

+
+ + &commonFaults; + &getFaults; +
+
diff --git a/openstack-identity-api/src/docbkx/admin/OS-KSEC2-admin.wadl b/openstack-identity-api/src/docbkx/admin/OS-KSEC2-admin.wadl new file mode 100644 index 00000000..d9724444 --- /dev/null +++ b/openstack-identity-api/src/docbkx/admin/OS-KSEC2-admin.wadl @@ -0,0 +1,212 @@ + + + + + + + + + + +%common; +]> + + + + + + + + + + + + + + + + + You need a valid admin token for access. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Adds a credential to a user.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

List credentials.

+
+ + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

List credentials by type.

+
+ + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

Update credentials.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Delete User credentials.

+
+ + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Get user credentials.

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+
diff --git a/openstack-identity-api/src/docbkx/admin/RAX-KSGRP-admin.wadl b/openstack-identity-api/src/docbkx/admin/RAX-KSGRP-admin.wadl new file mode 100644 index 00000000..01548029 --- /dev/null +++ b/openstack-identity-api/src/docbkx/admin/RAX-KSGRP-admin.wadl @@ -0,0 +1,74 @@ + + + + + + + + + + +%common; +]> + + + + + + + + + + + + + + + + You need a valid admin token for access. + + + + + + + + + + + + + + +

List all the groups for a user.

+ +
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+
+ diff --git a/openstack-identity-api/src/docbkx/admin/RAX-KSKEY-admin.wadl b/openstack-identity-api/src/docbkx/admin/RAX-KSKEY-admin.wadl new file mode 100644 index 00000000..3bebb1b3 --- /dev/null +++ b/openstack-identity-api/src/docbkx/admin/RAX-KSKEY-admin.wadl @@ -0,0 +1,212 @@ + + + + + + + + + + +%common; +]> + + + + + + + + + + + + + + + + + You need a valid admin token for access. + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Adds a credential to a user.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

List credentials.

+
+ + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

List credentials by type.

+ +
+ + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

Update credentials.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Delete User credentials.

+
+ + &commonFaults; + &postPutFaults; + &getFaults; +
+ + + +

Get user credentials.

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+
+ diff --git a/openstack-identity-api/src/docbkx/admin/RAX-KSQA-admin.wadl b/openstack-identity-api/src/docbkx/admin/RAX-KSQA-admin.wadl new file mode 100644 index 00000000..23d201fd --- /dev/null +++ b/openstack-identity-api/src/docbkx/admin/RAX-KSQA-admin.wadl @@ -0,0 +1,106 @@ + + + + + + + + + + +%common; +]> + + + + + + + + + + + + + + + + You need a valid admin token for access. + + + + + + + + + + + + + + + + + +

Gets a User secret Question and Answer.

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

Updates a User secret Question and Answer.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &postPutFaults; +
+
diff --git a/openstack-identity-api/src/docbkx/admin/extensions.json b/openstack-identity-api/src/docbkx/admin/extensions.json new file mode 100644 index 00000000..9e1c96d0 --- /dev/null +++ b/openstack-identity-api/src/docbkx/admin/extensions.json @@ -0,0 +1 @@ +{ "extensions" : { "values" : []}} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/admin/extensions.xml b/openstack-identity-api/src/docbkx/admin/extensions.xml new file mode 100644 index 00000000..ed5ee9c6 --- /dev/null +++ b/openstack-identity-api/src/docbkx/admin/extensions.xml @@ -0,0 +1,5 @@ + + + + diff --git a/openstack-identity-api/src/docbkx/admin/identity-admin.wadl b/openstack-identity-api/src/docbkx/admin/identity-admin.wadl new file mode 100644 index 00000000..a6ded2ac --- /dev/null +++ b/openstack-identity-api/src/docbkx/admin/identity-admin.wadl @@ -0,0 +1,508 @@ + + + + + + + + + + %common; +]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + You need a valid admin token for access. + + + + + + + + + + + + + + You need a valid admin token for access. + + + + + + + + + + + + + + + +

+ You need a valid admin token for access. +

+
+ + + + + + + + + + + + + + + + + +
+
+
+ + + + + + + + + + + +

+ A list of supported extensions. +

+
+ +
+ + + + + + + + + +

+ Returns detailed information about this specific version of the API. +

+
+ + + + + + + + + &commonFaults; + &getFaults; +
+ + + + + +

+ Lists supported extensions. +

+
+ + + + + + + + + + + + &commonFaults; +
+ + +

+ Gets details about a specific extension. +

+
+ + + + + &commonFaults; + &getFaults; +
+ + + + + +

+ Authenticate to generate a token. +

+

+ This call will return a token if successful. Each ReST request against other services (or other + calls on Keystone such as the GET /tenants call) + requires the inclusion of a specific authorization token HTTP x-header, defined as X-Auth-Token. + Clients obtain + this token, along with the URL to other service APIs, by first authenticating against the + Keystone Service and supplying valid credentials. +

+

+ Client authentication is provided via a ReST interface using the POST method, + with v2.0/tokens supplied as the path. A payload of credentials must be included + in the body. +

+

+ The Keystone Service is a ReSTful web service. It is the entry point to all service APIs. + To access the Keystone Service, you must know URL of the Keystone service. +

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

+ Check that a token is valid and that it belongs to a supplied tenant + and return the permissions relevant to a particular client. +

+

+ Valid tokens will exist in the + /tokens/{tokenId} path and invalid + tokens will not. In other words, a user should expect an + itemNotFound (404) fault for an + invalid token. +

+
+ + + +

+ Validates a token has the supplied tenant in scope. +

+
+ +
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

+ Check that a token is valid and that it belongs to a particular tenant + (For performance). +

+
+ + + +

+ Validates a token has the supplied tenant in scope. (for performance). +

+

+ Valid tokens will exist in the + /tokens/{tokenId} path and invalid + tokens will not. In other words, a user should expect an + itemNotFound (404) fault for an + invalid token. +

+

+ If `belongsTo` is provided, validates that a token has a specific tenant in scope. +

+

+ No response body is returned for this method. +

+
+ +
+ + &commonFaults; + &getFaults; +
+ + + + +

+ Returns detailed information about a specific user, by user name. +

+
+ + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

+ Returns detailed information about a specific user, by user id. +

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

+ Returns global roles for a specific user (excludes tenant roles). +

+

Returns a list of global roles associated with a specific + user (excludes tenant roles).

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + + + +

+ Get a list of tenants. +

+

+ The operation returns a list of tenants which the supplied token provides + access to. This call must be authenticated, so a valid token must + be passed in as a header. +

+ + + + + +
+ + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

+ Returns detailed information about a tenant, by name. +

+
+ + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

+ Returns detailed information about a tenant, by id. +

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

+ Returns a list of endpoints associated with a specific token. +

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

+ Returns roles for a specific user on a specific tenant (excludes global roles). +

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+
diff --git a/openstack-identity-api/src/docbkx/admin/version.json.tpl b/openstack-identity-api/src/docbkx/admin/version.json.tpl new file mode 100644 index 00000000..c7ca3a42 --- /dev/null +++ b/openstack-identity-api/src/docbkx/admin/version.json.tpl @@ -0,0 +1,38 @@ +{ + "version" : { + "id" : "v{{API_VERSION}}", + "status" : "{{API_VERSION_STATUS}}", + "updated" : "{{API_VERSION_DATE}}", + "links": [ + { + "rel" : "self", + "href" : "http://{{HOST}}:{{PORT}}/v{{API_VERSION}}/" + }, + { + "rel" : "describedby", + "type" : "text/html", + "href" : "http://docs.openstack.org/api/openstack-identity-service/{{API_VERSION}}/content/" + }, + { + "rel" : "describedby", + "type" : "application/pdf", + "href" : "http://docs.openstack.org/api/openstack-identity-service/{{API_VERSION}}/identity-dev-guide-{{API_VERSION}}.pdf" + }, + { + "rel" : "describedby", + "type" : "application/vnd.sun.wadl+xml", + "href" : "http://{{HOST}}:{{PORT}}/v2.0/identity-admin.wadl" + } + ], + "media-types": [ + { + "base" : "application/xml", + "type" : "application/vnd.openstack.identity-v{{API_VERSION}}+xml" + }, + { + "base" : "application/json", + "type" : "application/vnd.openstack.identity-v{{API_VERSION}}+json" + } + ] + } +} diff --git a/openstack-identity-api/src/docbkx/admin/version.xml.tpl b/openstack-identity-api/src/docbkx/admin/version.xml.tpl new file mode 100644 index 00000000..5074d146 --- /dev/null +++ b/openstack-identity-api/src/docbkx/admin/version.xml.tpl @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + diff --git a/openstack-identity-api/src/docbkx/client/identity-client-api.xml b/openstack-identity-api/src/docbkx/client/identity-client-api.xml new file mode 100644 index 00000000..b162a5ac --- /dev/null +++ b/openstack-identity-api/src/docbkx/client/identity-client-api.xml @@ -0,0 +1,18 @@ + +
+ Service API (Client Operations) + The operations described in this chapter allow clients tokens + authenticate and get access tokens and service endpoints. The following + calls are core Keystone Service APIs in version 2.0: + + + + + + + + +
diff --git a/openstack-identity-api/src/docbkx/common/common.ent b/openstack-identity-api/src/docbkx/common/common.ent new file mode 100644 index 00000000..b492c5d2 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/common.ent @@ -0,0 +1,56 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + '> + + + + + + '> + + + + + + '> diff --git a/openstack-identity-api/src/docbkx/identity-OS-KSADM-api.xml b/openstack-identity-api/src/docbkx/common/identity-OS-KSADM-api.xml similarity index 74% rename from openstack-identity-api/src/docbkx/identity-OS-KSADM-api.xml rename to openstack-identity-api/src/docbkx/common/identity-OS-KSADM-api.xml index cc6b10bd..1a7f7dbc 100644 --- a/openstack-identity-api/src/docbkx/identity-OS-KSADM-api.xml +++ b/openstack-identity-api/src/docbkx/common/identity-OS-KSADM-api.xml @@ -26,30 +26,30 @@
User Operations - + - + - + - + - + - + - + @@ -61,21 +61,21 @@
Tenant Operations - + - + - + - + - + @@ -85,11 +85,11 @@
Role Operations - + - + @@ -99,11 +99,11 @@
Service Operations - + - + diff --git a/openstack-identity-api/src/docbkx/identity-OS-KSCATALOG-api.xml b/openstack-identity-api/src/docbkx/common/identity-OS-KSCATALOG-api.xml similarity index 84% rename from openstack-identity-api/src/docbkx/identity-OS-KSCATALOG-api.xml rename to openstack-identity-api/src/docbkx/common/identity-OS-KSCATALOG-api.xml index d69bc0a1..9feda477 100644 --- a/openstack-identity-api/src/docbkx/identity-OS-KSCATALOG-api.xml +++ b/openstack-identity-api/src/docbkx/common/identity-OS-KSCATALOG-api.xml @@ -26,11 +26,11 @@
Endpoint Template Operations - + - + @@ -41,11 +41,11 @@
Endpoint Operations - + - + diff --git a/openstack-identity-api/src/docbkx/common/identity-admin.wadl b/openstack-identity-api/src/docbkx/common/identity-admin.wadl new file mode 100644 index 00000000..ed0bedd9 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/identity-admin.wadl @@ -0,0 +1,508 @@ + + + + + + + + + + %common; +]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + You need a valid admin token for access. + + + + + + + + + + + + + + You need a valid admin token for access. + + + + + + + + + + + + + + + +

+ You need a valid admin token for access. +

+
+ + + + + + + + + + + + + + + + + +
+
+
+ + + + + + + + + + + +

+ A list of supported extensions. +

+
+ +
+ + + + + + + + + +

+ Returns detailed information about this specific version of the API. +

+
+ + + + + + + + + &commonFaults; + &getFaults; +
+ + + + + +

+ Lists supported extensions. +

+
+ + + + + + + + + + + + &commonFaults; +
+ + +

+ Gets details about a specific extension. +

+
+ + + + + &commonFaults; + &getFaults; +
+ + + + + +

+ Authenticate to generate a token. +

+

+ This call will return a token if successful. Each ReST request against other services (or other + calls on Keystone such as the GET /tenants call) + requires the inclusion of a specific authorization token HTTP x-header, defined as X-Auth-Token. + Clients obtain + this token, along with the URL to other service APIs, by first authenticating against the + Keystone Service and supplying valid credentials. +

+

+ Client authentication is provided via a ReST interface using the POST method, + with v2.0/tokens supplied as the path. A payload of credentials must be included + in the body. +

+

+ The Keystone Service is a ReSTful web service. It is the entry point to all service APIs. + To access the Keystone Service, you must know URL of the Keystone service. +

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

+ Check that a token is valid and that it belongs to a supplied tenant + and return the permissions relevant to a particular client. +

+

+ Valid tokens will exist in the + /tokens/{tokenId} path and invalid + tokens will not. In other words, a user should expect an + itemNotFound (404) fault for an + invalid token. +

+
+ + + +

+ Validates a token has the supplied tenant in scope. +

+
+ +
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

+ Check that a token is valid and that it belongs to a particular tenant + (For performance). +

+
+ + + +

+ Validates a token has the supplied tenant in scope. (for performance). +

+

+ Valid tokens will exist in the + /tokens/{tokenId} path and invalid + tokens will not. In other words, a user should expect an + itemNotFound (404) fault for an + invalid token. +

+

+ If `belongsTo` is provided, validates that a token has a specific tenant in scope. +

+

+ No response body is returned for this method. +

+
+ +
+ + &commonFaults; + &getFaults; +
+ + + + +

+ Returns detailed information about a specific user, by user name. +

+
+ + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

+ Returns detailed information about a specific user, by user id. +

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

+ Returns global roles for a specific user (excludes tenant roles). +

+

Returns a list of global roles associated with a specific + user (excludes tenant roles).

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + + + +

+ Get a list of tenants. +

+

+ The operation returns a list of tenants which the supplied token provides + access to. This call must be authenticated, so a valid token must + be passed in as a header. +

+ + + + + +
+ + + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

+ Returns detailed information about a tenant, by name. +

+
+ + + + + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

+ Returns detailed information about a tenant, by id. +

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

+ Returns a list of endpoints associated with a specific token. +

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + +

+ Returns roles for a specific user on a specific tenant (excludes global roles). +

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+
diff --git a/openstack-identity-api/src/docbkx/identity-concepts.xml b/openstack-identity-api/src/docbkx/common/identity-concepts.xml similarity index 100% rename from openstack-identity-api/src/docbkx/identity-concepts.xml rename to openstack-identity-api/src/docbkx/common/identity-concepts.xml diff --git a/openstack-identity-api/src/docbkx/identity-dev-guide.xml b/openstack-identity-api/src/docbkx/common/identity-dev-guide.xml similarity index 97% rename from openstack-identity-api/src/docbkx/identity-dev-guide.xml rename to openstack-identity-api/src/docbkx/common/identity-dev-guide.xml index 187ef04f..e8f17d11 100644 --- a/openstack-identity-api/src/docbkx/identity-dev-guide.xml +++ b/openstack-identity-api/src/docbkx/common/identity-dev-guide.xml @@ -40,7 +40,6 @@ API Operations - diff --git a/openstack-identity-api/src/docbkx/identity-general-api-info.xml b/openstack-identity-api/src/docbkx/common/identity-general-api-info.xml similarity index 100% rename from openstack-identity-api/src/docbkx/identity-general-api-info.xml rename to openstack-identity-api/src/docbkx/common/identity-general-api-info.xml diff --git a/openstack-identity-api/src/docbkx/identity-service-api.xml b/openstack-identity-api/src/docbkx/common/identity-service-api.xml similarity index 63% rename from openstack-identity-api/src/docbkx/identity-service-api.xml rename to openstack-identity-api/src/docbkx/common/identity-service-api.xml index ccd5768f..c893ba5d 100644 --- a/openstack-identity-api/src/docbkx/identity-service-api.xml +++ b/openstack-identity-api/src/docbkx/common/identity-service-api.xml @@ -31,47 +31,47 @@ The following calls are core for the Keystone Admin 2.0 APIs: -
+
User Operations - - + + - - + + - - + +
Tenant Operations - - - + + - - + + - - + +
diff --git a/openstack-identity-api/src/docbkx/common/identity.wadl b/openstack-identity-api/src/docbkx/common/identity.wadl new file mode 100644 index 00000000..f7f68f37 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/identity.wadl @@ -0,0 +1,182 @@ + + + + + + + + + + + %common; +]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+ A list of supported extensions. +

+
+ +
+ + + + + + + + + +

+ Returns detailed information about this specific version of the API. +

+
+ + + + + + + + + &commonFaults; + &getFaults; +
+ + + + + +

List all available extensions.

+
+ + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + +

Get details about a specific extension.

+
+ + + + + &commonFaults; + &getFaults; +
+ + + + +

+ Client authentication is provided via a ReST interface using the POST method, + with v2.0/tokens supplied as the path. A payload of credentials must be included + in the body. See supported credentials +

+

+ Each ReST request against the Keystone system requires the inclusion of a + specific authorization token HTTP x-header, defined as X-Auth-Token. Clients obtain + this token, along with the URL to other service APIs, by first authenticating against the + Keystone Service and supplying valid credentials. +

+

+ The Keystone Service is a ReSTful web service. It is the entry point to all service APIs. + To access the Keystone Service, you must know URL of the Keystone service. +

+
+ + + + + + + + + + + + + &commonFaults; + &getFaults; +
+ + + + + +

+ Returns a list of tenants. +

+
+ + + + + + + + + &commonFaults; + &getFaults; +
+
diff --git a/openstack-identity-api/src/docbkx/img/Check_mark_23x20_02.svg b/openstack-identity-api/src/docbkx/common/img/Check_mark_23x20_02.svg similarity index 100% rename from openstack-identity-api/src/docbkx/img/Check_mark_23x20_02.svg rename to openstack-identity-api/src/docbkx/common/img/Check_mark_23x20_02.svg diff --git a/openstack-identity-api/src/docbkx/common/js/shjs/sh_java.js b/openstack-identity-api/src/docbkx/common/js/shjs/sh_java.js new file mode 100644 index 00000000..731fc9f3 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/js/shjs/sh_java.js @@ -0,0 +1,337 @@ +if (! this.sh_languages) { + this.sh_languages = {}; +} +sh_languages['java'] = [ + [ + [ + /\b(?:import|package)\b/g, + 'sh_preproc', + -1 + ], + [ + /\/\/\//g, + 'sh_comment', + 1 + ], + [ + /\/\//g, + 'sh_comment', + 7 + ], + [ + /\/\*\*/g, + 'sh_comment', + 8 + ], + [ + /\/\*/g, + 'sh_comment', + 9 + ], + [ + /\b[+-]?(?:(?:0x[A-Fa-f0-9]+)|(?:(?:[\d]*\.)?[\d]+(?:[eE][+-]?[\d]+)?))u?(?:(?:int(?:8|16|32|64))|L)?\b/g, + 'sh_number', + -1 + ], + [ + /"/g, + 'sh_string', + 10 + ], + [ + /'/g, + 'sh_string', + 11 + ], + [ + /(\b(?:class|interface))([ \t]+)([$A-Za-z0-9_]+)/g, + ['sh_keyword', 'sh_normal', 'sh_classname'], + -1 + ], + [ + /\b(?:abstract|assert|break|case|catch|class|const|continue|default|do|else|extends|false|final|finally|for|goto|if|implements|instanceof|interface|native|new|null|private|protected|public|return|static|strictfp|super|switch|synchronized|throw|throws|true|this|transient|try|volatile|while)\b/g, + 'sh_keyword', + -1 + ], + [ + /\b(?:int|byte|boolean|char|long|float|double|short|void)\b/g, + 'sh_type', + -1 + ], + [ + /~|!|%|\^|\*|\(|\)|-|\+|=|\[|\]|\\|:|;|,|\.|\/|\?|&|<|>|\|/g, + 'sh_symbol', + -1 + ], + [ + /\{|\}/g, + 'sh_cbracket', + -1 + ], + [ + /(?:[A-Za-z]|_)[A-Za-z0-9_]*(?=[ \t]*\()/g, + 'sh_function', + -1 + ], + [ + /([A-Za-z](?:[^`~!@#$%&*()_=+{}|;:",<.>\/?'\\[\]\^\-\s]|[_])*)((?:<.*>)?)(\s+(?=[*&]*[A-Za-z][^`~!@#$%&*()_=+{}|;:",<.>\/?'\\[\]\^\-\s]*\s*[`~!@#$%&*()_=+{}|;:",<.>\/?'\\[\]\^\-\[\]]+))/g, + ['sh_usertype', 'sh_usertype', 'sh_normal'], + -1 + ] + ], + [ + [ + /$/g, + null, + -2 + ], + [ + /(?:?)|(?:?)/g, + 'sh_url', + -1 + ], + [ + /<\?xml/g, + 'sh_preproc', + 2, + 1 + ], + [ + //g, + 'sh_keyword', + -1 + ], + [ + /<(?:\/)?[A-Za-z](?:[A-Za-z0-9_:.-]*)/g, + 'sh_keyword', + 6, + 1 + ], + [ + /&(?:[A-Za-z0-9]+);/g, + 'sh_preproc', + -1 + ], + [ + /<(?:\/)?[A-Za-z][A-Za-z0-9]*(?:\/)?>/g, + 'sh_keyword', + -1 + ], + [ + /<(?:\/)?[A-Za-z][A-Za-z0-9]*/g, + 'sh_keyword', + 6, + 1 + ], + [ + /@[A-Za-z]+/g, + 'sh_type', + -1 + ], + [ + /(?:TODO|FIXME|BUG)(?:[:]?)/g, + 'sh_todo', + -1 + ] + ], + [ + [ + /\?>/g, + 'sh_preproc', + -2 + ], + [ + /([^=" \t>]+)([ \t]*)(=?)/g, + ['sh_type', 'sh_normal', 'sh_symbol'], + -1 + ], + [ + /"/g, + 'sh_string', + 3 + ] + ], + [ + [ + /\\(?:\\|")/g, + null, + -1 + ], + [ + /"/g, + 'sh_string', + -2 + ] + ], + [ + [ + />/g, + 'sh_preproc', + -2 + ], + [ + /([^=" \t>]+)([ \t]*)(=?)/g, + ['sh_type', 'sh_normal', 'sh_symbol'], + -1 + ], + [ + /"/g, + 'sh_string', + 3 + ] + ], + [ + [ + /-->/g, + 'sh_comment', + -2 + ], + [ + //g, + 'sh_comment', + -2 + ], + [ + //g, + 'sh_comment', + -2 + ], + [ + / array of links + // + // possible types include: import, include, element, + // attribute, complextype, simpleType + // + // each link contains the following properties: + // name : the name of the link + // href : the link itself + // title : a description of the link + links : new Object(), + + // + // A single link that points to the schema index document. + // + index : null, + + // + // Our initialization function + // + _init : function() { + // + // Load the menu... + // + var controllerDiv = document.getElementById("Controller"); + var mainMenu = this._menuMarkup("mainmenu"); + + for (var linkType in this.links) + { + var subItem = this._menuItemMarkup(mainMenu, linkType, "#", null); + var subMenu = this._menuMarkup (linkType+"_subMenu"); + + var items = this.links[linkType]; + for (var i=0;i Array of sample ids. + // + samples : new Object(), + + // + // An array of code data.. + // + // Code data is defined as an object with the following + // properties: + // + // type: The mimetype of the code...href: The location of the code + // or null if it's inline + // + // id: The id of the pre that contains the code. + // + // The initial object is the source code for the current document. + // + codes : new Array({ + id : "SrcContentCode", + type : "application/xml", + href : (function() { + var ret = location.href; + if (location.hash && (location.hash.length != 0)) + { + ret = ret.replace (location.hash, ""); + } + return ret; + })() + }), + + // + // Sets up the manager, begins the loading process... + // + _init : function() { + // + // Setup an array to hold data items to load, this is used by + // the loadSample method. + // + this._toLoad = new Array(); + + for (var i=0;i -1) && + (ieVersion < 8)) + { + code = trc.util.text.unix2dos (code); + } + + var pre = document.getElementById(codeData.id); + var preNodes = pre.childNodes; + // + // Remove placeholder data... + // + while (preNodes.length != 0) + { + pre.removeChild (preNodes[0]); + } + + // + // Set the correct class type... + // + switch (codeData.type) + { + /* + Javascript mimetypes + */ + case 'application/json': + case 'application/javascript': + case 'application/x-javascript': + case 'application/ecmascript': + case 'text/ecmascript': + case 'text/javascript': + trc.util.dom.setClassName (pre, "sh_javascript"); + break; + /* + Not real mimetypes but this is what we'll use for Java. + */ + case 'application/java': + case 'text/java': + trc.util.dom.setClassName (pre, "sh_java"); + break; + default: + trc.util.dom.setClassName (pre, "sh_xml"); + break; + } + + // + // Add new code... + // + pre.appendChild (document.createTextNode (code)); + }, + + // + // Retrives source code text + // + _getCodeText : function (codeData /* Info for the code to get*/) + { + var pre = document.getElementById(codeData.id); + pre.normalize(); + // + // Should be a single text node after pre... + // + return pre.firstChild.nodeValue; + }, + + + // + // Normalizes text by ensuring that top, bottom, right indent + // levels are equal for all samples. + // + _normalizeCodeText : function (top, /* integer, top indent in lines */ + bottom, /* integer, bottom indent in lines */ + right /* integer, right indent in spaces */ + ) + { + for (var i=0;i -1) && + (ieVersion < 7)) + { + element.className = name; + } + else + { + element.setAttribute ("class",name); + } + } +}; + +trc.util.text = { + // + // Useful RegExps + // + blank : new RegExp ("^\\s*$"), /* A blank string */ + indent : new RegExp ("^\\s+"), /* Line indent */ + lines : new RegExp ("$","m"), /* All lines */ + linechars : new RegExp ("(\n|\r)"), /* EOL line characters */ + tabs : new RegExp ("\t","g"), /* All tabs */ + + // + // We need this because microsoft browsers before IE 7, connot + // display pre-formatted text correctly win unix style line + // endings. + // + unix2dos : function(txt /* String */) { + //if already DOS... + if (txt.search(/\r\n/) != -1) + { + return txt; + } + return txt.replace (/\n/g, "\r\n"); + }, + + // + // Useful to normalize text. + // + dos2unix : function(txt /* String */) { + //if already unix... + if (txt.search(/\r\n/) == -1) + { + return txt; + } + + return txt.replace(/\r/g, ""); + }, + + // + // Create a string with a character repeated x times. + // + repString : function (length, /* integer, size of the string to create */ + ch /* string, The character to set the string to */ + ) + { + var ret = new String(); + for (var i=0;idep. + // + _deps : new Object(), + + // + // An array of callback functions, these should be called when all + // dependecies are loaded. + // + _callbacks : new Array(), + + // + // The init function simply calls the YUI loader... + // + _init : function() { + var yuiUtil = this; + + // + // It takes safari a while to load the YUI Loader if it hasn't + // loaded yet keep trying at 1/4 second intervals + // + if (!window.YAHOO) + { + window.setTimeout (function() { + yuiUtil._init(); + }, 250); + return; + } + + // + // Collect requirements... + // + var required = new Array(); + for (var req in this._deps) + { + required.push (req); + } + + // + // Load YUI dependecies... + // + var loader = new YAHOO.util.YUILoader({ + require: required, + loadOptional: true, + filter: "RAW", + onSuccess: function() { + yuiUtil._depsLoaded(); + }, + timeout: 10000, + combine: true + }); + loader.insert(); + }, + + // + // Called after all dependecies have been loaded + // + _depsLoaded : function() { + // + // Dependecies are loaded let everyone know. + // + for (var i=0;i + + A Description of the group + + diff --git a/openstack-identity-api/src/docbkx/common/samples/RAX-KSQA-secretQA.json b/openstack-identity-api/src/docbkx/common/samples/RAX-KSQA-secretQA.json new file mode 100644 index 00000000..9e003c8b --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/RAX-KSQA-secretQA.json @@ -0,0 +1,6 @@ +{ + "RAX-KSQA:secretQA":{ + "question":"What is the color of my eyes?", + "answer":"Leonardo Da Vinci" + } +} diff --git a/openstack-identity-api/src/docbkx/common/samples/RAX-KSQA-secretQA.xml b/openstack-identity-api/src/docbkx/common/samples/RAX-KSQA-secretQA.xml new file mode 100644 index 00000000..c6570af6 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/RAX-KSQA-secretQA.xml @@ -0,0 +1,7 @@ + + + + + diff --git a/openstack-identity-api/src/docbkx/common/samples/apiKeyCredentials.json b/openstack-identity-api/src/docbkx/common/samples/apiKeyCredentials.json new file mode 100644 index 00000000..1289d520 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/apiKeyCredentials.json @@ -0,0 +1,6 @@ +{ + "RAX-KSKEY:apiKeyCredentials":{ + "username":"test_user", + "apiKey":"aaaaa-bbbbb-ccccc-12345678" + } +} diff --git a/openstack-identity-api/src/docbkx/common/samples/apiKeyCredentials.xml b/openstack-identity-api/src/docbkx/common/samples/apiKeyCredentials.xml new file mode 100644 index 00000000..7a4b0fdb --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/apiKeyCredentials.xml @@ -0,0 +1,6 @@ + + + diff --git a/openstack-identity-api/src/docbkx/common/samples/auth.json b/openstack-identity-api/src/docbkx/common/samples/auth.json new file mode 100644 index 00000000..eaba9310 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/auth.json @@ -0,0 +1,87 @@ +{ + "access":{ + "token":{ + "id":"ab48a9efdfedb23ty3494", + "expires":"2010-11-01T03:32:15-05:00", + "tenant":{ + "id": "t1000", + "name": "My Project" + } + }, + "user":{ + "id":"u123", + "name":"jqsmith", + "roles":[{ + "id":"100", + "name":"compute:admin" + }, + { + "id":"101", + "name":"object-store:admin", + "tenantId":"t1000" + } + ], + "roles_links":[] + }, + "serviceCatalog":[{ + "name":"Cloud Servers", + "type":"compute", + "endpoints":[{ + "tenantId":"t1000", + "publicURL":"https://compute.north.host.com/v1/t1000", + "internalURL":"https://compute.north.internal/v1/t1000", + "region":"North", + "versionId":"1", + "versionInfo":"https://compute.north.host.com/v1/", + "versionList":"https://compute.north.host.com/" + }, + { + "tenantId":"t1000", + "publicURL":"https://compute.north.host.com/v1.1/t1000", + "internalURL":"https://compute.north.internal/v1.1/t1000", + "region":"North", + "versionId":"1.1", + "versionInfo":"https://compute.north.host.com/v1.1/", + "versionList":"https://compute.north.host.com/" + } + ], + "endpoints_links":[] + }, + { + "name":"Cloud Files", + "type":"object-store", + "endpoints":[{ + "tenantId":"t1000", + "publicURL":"https://storage.north.host.com/v1/t1000", + "internalURL":"https://storage.north.internal/v1/t1000", + "region":"North", + "versionId":"1", + "versionInfo":"https://storage.north.host.com/v1/", + "versionList":"https://storage.north.host.com/" + }, + { + "tenantId":"t1000", + "publicURL":"https://storage.south.host.com/v1/t1000", + "internalURL":"https://storage.south.internal/v1/t1000", + "region":"South", + "versionId":"1", + "versionInfo":"https://storage.south.host.com/v1/", + "versionList":"https://storage.south.host.com/" + } + ] + }, + { + "name":"DNS-as-a-Service", + "type":"dnsextension:dns", + "endpoints":[{ + "tenantId":"t1000", + "publicURL":"https://dns.host.com/v2.0/t1000", + "versionId":"2.0", + "versionInfo":"https://dns.host.com/v2.0/", + "versionList":"https://dns.host.com/" + } + ] + } + ] + } +} diff --git a/openstack-identity-api/src/docbkx/common/samples/auth.xml b/openstack-identity-api/src/docbkx/common/samples/auth.xml new file mode 100644 index 00000000..80574cef --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/auth.xml @@ -0,0 +1,70 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/openstack-identity-api/src/docbkx/common/samples/auth_credentials-OS-KSEC2.json b/openstack-identity-api/src/docbkx/common/samples/auth_credentials-OS-KSEC2.json new file mode 100644 index 00000000..7767c06b --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/auth_credentials-OS-KSEC2.json @@ -0,0 +1,10 @@ +{ + "auth":{ + "OS-KSEC2-ec2Credentials":{ + "username":"test_user", + "secret":"aaaaa", + "signature":"bbb" + }, + "tenantId":"77654" + } +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/samples/auth_credentials-OS-EC2.xml b/openstack-identity-api/src/docbkx/common/samples/auth_credentials-OS-KSEC2.xml similarity index 59% rename from openstack-identity-api/src/docbkx/samples/auth_credentials-OS-EC2.xml rename to openstack-identity-api/src/docbkx/common/samples/auth_credentials-OS-KSEC2.xml index b3c6abb0..ec4f3314 100644 --- a/openstack-identity-api/src/docbkx/samples/auth_credentials-OS-EC2.xml +++ b/openstack-identity-api/src/docbkx/common/samples/auth_credentials-OS-KSEC2.xml @@ -3,9 +3,8 @@ xmlns="http://docs.openstack.org/identity/api/v2.0" tenantId="1234"> - \ No newline at end of file + signature="bbbbb"/> + diff --git a/openstack-identity-api/src/docbkx/common/samples/auth_credentials-RAX-KSKEY.json b/openstack-identity-api/src/docbkx/common/samples/auth_credentials-RAX-KSKEY.json new file mode 100644 index 00000000..7b00db13 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/auth_credentials-RAX-KSKEY.json @@ -0,0 +1,9 @@ +{ + "auth":{ + "RAX-KSKEY:apiKeyCredentials":{ + "username":"test_user", + "apiKey":"aaaaa-bbbbb-ccccc-12345678" + }, + "tenantId":"1234" + } +} diff --git a/openstack-identity-api/src/docbkx/common/samples/auth_credentials-RAX-KSKEY.xml b/openstack-identity-api/src/docbkx/common/samples/auth_credentials-RAX-KSKEY.xml new file mode 100644 index 00000000..a4284f95 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/auth_credentials-RAX-KSKEY.xml @@ -0,0 +1,7 @@ + + + + diff --git a/openstack-identity-api/src/docbkx/common/samples/auth_credentials.json b/openstack-identity-api/src/docbkx/common/samples/auth_credentials.json new file mode 100644 index 00000000..d269baff --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/auth_credentials.json @@ -0,0 +1,9 @@ +{ + "auth":{ + "passwordCredentials":{ + "username":"test_user", + "password":"mypass" + }, + "tenantName":"customer-x" + } +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/common/samples/auth_credentials.xml b/openstack-identity-api/src/docbkx/common/samples/auth_credentials.xml new file mode 100644 index 00000000..6621b83a --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/auth_credentials.xml @@ -0,0 +1,6 @@ + + + + diff --git a/openstack-identity-api/src/docbkx/common/samples/auth_with_token.json b/openstack-identity-api/src/docbkx/common/samples/auth_with_token.json new file mode 100644 index 00000000..efcf2622 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/auth_with_token.json @@ -0,0 +1,8 @@ +{ + "auth": { + "tenantName": "customer-x", + "token": { + "id": "abcdefghijk" + } + } +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/common/samples/auth_with_token.xml b/openstack-identity-api/src/docbkx/common/samples/auth_with_token.xml new file mode 100644 index 00000000..5190f62a --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/auth_with_token.xml @@ -0,0 +1,7 @@ + + + + + diff --git a/openstack-identity-api/src/docbkx/common/samples/authwithgroups.json b/openstack-identity-api/src/docbkx/common/samples/authwithgroups.json new file mode 100644 index 00000000..527c639f --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/authwithgroups.json @@ -0,0 +1,87 @@ +{ + "access":{ + "token":{ + "id":"asdasdasd-adsasdads-asdasdasd-adsadsasd", + "expires":"2010-11-01T03:32:15-05:00" + }, + "user":{ + "id":"123", + "name":"testName", + "roles":[{ + "id":"234", + "name":"compute:admin" + }, + { + "id":"235", + "name":"object-store:admin", + "tenantId":"1" + } + ], + "roles_links":[], + "RAX-KSGRP:groups":[{ + "id":"test_global_group_add", + "description":"A description ..." + } + ], + "RAX-KSGRP:groups_links":[] + }, + "serviceCatalog":[{ + "name":"Cloud Servers", + "type":"compute", + "endpoints":[{ + "publicURL":"https://compute.north.host/v1/1234", + "internalURL":"https://compute.north.host/v1/1234", + "region":"North", + "tenantId":"1234", + "versionId":"1.0", + "versionInfo":"https://compute.north.host/v1.0/", + "versionList":"https://compute.north.host/" + }, + { + "publicURL":"https://compute.north.host/v1.1/3456", + "internalURL":"https://compute.north.host/v1.1/3456", + "region":"North", + "tenantId":"3456", + "versionId":"1.1", + "versionInfo":"https://compute.north.host/v1.1/", + "versionList":"https://compute.north.host/" + } + ], + "endpoints_links":[] + }, + { + "name":"Cloud Files", + "type":"object-store", + "endpoints":[{ + "publicURL":"https://compute.north.host/v1/blah-blah", + "internalURL":"https://compute.north.host/v1/blah-blah", + "region":"South", + "tenantId":"1234", + "versionId":"1.0", + "versionInfo":"uri", + "versionList":"uri" + }, + { + "publicURL":"https://compute.north.host/v1.1/blah-blah", + "internalURL":"https://compute.north.host/v1.1/blah-blah", + "region":"South", + "tenantId":"1234", + "versionId":"1.1", + "versionInfo":"https://compute.north.host/v1.1/", + "versionList":"https://compute.north.host/" + } + ], + "endpoints_links":[{ + "rel":"next", + "href":"https://identity.north.host/v2.0/endpoints?marker=2" + } + ] + } + ], + "serviceCatalog_links":[{ + "rel":"next", + "href":"https://identity.host/v2.0/endpoints?session=2hfh8Ar&marker=2" + } + ] + } +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/samples/auth.xml b/openstack-identity-api/src/docbkx/common/samples/authwithgroups.xml similarity index 68% rename from openstack-identity-api/src/docbkx/samples/auth.xml rename to openstack-identity-api/src/docbkx/common/samples/authwithgroups.xml index 01f3036b..f8c6981b 100644 --- a/openstack-identity-api/src/docbkx/samples/auth.xml +++ b/openstack-identity-api/src/docbkx/common/samples/authwithgroups.xml @@ -1,19 +1,16 @@ - + - - - + + + + + + + + + + + + A Description of the group + + + diff --git a/openstack-identity-api/src/docbkx/common/samples/choices.json b/openstack-identity-api/src/docbkx/common/samples/choices.json new file mode 100644 index 00000000..71c8b77b --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/choices.json @@ -0,0 +1,64 @@ +{ + "choices":[{ + "id":"v1.0", + "status":"DEPRECATED", + "links":[{ + "rel":"self", + "href":"http://identity.api.openstack.org/v1.0" + } + ], + "media-types":{ + "values":[{ + "base":"application/xml", + "type":"application/vnd.openstack.identity+xml;version=1.0" + }, + { + "base":"application/json", + "type":"application/vnd.openstack.identity+json;version=1.0" + } + ] + } + }, + { + "id":"v1.1", + "status":"CURRENT", + "links":[{ + "rel":"self", + "href":"http://identity.api.openstack.org/v1.1" + } + ], + "media-types":{ + "values":[{ + "base":"application/xml", + "type":"application/vnd.openstack.identity+xml;version=1.1" + }, + { + "base":"application/json", + "type":"application/vnd.openstack.identity+json;version=1.1" + } + ] + } + }, + { + "id":"v2.0", + "status":"BETA", + "links":[{ + "rel":"self", + "href":"http://identity.api.openstack.org/v2.0" + } + ], + "media-types":{ + "values":[{ + "base":"application/xml", + "type":"application/vnd.openstack.identity+xml;version=2.0" + }, + { + "base":"application/json", + "type":"application/vnd.openstack.identity+json;version=2.0" + } + ] + } + } + ], + "choices_links":"" +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/samples/choices.xml b/openstack-identity-api/src/docbkx/common/samples/choices.xml similarity index 100% rename from openstack-identity-api/src/docbkx/samples/choices.xml rename to openstack-identity-api/src/docbkx/common/samples/choices.xml diff --git a/openstack-identity-api/src/docbkx/common/samples/credentials.json b/openstack-identity-api/src/docbkx/common/samples/credentials.json new file mode 100644 index 00000000..07e9c371 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/credentials.json @@ -0,0 +1,10 @@ +{ + "credentials":[{ + "passwordCredentials":{ + "username":"test_user", + "password":"mypass" + } + } + ], + "credentials_links":[] +} diff --git a/openstack-identity-api/src/docbkx/common/samples/credentials.xml b/openstack-identity-api/src/docbkx/common/samples/credentials.xml new file mode 100644 index 00000000..8efa9f2e --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/credentials.xml @@ -0,0 +1,5 @@ + + + + diff --git a/openstack-identity-api/src/docbkx/common/samples/credentialswithapikey.json b/openstack-identity-api/src/docbkx/common/samples/credentialswithapikey.json new file mode 100644 index 00000000..cf889f49 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/credentialswithapikey.json @@ -0,0 +1,16 @@ +{ + "credentials":[{ + "passwordCredentials":{ + "username":"test_user", + "password":"mypass" + } + }, + { + "RAX-KSKEY:apiKeyCredentials":{ + "username":"test_user", + "apiKey":"aaaaa-bbbbb-ccccc-12345678" + } + } + ], + "credentials_links":[] +} diff --git a/openstack-identity-api/src/docbkx/common/samples/credentialswithapikey.xml b/openstack-identity-api/src/docbkx/common/samples/credentialswithapikey.xml new file mode 100644 index 00000000..762016e8 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/credentialswithapikey.xml @@ -0,0 +1,9 @@ + + + + + diff --git a/openstack-identity-api/src/docbkx/common/samples/credentialswithec2.json b/openstack-identity-api/src/docbkx/common/samples/credentialswithec2.json new file mode 100644 index 00000000..f0a28eda --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/credentialswithec2.json @@ -0,0 +1,17 @@ +{ + "credentials":[{ + "passwordCredentials":{ + "username":"test_user", + "password":"mypass" + } + }, + { + "OS-KSEC2-ec2Credentials":{ + "username":"test_user", + "secret":"aaaaa", + "signature":"bbb" + } + } + ], + "credentials_links":[] +} diff --git a/openstack-identity-api/src/docbkx/common/samples/credentialswithec2.xml b/openstack-identity-api/src/docbkx/common/samples/credentialswithec2.xml new file mode 100644 index 00000000..b6ded2a3 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/credentialswithec2.xml @@ -0,0 +1,7 @@ + + + + + diff --git a/openstack-identity-api/src/docbkx/common/samples/ec2Credentials.json b/openstack-identity-api/src/docbkx/common/samples/ec2Credentials.json new file mode 100644 index 00000000..ba54b883 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/ec2Credentials.json @@ -0,0 +1,7 @@ +{ + "OS-KSEC2-ec2Credentials":{ + "username":"test_user", + "secret":"aaaaa", + "signature":"bbb" + } +} diff --git a/openstack-identity-api/src/docbkx/common/samples/ec2Credentials.xml b/openstack-identity-api/src/docbkx/common/samples/ec2Credentials.xml new file mode 100644 index 00000000..e36f231c --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/ec2Credentials.xml @@ -0,0 +1,7 @@ + + + diff --git a/openstack-identity-api/src/docbkx/common/samples/endpoint.json b/openstack-identity-api/src/docbkx/common/samples/endpoint.json new file mode 100644 index 00000000..06c85bfc --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/endpoint.json @@ -0,0 +1,14 @@ +{ + "endpoint": { + "id": 1, + "tenantId":1, + "region": "North", + "type": "compute", + "publicURL": "https://compute.north.public.com/v1", + "internalURL": "https://compute.north.internal.com/v1", + "adminURL" : "https://compute.north.internal.com/v1", + "versionId": "1", + "versionInfo": "https://compute.north.public.com/v1/", + "versionList": "https://compute.north.public.com/" + } +} diff --git a/openstack-identity-api/src/docbkx/common/samples/endpoint.xml b/openstack-identity-api/src/docbkx/common/samples/endpoint.xml new file mode 100644 index 00000000..cd09b24a --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/endpoint.xml @@ -0,0 +1,18 @@ + + + + + \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/common/samples/endpointTemplate.json b/openstack-identity-api/src/docbkx/common/samples/endpointTemplate.json new file mode 100644 index 00000000..52864436 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/endpointTemplate.json @@ -0,0 +1,14 @@ +{ + "OS-KSCATALOG:endpointTemplate":{ + "id":1, + "region":"North", + "global":true, + "type":"compute", + "publicURL":"https://compute.north.public.com/v1", + "internalURL":"https://compute.north.internal.com/v1", + "versionId":"1", + "versionInfo":"https://compute.north.public.com/v1/", + "versionList":"https://compute.north.public.com/", + "enabled":true + } +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/samples/endpointTemplate.xml b/openstack-identity-api/src/docbkx/common/samples/endpointTemplate.xml similarity index 53% rename from openstack-identity-api/src/docbkx/samples/endpointTemplate.xml rename to openstack-identity-api/src/docbkx/common/samples/endpointTemplate.xml index 1c4c6e90..b6222c59 100644 --- a/openstack-identity-api/src/docbkx/samples/endpointTemplate.xml +++ b/openstack-identity-api/src/docbkx/common/samples/endpointTemplate.xml @@ -1,17 +1,18 @@ \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/common/samples/endpointTemplateWithOnlyId.json b/openstack-identity-api/src/docbkx/common/samples/endpointTemplateWithOnlyId.json new file mode 100644 index 00000000..0f2da91f --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/endpointTemplateWithOnlyId.json @@ -0,0 +1,5 @@ +{ + "OS-KSCATALOG:endpointTemplate":{ + "id":1, + } +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/common/samples/endpointTemplateWithOnlyId.xml b/openstack-identity-api/src/docbkx/common/samples/endpointTemplateWithOnlyId.xml new file mode 100644 index 00000000..6379b3ae --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/endpointTemplateWithOnlyId.xml @@ -0,0 +1,6 @@ + + diff --git a/openstack-identity-api/src/docbkx/common/samples/endpointTemplates.json b/openstack-identity-api/src/docbkx/common/samples/endpointTemplates.json new file mode 100644 index 00000000..51ec8b3c --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/endpointTemplates.json @@ -0,0 +1,59 @@ +{ + "OS-KSCATALOG:endpointsTemplates": [ + { + "id": 1, + "region": "North", + "global": true, + "type": "compute", + "publicURL": "https://compute.north.public.com/v1", + "internalURL": "https://compute.north.internal.com/v1", + "versionId": "1", + "versionInfo": "https://compute.north.public.com/v1/", + "versionList": "https://compute.north.public.com/", + "enabled": true + }, + { + "id": 2, + "region": "South", + "type": "compute", + "publicURL": "https://compute.south.public.com/v1", + "internalURL": "https://compute.south.internal.com/v1", + "versionId": "1", + "versionInfo": "https://compute.south.public.com/v1/", + "versionList": "https://compute.south.public.com/", + "enabled": false + }, + { + "id": 3, + "region": "North", + "global": true, + "type": "object-store", + "publicURL": "https://object-store.north.public.com/v1.0", + "versionId": "1.0", + "versionInfo": "https://object-store.north.public.com/v1.0/", + "versionList": "https://object-store.north.public.com/", + "enabled": true + }, + { + "id": 4, + "region": "South", + "type": "object-store", + "publicURL": "https://object-store.south.public.com/v2", + "versionId": "2", + "versionInfo": "https://object-store.south.public.com/v2/", + "versionList": "https://object-store.south.public.com/", + "enabled": true + }, + { + "id": 5, + "global": true, + "type": "OS-DNS:DNS", + "publicURL": "https://dns.public.com/v3.2", + "versionId": "1.0", + "versionInfo": "https://dns.public.com/v1.0/", + "versionList": "https://dns.public.com/", + "enabled": true + } + ], + "OS-KSCATALOG:endpointsTemplates_links": [] +} diff --git a/openstack-identity-api/src/docbkx/samples/endpointTemplates.xml b/openstack-identity-api/src/docbkx/common/samples/endpointTemplates.xml similarity index 58% rename from openstack-identity-api/src/docbkx/samples/endpointTemplates.xml rename to openstack-identity-api/src/docbkx/common/samples/endpointTemplates.xml index fb13a3b2..965be9be 100644 --- a/openstack-identity-api/src/docbkx/samples/endpointTemplates.xml +++ b/openstack-identity-api/src/docbkx/common/samples/endpointTemplates.xml @@ -1,62 +1,67 @@ - + + id="1" + list="https://compute.north.public.com/" + info="https://compute.north.public.com/v1"/> + id="1" + list="https://service1.public.com/" + info="https://service1.public.com/v1"/> + id="1" + list="https://service1.public.com/" + info="https://service1.public.com/v1"/> + id="1" + list="https://service1.public.com/" + info="https://service1.public.com/v1"/> + id="1" + list="https://service1.public.com/" + info="https://service1.public.com/v1"/> diff --git a/openstack-identity-api/src/docbkx/common/samples/endpoints.json b/openstack-identity-api/src/docbkx/common/samples/endpoints.json new file mode 100644 index 00000000..e84a7b3b --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/endpoints.json @@ -0,0 +1,64 @@ +{ + "endpoints":[{ + "id":1, + "tenantId":"1", + "region":"North", + "type":"compute", + "publicURL":"https://compute.north.public.com/v1", + "internalURL":"https://compute.north.internal.com/v1", + "adminURL" : "https://compute.north.internal.com/v1", + "versionId":"1", + "versionInfo":"https://compute.north.public.com/v1/", + "versionList":"https://compute.north.public.com/" + }, + { + "id":2, + "tenantId":"1", + "region":"South", + "type":"compute", + "publicURL":"https://compute.north.public.com/v1", + "internalURL":"https://compute.north.internal.com/v1", + "adminURL" : "https://compute.north.internal.com/v1", + "versionId":"1", + "versionInfo":"https://compute.north.public.com/v1/", + "versionList":"https://compute.north.public.com/" + }, + { + "id":3, + "tenantId":"1", + "region":"East", + "type":"compute", + "publicURL":"https://compute.north.public.com/v1", + "internalURL":"https://compute.north.internal.com/v1", + "adminURL" : "https://compute.north.internal.com/v1", + "versionId":"1", + "versionInfo":"https://compute.north.public.com/v1/", + "versionList":"https://compute.north.public.com/" + }, + { + "id":4, + "tenantId":"1", + "region":"West", + "type":"compute", + "publicURL":"https://compute.north.public.com/v1", + "internalURL":"https://compute.north.internal.com/v1", + "adminURL" : "https://compute.north.internal.com/v1", + "versionId":"1", + "versionInfo":"https://compute.north.public.com/v1/", + "versionList":"https://compute.north.public.com/" + }, + { + "id":5, + "tenantId":"1", + "region":"Global", + "type":"compute", + "publicURL":"https://compute.north.public.com/v1", + "internalURL":"https://compute.north.internal.com/v1", + "adminURL" : "https://compute.north.internal.com/v1", + "versionId":"1", + "versionInfo":"https://compute.north.public.com/v1/", + "versionList":"https://compute.north.public.com/" + } + ], + "endpoints_links":[] +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/common/samples/endpoints.xml b/openstack-identity-api/src/docbkx/common/samples/endpoints.xml new file mode 100644 index 00000000..b09819a1 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/endpoints.xml @@ -0,0 +1,76 @@ + + + + + + + + + + + + + + + + + diff --git a/openstack-identity-api/src/docbkx/samples/ext-getuser.json b/openstack-identity-api/src/docbkx/common/samples/ext-getuser.json similarity index 82% rename from openstack-identity-api/src/docbkx/samples/ext-getuser.json rename to openstack-identity-api/src/docbkx/common/samples/ext-getuser.json index b1c80306..8bad31b6 100644 --- a/openstack-identity-api/src/docbkx/samples/ext-getuser.json +++ b/openstack-identity-api/src/docbkx/common/samples/ext-getuser.json @@ -1,14 +1,13 @@ { "user": { - "roles": { - "values": [ + "roles": [ { "tenantId": "1234", "id": "Admin" } - ] - }, - "id": "u1000", + ], + "roles_links": [], + "id": "1000", "username": "jqsmith", "email": "john.smith@example.org", "enabled": true, diff --git a/openstack-identity-api/src/docbkx/samples/ext-getuser.xml b/openstack-identity-api/src/docbkx/common/samples/ext-getuser.xml similarity index 100% rename from openstack-identity-api/src/docbkx/samples/ext-getuser.xml rename to openstack-identity-api/src/docbkx/common/samples/ext-getuser.xml diff --git a/openstack-identity-api/src/docbkx/samples/extension.json b/openstack-identity-api/src/docbkx/common/samples/extension.json similarity index 100% rename from openstack-identity-api/src/docbkx/samples/extension.json rename to openstack-identity-api/src/docbkx/common/samples/extension.json diff --git a/openstack-identity-api/src/docbkx/samples/extension.xml b/openstack-identity-api/src/docbkx/common/samples/extension.xml similarity index 100% rename from openstack-identity-api/src/docbkx/samples/extension.xml rename to openstack-identity-api/src/docbkx/common/samples/extension.xml diff --git a/openstack-identity-api/src/docbkx/common/samples/extensions.json b/openstack-identity-api/src/docbkx/common/samples/extensions.json new file mode 100644 index 00000000..304576f1 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/extensions.json @@ -0,0 +1,40 @@ +{ + "extensions":[{ + "name":"Reset Password Extension", + "namespace":"http://docs.rackspacecloud.com/identity/api/ext/rpe/v2.0", + "alias":"RS-RPE", + "updated":"2011-01-22T13:25:27-06:00", + "description":"Adds the capability to reset a user's password. The user is emailed when the password has been reset.", + "links":[{ + "rel":"describedby", + "type":"application/pdf", + "href":"http://docs.rackspacecloud.com/identity/api/ext/identity-rpe-20111111.pdf" + }, + { + "rel":"describedby", + "type":"application/vnd.sun.wadl+xml", + "href":"http://docs.rackspacecloud.com/identity/api/ext/identity-rpe.wadl" + } + ] + }, + { + "name":"User Metadata Extension", + "namespace":"http://docs.rackspacecloud.com/identity/api/ext/meta/v2.0", + "alias":"RS-META", + "updated":"2011-01-12T11:22:33-06:00", + "description":"Allows associating arbritrary metadata with a user.", + "links":[{ + "rel":"describedby", + "type":"application/pdf", + "href":"http://docs.rackspacecloud.com/identity/api/ext/identity-meta-20111201.pdf" + }, + { + "rel":"describedby", + "type":"application/vnd.sun.wadl+xml", + "href":"http://docs.rackspacecloud.com/identity/api/ext/identity-meta.wadl" + } + ] + } + ], + "extensions_links":[] +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/samples/extensions.xml b/openstack-identity-api/src/docbkx/common/samples/extensions.xml similarity index 100% rename from openstack-identity-api/src/docbkx/samples/extensions.xml rename to openstack-identity-api/src/docbkx/common/samples/extensions.xml diff --git a/openstack-identity-api/src/docbkx/common/samples/getuser-1.json b/openstack-identity-api/src/docbkx/common/samples/getuser-1.json new file mode 100644 index 00000000..5354744b --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/getuser-1.json @@ -0,0 +1,22 @@ +{ + "user":{ + "roles":[{ + "tenantId":"1234", + "id":"Admin" + }, + { + "tenantId":"1234", + "id":"DBUser" + } + ], + "roles_links":[{ + "rel":"next", + "href":"http://identity.api.openstack.org/v2.0/tenants/1234/users/u1000/roles?marker=Super" + } + ], + "id":"u1000", + "username":"jqsmith", + "email":"john.smith@example.org", + "enabled":true + } +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/samples/getuser-1.xml b/openstack-identity-api/src/docbkx/common/samples/getuser-1.xml similarity index 100% rename from openstack-identity-api/src/docbkx/samples/getuser-1.xml rename to openstack-identity-api/src/docbkx/common/samples/getuser-1.xml diff --git a/openstack-identity-api/src/docbkx/samples/identity_fault.json b/openstack-identity-api/src/docbkx/common/samples/identity_fault.json similarity index 100% rename from openstack-identity-api/src/docbkx/samples/identity_fault.json rename to openstack-identity-api/src/docbkx/common/samples/identity_fault.json diff --git a/openstack-identity-api/src/docbkx/samples/identity_fault.xml b/openstack-identity-api/src/docbkx/common/samples/identity_fault.xml similarity index 100% rename from openstack-identity-api/src/docbkx/samples/identity_fault.xml rename to openstack-identity-api/src/docbkx/common/samples/identity_fault.xml diff --git a/openstack-identity-api/src/docbkx/samples/item_not_found.json b/openstack-identity-api/src/docbkx/common/samples/item_not_found.json similarity index 100% rename from openstack-identity-api/src/docbkx/samples/item_not_found.json rename to openstack-identity-api/src/docbkx/common/samples/item_not_found.json diff --git a/openstack-identity-api/src/docbkx/samples/item_not_found.xml b/openstack-identity-api/src/docbkx/common/samples/item_not_found.xml similarity index 100% rename from openstack-identity-api/src/docbkx/samples/item_not_found.xml rename to openstack-identity-api/src/docbkx/common/samples/item_not_found.xml diff --git a/openstack-identity-api/src/docbkx/common/samples/norequestbody.txt b/openstack-identity-api/src/docbkx/common/samples/norequestbody.txt new file mode 100644 index 00000000..c6a777d5 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/norequestbody.txt @@ -0,0 +1 @@ +This operation does not require a request body. diff --git a/openstack-identity-api/src/docbkx/common/samples/noresponsebody.txt b/openstack-identity-api/src/docbkx/common/samples/noresponsebody.txt new file mode 100644 index 00000000..96e583f9 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/noresponsebody.txt @@ -0,0 +1 @@ +This operation does not return a response body. diff --git a/openstack-identity-api/src/docbkx/common/samples/passwordcredentials.json b/openstack-identity-api/src/docbkx/common/samples/passwordcredentials.json new file mode 100644 index 00000000..f405fa79 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/passwordcredentials.json @@ -0,0 +1,6 @@ +{ + "passwordCredentials": { + "username": "test_user", + "password": "mypass" + } +} diff --git a/openstack-identity-api/src/docbkx/common/samples/passwordcredentials.xml b/openstack-identity-api/src/docbkx/common/samples/passwordcredentials.xml new file mode 100644 index 00000000..86e4d9fe --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/passwordcredentials.xml @@ -0,0 +1,4 @@ + + + diff --git a/openstack-identity-api/src/docbkx/samples/role.json b/openstack-identity-api/src/docbkx/common/samples/role.json similarity index 58% rename from openstack-identity-api/src/docbkx/samples/role.json rename to openstack-identity-api/src/docbkx/common/samples/role.json index b649810a..a1b8109d 100644 --- a/openstack-identity-api/src/docbkx/samples/role.json +++ b/openstack-identity-api/src/docbkx/common/samples/role.json @@ -1,6 +1,7 @@ { "role": { - "id": "Guest", + "id": "123", + "name": "Guest", "description": "Guest Access" } } diff --git a/openstack-identity-api/src/docbkx/common/samples/role.xml b/openstack-identity-api/src/docbkx/common/samples/role.xml new file mode 100644 index 00000000..dd25cfff --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/role.xml @@ -0,0 +1,4 @@ + + + diff --git a/openstack-identity-api/src/docbkx/common/samples/roles.json b/openstack-identity-api/src/docbkx/common/samples/roles.json new file mode 100644 index 00000000..ac4c9cd5 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/roles.json @@ -0,0 +1,9 @@ +{ + "roles":[{ + "id":"123", + "name":"compute:admin", + "description":"Nova Administrator", + } + ], + "roles_links":[] +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/common/samples/roles.xml b/openstack-identity-api/src/docbkx/common/samples/roles.xml new file mode 100644 index 00000000..30596f92 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/roles.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/openstack-identity-api/src/docbkx/samples/samplerequestheader.txt b/openstack-identity-api/src/docbkx/common/samples/samplerequestheader.txt similarity index 100% rename from openstack-identity-api/src/docbkx/samples/samplerequestheader.txt rename to openstack-identity-api/src/docbkx/common/samples/samplerequestheader.txt diff --git a/openstack-identity-api/src/docbkx/samples/sampleresponseheader.txt b/openstack-identity-api/src/docbkx/common/samples/sampleresponseheader.txt similarity index 100% rename from openstack-identity-api/src/docbkx/samples/sampleresponseheader.txt rename to openstack-identity-api/src/docbkx/common/samples/sampleresponseheader.txt diff --git a/openstack-identity-api/src/docbkx/common/samples/service.json b/openstack-identity-api/src/docbkx/common/samples/service.json new file mode 100644 index 00000000..9262cc90 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/service.json @@ -0,0 +1,8 @@ +{ + "OS-KSADM:service":{ + "id":"123", + "name":"nova", + "type":"compute", + "description":"OpenStack Compute Service" + } +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/common/samples/service.xml b/openstack-identity-api/src/docbkx/common/samples/service.xml new file mode 100644 index 00000000..d1c98cec --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/service.xml @@ -0,0 +1,4 @@ + + + diff --git a/openstack-identity-api/src/docbkx/common/samples/services.json b/openstack-identity-api/src/docbkx/common/samples/services.json new file mode 100644 index 00000000..0add2504 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/services.json @@ -0,0 +1,16 @@ +{ + "OS-KSADM:services":[{ + "id":"123", + "name":"nova", + "type":"compute", + "description":"OpenStack Compute Service" + }, + { + "id":"234", + "name":"glance", + "type":"image", + "description":"OpenStack Image Service" + } + ], + "OS-KSADM:services_links":[] +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/common/samples/services.xml b/openstack-identity-api/src/docbkx/common/samples/services.xml new file mode 100644 index 00000000..12947c3a --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/services.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/samples/tenant.json b/openstack-identity-api/src/docbkx/common/samples/tenant.json similarity index 100% rename from openstack-identity-api/src/docbkx/samples/tenant.json rename to openstack-identity-api/src/docbkx/common/samples/tenant.json diff --git a/openstack-identity-api/src/docbkx/samples/tenant.xml b/openstack-identity-api/src/docbkx/common/samples/tenant.xml similarity index 100% rename from openstack-identity-api/src/docbkx/samples/tenant.xml rename to openstack-identity-api/src/docbkx/common/samples/tenant.xml diff --git a/openstack-identity-api/src/docbkx/samples/tenantlock.json b/openstack-identity-api/src/docbkx/common/samples/tenantlock.json similarity index 100% rename from openstack-identity-api/src/docbkx/samples/tenantlock.json rename to openstack-identity-api/src/docbkx/common/samples/tenantlock.json diff --git a/openstack-identity-api/src/docbkx/samples/tenantlock.xml b/openstack-identity-api/src/docbkx/common/samples/tenantlock.xml similarity index 100% rename from openstack-identity-api/src/docbkx/samples/tenantlock.xml rename to openstack-identity-api/src/docbkx/common/samples/tenantlock.xml diff --git a/openstack-identity-api/src/docbkx/common/samples/tenants-1.json b/openstack-identity-api/src/docbkx/common/samples/tenants-1.json new file mode 100644 index 00000000..d9766ae8 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/tenants-1.json @@ -0,0 +1,14 @@ +{ + "tenants":[{ + "id":"1234", + "name":"ACME corp", + "description":"A description ...", + "enabled":true + } + ], + "tenants_links":[{ + "rel":"next", + "href":"http://identity.api.openstack.org/v2.0/tenants?limit=1&marker=1234" + } + ] +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/samples/tenants-1.xml b/openstack-identity-api/src/docbkx/common/samples/tenants-1.xml similarity index 100% rename from openstack-identity-api/src/docbkx/samples/tenants-1.xml rename to openstack-identity-api/src/docbkx/common/samples/tenants-1.xml diff --git a/openstack-identity-api/src/docbkx/common/samples/tenants-2.json b/openstack-identity-api/src/docbkx/common/samples/tenants-2.json new file mode 100644 index 00000000..003fe952 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/tenants-2.json @@ -0,0 +1,18 @@ +{ + "tenants":[{ + "id":"3645", + "name":"Iron Works", + "description":"A description ...", + "enabled":true + } + ], + "tenants_links":[{ + "rel":"next", + "href":"http://identity.api.openstack.org/v2.0/tenants?limit=1&marker=3645" + }, + { + "rel":"previous", + "href":"http://identity.api.openstack.org/v2.0/tenants?limit=1" + } + ] +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/samples/tenants-2.xml b/openstack-identity-api/src/docbkx/common/samples/tenants-2.xml similarity index 100% rename from openstack-identity-api/src/docbkx/samples/tenants-2.xml rename to openstack-identity-api/src/docbkx/common/samples/tenants-2.xml diff --git a/openstack-identity-api/src/docbkx/common/samples/tenants-3.json b/openstack-identity-api/src/docbkx/common/samples/tenants-3.json new file mode 100644 index 00000000..1f2538ff --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/tenants-3.json @@ -0,0 +1,14 @@ +{ + "tenants":[{ + "id":"9999", + "name":"Bigz", + "description":"A description ...", + "enabled":true + } + ], + "tenants_links":[{ + "rel":"previous", + "href":"http://identity.api.openstack.org/v2.0/tenants?limit=1&marker=1234" + } + ] +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/samples/tenants-3.xml b/openstack-identity-api/src/docbkx/common/samples/tenants-3.xml similarity index 100% rename from openstack-identity-api/src/docbkx/samples/tenants-3.xml rename to openstack-identity-api/src/docbkx/common/samples/tenants-3.xml diff --git a/openstack-identity-api/src/docbkx/samples/tenants-request.txt b/openstack-identity-api/src/docbkx/common/samples/tenants-request.txt similarity index 100% rename from openstack-identity-api/src/docbkx/samples/tenants-request.txt rename to openstack-identity-api/src/docbkx/common/samples/tenants-request.txt diff --git a/openstack-identity-api/src/docbkx/common/samples/tenants.json b/openstack-identity-api/src/docbkx/common/samples/tenants.json new file mode 100644 index 00000000..aec27935 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/tenants.json @@ -0,0 +1,16 @@ +{ + "tenants":[{ + "id":"1234", + "name":"ACME Corp", + "description":"A description ...", + "enabled":true + }, + { + "id":"3456", + "name":"Iron Works", + "description":"A description ...", + "enabled":true + } + ], + "tenants_links":[] +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/samples/tenants.xml b/openstack-identity-api/src/docbkx/common/samples/tenants.xml similarity index 100% rename from openstack-identity-api/src/docbkx/samples/tenants.xml rename to openstack-identity-api/src/docbkx/common/samples/tenants.xml diff --git a/openstack-identity-api/src/docbkx/common/samples/tenantwithoutid.json b/openstack-identity-api/src/docbkx/common/samples/tenantwithoutid.json new file mode 100644 index 00000000..63faba9c --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/tenantwithoutid.json @@ -0,0 +1,7 @@ +{ + "tenant": { + "name": "ACME corp", + "description": "A description ...", + "enabled": true + } +} diff --git a/openstack-identity-api/src/docbkx/common/samples/tenantwithoutid.xml b/openstack-identity-api/src/docbkx/common/samples/tenantwithoutid.xml new file mode 100644 index 00000000..3983684b --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/tenantwithoutid.xml @@ -0,0 +1,5 @@ + + + A description... + diff --git a/openstack-identity-api/src/docbkx/samples/updatedtenant.json b/openstack-identity-api/src/docbkx/common/samples/updatedtenant.json similarity index 100% rename from openstack-identity-api/src/docbkx/samples/updatedtenant.json rename to openstack-identity-api/src/docbkx/common/samples/updatedtenant.json diff --git a/openstack-identity-api/src/docbkx/samples/updatedtenant.xml b/openstack-identity-api/src/docbkx/common/samples/updatedtenant.xml similarity index 100% rename from openstack-identity-api/src/docbkx/samples/updatedtenant.xml rename to openstack-identity-api/src/docbkx/common/samples/updatedtenant.xml diff --git a/openstack-identity-api/src/docbkx/samples/user.json b/openstack-identity-api/src/docbkx/common/samples/user.json similarity index 96% rename from openstack-identity-api/src/docbkx/samples/user.json rename to openstack-identity-api/src/docbkx/common/samples/user.json index 1623e95d..75d1508b 100644 --- a/openstack-identity-api/src/docbkx/samples/user.json +++ b/openstack-identity-api/src/docbkx/common/samples/user.json @@ -4,5 +4,5 @@ "username": "jqsmith", "email": "john.smith@example.org", "enabled": true - } + } } diff --git a/openstack-identity-api/src/docbkx/samples/user.xml b/openstack-identity-api/src/docbkx/common/samples/user.xml similarity index 76% rename from openstack-identity-api/src/docbkx/samples/user.xml rename to openstack-identity-api/src/docbkx/common/samples/user.xml index af035dee..ccaf7ec4 100644 --- a/openstack-identity-api/src/docbkx/samples/user.xml +++ b/openstack-identity-api/src/docbkx/common/samples/user.xml @@ -1,5 +1,4 @@ - + username="jqsmith" id="u1000"/> diff --git a/openstack-identity-api/src/docbkx/common/samples/users.json b/openstack-identity-api/src/docbkx/common/samples/users.json new file mode 100644 index 00000000..08db72b5 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/users.json @@ -0,0 +1,16 @@ +{ + "users":[{ + "id":"u1000", + "username":"jqsmith", + "email":"john.smith@example.org", + "enabled":true + }, + { + "id":"u1001", + "username":"jqsmith", + "email":"john.smith@example.org", + "enabled":true + } + ], + "users_links":[] +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/common/samples/users.xml b/openstack-identity-api/src/docbkx/common/samples/users.xml new file mode 100644 index 00000000..01b321da --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/users.xml @@ -0,0 +1,9 @@ + + + + + diff --git a/openstack-identity-api/src/docbkx/common/samples/userwithenabledonly.json b/openstack-identity-api/src/docbkx/common/samples/userwithenabledonly.json new file mode 100644 index 00000000..23265395 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/userwithenabledonly.json @@ -0,0 +1,5 @@ +{ + "user": { + "enabled": true + } +} diff --git a/openstack-identity-api/src/docbkx/common/samples/userwithenabledonly.xml b/openstack-identity-api/src/docbkx/common/samples/userwithenabledonly.xml new file mode 100644 index 00000000..0176b9eb --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/userwithenabledonly.xml @@ -0,0 +1,5 @@ + + diff --git a/openstack-identity-api/src/docbkx/common/samples/userwithoutid.json b/openstack-identity-api/src/docbkx/common/samples/userwithoutid.json new file mode 100644 index 00000000..2a891811 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/userwithoutid.json @@ -0,0 +1,7 @@ +{ + "user": { + "username": "jqsmith", + "email": "john.smith@example.org", + "enabled": true + } +} diff --git a/openstack-identity-api/src/docbkx/common/samples/userwithoutid.xml b/openstack-identity-api/src/docbkx/common/samples/userwithoutid.xml new file mode 100644 index 00000000..3e875beb --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/userwithoutid.xml @@ -0,0 +1,4 @@ + + diff --git a/openstack-identity-api/src/docbkx/common/samples/validatetoken.json b/openstack-identity-api/src/docbkx/common/samples/validatetoken.json new file mode 100644 index 00000000..9d20e529 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/validatetoken.json @@ -0,0 +1,27 @@ +{ + "access":{ + "token":{ + "id":"ab48a9efdfedb23ty3494", + "expires":"2010-11-01T03:32:15-05:00", + "tenant":{ + "id": "345", + "name": "My Project" + } + }, + "user":{ + "id":"123", + "name":"jqsmith", + "roles":[{ + "id":"234", + "name":"compute:admin" + }, + { + "id":"234", + "name":"object-store:admin", + "tenantId":"1" + } + ], + "roles_links":[] + } + } +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/common/samples/validatetoken.xml b/openstack-identity-api/src/docbkx/common/samples/validatetoken.xml new file mode 100644 index 00000000..12da9ebb --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/validatetoken.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/openstack-identity-api/src/docbkx/samples/version-atom.xml b/openstack-identity-api/src/docbkx/common/samples/version-atom.xml similarity index 91% rename from openstack-identity-api/src/docbkx/samples/version-atom.xml rename to openstack-identity-api/src/docbkx/common/samples/version-atom.xml index 3d78a4a3..685a4e20 100644 --- a/openstack-identity-api/src/docbkx/samples/version-atom.xml +++ b/openstack-identity-api/src/docbkx/common/samples/version-atom.xml @@ -11,7 +11,7 @@ 2011-01-21T11:33:21-06:00 + href="http://docs.openstack.org/api/identity/api/v2.0/identity-latest.pdf"/> Version v2.0 CURRENT (2011-01-21T11:33:21-06:00) diff --git a/openstack-identity-api/src/docbkx/samples/version.json b/openstack-identity-api/src/docbkx/common/samples/version.json similarity index 89% rename from openstack-identity-api/src/docbkx/samples/version.json rename to openstack-identity-api/src/docbkx/common/samples/version.json index db42ac80..5085d02c 100644 --- a/openstack-identity-api/src/docbkx/samples/version.json +++ b/openstack-identity-api/src/docbkx/common/samples/version.json @@ -10,7 +10,7 @@ }, { "rel": "describedby", "type": "application/pdf", - "href": "http://docs.openstack.org/identity/api/v2.0/identity-latest.pdf" + "href": "http://docs.openstack.org/api/identity/api/v2.0/identity-latest.pdf" }, { "rel": "describedby", "type": "application/vnd.sun.wadl+xml", diff --git a/openstack-identity-api/src/docbkx/samples/version.xml b/openstack-identity-api/src/docbkx/common/samples/version.xml similarity index 100% rename from openstack-identity-api/src/docbkx/samples/version.xml rename to openstack-identity-api/src/docbkx/common/samples/version.xml diff --git a/openstack-identity-api/src/docbkx/samples/versions-atom.xml b/openstack-identity-api/src/docbkx/common/samples/versions-atom.xml similarity index 100% rename from openstack-identity-api/src/docbkx/samples/versions-atom.xml rename to openstack-identity-api/src/docbkx/common/samples/versions-atom.xml diff --git a/openstack-identity-api/src/docbkx/common/samples/versions.json b/openstack-identity-api/src/docbkx/common/samples/versions.json new file mode 100644 index 00000000..21bacffd --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/samples/versions.json @@ -0,0 +1,34 @@ +{ + "versions":[{ + "id":"v1.0", + "status":"DEPRECATED", + "updated":"2009-10-09T11:30:00Z", + "links":[{ + "rel":"self", + "href":"http://identity.api.openstack.org/v1.0/" + } + ] + }, + { + "id":"v1.1", + "status":"CURRENT", + "updated":"2010-12-12T18:30:02.25Z", + "links":[{ + "rel":"self", + "href":"http://identity.api.openstack.org/v1.1/" + } + ] + }, + { + "id":"v2.0", + "status":"BETA", + "updated":"2011-05-27T20:22:02.25Z", + "links":[{ + "rel":"self", + "href":"http://identity.api.openstack.org/v2.0/" + } + ] + } + ], + "versions_links":[] +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/samples/versions.xml b/openstack-identity-api/src/docbkx/common/samples/versions.xml similarity index 100% rename from openstack-identity-api/src/docbkx/samples/versions.xml rename to openstack-identity-api/src/docbkx/common/samples/versions.xml diff --git a/openstack-identity-api/src/docbkx/common/style/schema.css b/openstack-identity-api/src/docbkx/common/style/schema.css new file mode 100644 index 00000000..f174ca52 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/style/schema.css @@ -0,0 +1,82 @@ +/* + * (C) 2009 Rackspace Hosting, All Rights Reserved. + */ +body, div, dl, dt, dd, ul, ol, li, h2, h3, +h4, h5, h6, pre, code, form, fieldset, legend, +input, button, textarea, p, blockquote, th, td { + text-align: left; +} + +h1 { + font-size: 350%; + margin-bottom: 10px; +} + +#Content { + border: 1px solid; + padding: 0px 40px 40px; + margin-left: 155px; +} + +#SrcContent { + padding: 0px 40px 40px; + display: none; + margin-left: 155px; +} + +#Controller { + position: fixed; + width: 145px; + left: 10px; + top: 10px; +} + +.Sample { + display: none; +} + +.EnumValue{ + padding: 10px 0px; +} + +.EnumDoc{ + padding: 10px 10px 10px 0px; +} + +.ExternHref{ + padding-top: 5px; +} + +.ExternDoc{ + padding-right: 10px; +} + +pre { + overflow: auto; +} + +td { + padding: 0px 0px 0px 10px; + width: 50%; + font-size: 90%; +} + +table { + width: 100%; +} + +a { + text-decoration: none; +} + +a:hover { + text-decoration: underline; +} + +a:link { + color: #000090; +} + +a:visited { + color: #000090; +} diff --git a/openstack-identity-api/src/docbkx/common/style/shjs/sh_acid.css b/openstack-identity-api/src/docbkx/common/style/shjs/sh_acid.css new file mode 100644 index 00000000..a34b786f --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/style/shjs/sh_acid.css @@ -0,0 +1,151 @@ +pre.sh_sourceCode { + background-color: #eeeeee; + color: #000000; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_keyword { + color: #bb7977; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_type { + color: #8080c0; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_string { + color: #a68500; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_regexp { + color: #a68500; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_specialchar { + color: #ff00ff; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_comment { + color: #ff8000; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_number { + color: #800080; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_preproc { + color: #0080c0; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_symbol { + color: #ff0080; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_function { + color: #004466; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_cbracket { + color: #ff0080; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_url { + color: #a68500; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_date { + color: #bb7977; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_time { + color: #bb7977; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_file { + color: #bb7977; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_ip { + color: #a68500; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_name { + color: #a68500; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_variable { + color: #0080c0; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_oldfile { + color: #ff00ff; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_newfile { + color: #a68500; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_difflines { + color: #bb7977; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_selector { + color: #0080c0; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_property { + color: #bb7977; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_value { + color: #a68500; + font-weight: normal; + font-style: normal; +} + diff --git a/openstack-identity-api/src/docbkx/common/style/shjs/sh_darkblue.css b/openstack-identity-api/src/docbkx/common/style/shjs/sh_darkblue.css new file mode 100644 index 00000000..23fd6dab --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/style/shjs/sh_darkblue.css @@ -0,0 +1,151 @@ +pre.sh_sourceCode { + background-color: #000040; + color: #C7C7C7; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_keyword { + color: #ffff60; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_type { + color: #60ff60; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_string { + color: #ffa0a0; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_regexp { + color: #ffa0a0; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_specialchar { + color: #ffa500; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_comment { + color: #80a0ff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_number { + color: #42cad9; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_preproc { + color: #ff80ff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_symbol { + color: #d8e91b; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_function { + color: #ffffff; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_cbracket { + color: #d8e91b; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_url { + color: #ffa0a0; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_date { + color: #ffff60; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_time { + color: #ffff60; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_file { + color: #ffff60; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_ip { + color: #ffa0a0; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_name { + color: #ffa0a0; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_variable { + color: #26e0e7; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_oldfile { + color: #ffa500; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_newfile { + color: #ffa0a0; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_difflines { + color: #ffff60; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_selector { + color: #26e0e7; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_property { + color: #ffff60; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_value { + color: #ffa0a0; + font-weight: normal; + font-style: normal; +} + diff --git a/openstack-identity-api/src/docbkx/common/style/shjs/sh_emacs.css b/openstack-identity-api/src/docbkx/common/style/shjs/sh_emacs.css new file mode 100644 index 00000000..6e019cbe --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/style/shjs/sh_emacs.css @@ -0,0 +1,139 @@ +pre.sh_sourceCode { + background-color: #ffffff; + color: #000000; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_keyword { + color: #9c20ee; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_type { + color: #208920; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_string { + color: #bd8d8b; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_regexp { + color: #bd8d8b; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_specialchar { + color: #bd8d8b; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_comment { + color: #ac2020; + font-weight: normal; + font-style: italic; +} + +pre.sh_sourceCode .sh_number { + color: #000000; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_preproc { + color: #000000; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_function { + color: #000000; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_url { + color: #bd8d8b; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_date { + color: #9c20ee; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_time { + color: #9c20ee; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_file { + color: #9c20ee; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_ip { + color: #bd8d8b; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_name { + color: #bd8d8b; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_variable { + color: #0000ff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_oldfile { + color: #bd8d8b; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_newfile { + color: #bd8d8b; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_difflines { + color: #9c20ee; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_selector { + color: #0000ff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_property { + color: #9c20ee; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_value { + color: #bd8d8b; + font-weight: normal; + font-style: normal; +} + diff --git a/openstack-identity-api/src/docbkx/common/style/shjs/sh_night.css b/openstack-identity-api/src/docbkx/common/style/shjs/sh_night.css new file mode 100644 index 00000000..d8d371b4 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/style/shjs/sh_night.css @@ -0,0 +1,151 @@ +pre.sh_sourceCode { + background-color: #000044; + color: #dd00ff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_keyword { + color: #ffffff; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_type { + color: #f1157c; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_string { + color: #ffffff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_regexp { + color: #ffffff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_specialchar { + color: #82d66d; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_comment { + color: #bfbfbf; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_number { + color: #8ee119; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_preproc { + color: #00bb00; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_symbol { + color: #e7ee5c; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_function { + color: #ff06cd; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_cbracket { + color: #e7ee5c; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_url { + color: #ffffff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_date { + color: #ffffff; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_time { + color: #ffffff; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_file { + color: #ffffff; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_ip { + color: #ffffff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_name { + color: #ffffff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_variable { + color: #7aec27; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_oldfile { + color: #82d66d; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_newfile { + color: #ffffff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_difflines { + color: #ffffff; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_selector { + color: #7aec27; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_property { + color: #ffffff; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_value { + color: #ffffff; + font-weight: normal; + font-style: normal; +} + diff --git a/openstack-identity-api/src/docbkx/common/style/shjs/sh_pablo.css b/openstack-identity-api/src/docbkx/common/style/shjs/sh_pablo.css new file mode 100644 index 00000000..173cd7bf --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/style/shjs/sh_pablo.css @@ -0,0 +1,151 @@ +pre.sh_sourceCode { + background-color: #000000; + color: #ffffff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_keyword { + color: #c0c000; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_type { + color: #00c000; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_string { + color: #00ffff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_regexp { + color: #00ffff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_specialchar { + color: #0000ff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_comment { + color: #808080; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_number { + color: #00ffff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_preproc { + color: #00ff00; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_symbol { + color: #ff0000; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_function { + color: #ff22b9; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_cbracket { + color: #ff0000; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_url { + color: #00ffff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_date { + color: #c0c000; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_time { + color: #c0c000; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_file { + color: #c0c000; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_ip { + color: #00ffff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_name { + color: #00ffff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_variable { + color: #0000c0; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_oldfile { + color: #0000ff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_newfile { + color: #00ffff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_difflines { + color: #c0c000; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_selector { + color: #0000c0; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_property { + color: #c0c000; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_value { + color: #00ffff; + font-weight: normal; + font-style: normal; +} + diff --git a/openstack-identity-api/src/docbkx/common/style/shjs/sh_print.css b/openstack-identity-api/src/docbkx/common/style/shjs/sh_print.css new file mode 100644 index 00000000..1e8c1168 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/style/shjs/sh_print.css @@ -0,0 +1,145 @@ +pre.sh_sourceCode { + background-color: #ffffff; + color: #000000; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_keyword { + color: #000000; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_type { + color: #000000; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_string { + color: #000000; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_regexp { + color: #000000; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_specialchar { + color: #000000; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_comment { + color: #666666; + font-weight: normal; + font-style: italic; +} + +pre.sh_sourceCode .sh_number { + color: #000000; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_preproc { + color: #000000; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_symbol { + color: #000000; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_cbracket { + color: #000000; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_url { + color: #000000; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_date { + color: #000000; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_time { + color: #000000; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_file { + color: #000000; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_ip { + color: #000000; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_name { + color: #000000; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_variable { + color: #000000; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_oldfile { + color: #000000; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_newfile { + color: #000000; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_difflines { + color: #000000; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_selector { + color: #000000; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_property { + color: #000000; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_value { + color: #000000; + font-weight: normal; + font-style: normal; +} + diff --git a/openstack-identity-api/src/docbkx/common/style/shjs/sh_style.css b/openstack-identity-api/src/docbkx/common/style/shjs/sh_style.css new file mode 100644 index 00000000..6cd20b47 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/style/shjs/sh_style.css @@ -0,0 +1,66 @@ +pre.sh_sourceCode { + background-color: white; + color: black; + font-style: normal; + font-weight: normal; +} + +pre.sh_sourceCode .sh_keyword { color: blue; font-weight: bold; } /* language keywords */ +pre.sh_sourceCode .sh_type { color: darkgreen; } /* basic types */ +pre.sh_sourceCode .sh_usertype { color: teal; } /* user defined types */ +pre.sh_sourceCode .sh_string { color: red; font-family: monospace; } /* strings and chars */ +pre.sh_sourceCode .sh_regexp { color: orange; font-family: monospace; } /* regular expressions */ +pre.sh_sourceCode .sh_specialchar { color: pink; font-family: monospace; } /* e.g., \n, \t, \\ */ +pre.sh_sourceCode .sh_comment { color: brown; font-style: italic; } /* comments */ +pre.sh_sourceCode .sh_number { color: purple; } /* literal numbers */ +pre.sh_sourceCode .sh_preproc { color: darkblue; font-weight: bold; } /* e.g., #include, import */ +pre.sh_sourceCode .sh_symbol { color: darkred; } /* e.g., <, >, + */ +pre.sh_sourceCode .sh_function { color: black; font-weight: bold; } /* function calls and declarations */ +pre.sh_sourceCode .sh_cbracket { color: red; } /* block brackets (e.g., {, }) */ +pre.sh_sourceCode .sh_todo { font-weight: bold; background-color: cyan; } /* TODO and FIXME */ + +/* Predefined variables and functions (for instance glsl) */ +pre.sh_sourceCode .sh_predef_var { color: darkblue; } +pre.sh_sourceCode .sh_predef_func { color: darkblue; font-weight: bold; } + +/* for OOP */ +pre.sh_sourceCode .sh_classname { color: teal; } + +/* line numbers (not yet implemented) */ +pre.sh_sourceCode .sh_linenum { color: black; font-family: monospace; } + +/* Internet related */ +pre.sh_sourceCode .sh_url { color: blue; text-decoration: underline; font-family: monospace; } + +/* for ChangeLog and Log files */ +pre.sh_sourceCode .sh_date { color: blue; font-weight: bold; } +pre.sh_sourceCode .sh_time, pre.sh_sourceCode .sh_file { color: darkblue; font-weight: bold; } +pre.sh_sourceCode .sh_ip, pre.sh_sourceCode .sh_name { color: darkgreen; } + +/* for Prolog, Perl... */ +pre.sh_sourceCode .sh_variable { color: darkgreen; } + +/* for LaTeX */ +pre.sh_sourceCode .sh_italics { color: darkgreen; font-style: italic; } +pre.sh_sourceCode .sh_bold { color: darkgreen; font-weight: bold; } +pre.sh_sourceCode .sh_underline { color: darkgreen; text-decoration: underline; } +pre.sh_sourceCode .sh_fixed { color: green; font-family: monospace; } +pre.sh_sourceCode .sh_argument { color: darkgreen; } +pre.sh_sourceCode .sh_optionalargument { color: purple; } +pre.sh_sourceCode .sh_math { color: orange; } +pre.sh_sourceCode .sh_bibtex { color: blue; } + +/* for diffs */ +pre.sh_sourceCode .sh_oldfile { color: orange; } +pre.sh_sourceCode .sh_newfile { color: darkgreen; } +pre.sh_sourceCode .sh_difflines { color: blue; } + +/* for css */ +pre.sh_sourceCode .sh_selector { color: purple; } +pre.sh_sourceCode .sh_property { color: blue; } +pre.sh_sourceCode .sh_value { color: darkgreen; font-style: italic; } + +/* other */ +pre.sh_sourceCode .sh_section { color: black; font-weight: bold; } +pre.sh_sourceCode .sh_paren { color: red; } +pre.sh_sourceCode .sh_attribute { color: darkgreen; } diff --git a/openstack-identity-api/src/docbkx/common/style/shjs/sh_whitengrey.css b/openstack-identity-api/src/docbkx/common/style/shjs/sh_whitengrey.css new file mode 100644 index 00000000..41df0e2c --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/style/shjs/sh_whitengrey.css @@ -0,0 +1,139 @@ +pre.sh_sourceCode { + background-color: #ffffff; + color: #696969; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_keyword { + color: #696969; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_type { + color: #696969; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_string { + color: #008800; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_regexp { + color: #008800; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_specialchar { + color: #008800; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_comment { + color: #1326a2; + font-weight: normal; + font-style: italic; +} + +pre.sh_sourceCode .sh_number { + color: #bb00ff; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_preproc { + color: #470000; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_function { + color: #000000; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_url { + color: #008800; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_date { + color: #696969; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_time { + color: #696969; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_file { + color: #696969; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_ip { + color: #008800; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_name { + color: #008800; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_variable { + color: #696969; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_oldfile { + color: #008800; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_newfile { + color: #008800; + font-weight: normal; + font-style: normal; +} + +pre.sh_sourceCode .sh_difflines { + color: #696969; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_selector { + color: #696969; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_property { + color: #696969; + font-weight: bold; + font-style: normal; +} + +pre.sh_sourceCode .sh_value { + color: #008800; + font-weight: normal; + font-style: normal; +} + diff --git a/openstack-identity-api/src/docbkx/common/xsd/OS-KSADM.xsd b/openstack-identity-api/src/docbkx/common/xsd/OS-KSADM.xsd new file mode 100644 index 00000000..6a5e0379 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/OS-KSADM.xsd @@ -0,0 +1,108 @@ + + + + + + + + + + + + + + + + +

+ A list of services. +

+
+
+
+ + + + +

+ A service. +

+
+
+
+ + + + +

+ An extensible credentials type. +

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
\ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/common/xsd/OS-KSCATALOG.xsd b/openstack-identity-api/src/docbkx/common/xsd/OS-KSCATALOG.xsd new file mode 100644 index 00000000..86de52d1 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/OS-KSCATALOG.xsd @@ -0,0 +1,193 @@ + + + + + + + + + + + + + + +

+ A list of Endpoint Templates. +

+
+
+
+ + + + +

+ An Endpoint Template. +

+
+
+
+ + + + + + + +

+ Version details. +

+
+
+
+ + +
+ + + +

+ An ID uniquely identifying the Endpoint Template. +

+
+
+
+ + + +

+ The OpenStack-registered type (e.g. 'compute', 'object-store', etc). +

+
+
+
+ + + +

+ The commercial service name (e.g. 'My Nova Cloud Servers'). +

+
+
+
+ + + +

+ The region of Endpoint Template. +

+
+
+
+ + + +

+ The public URL to access represented service. +

+
+
+
+ + + +

+ The internal version of the public URL. +

+
+
+
+ + + +

+ The admin URL. +

+
+
+
+ + + +

+ If true the Endpoint Template is automatically part of every account. +

+
+
+
+ + + +

+ True if the Endpoint Template is enabled (active). + A Endpoint Template cannot be added if it's disabled or inactive (false). +

+
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/openstack-identity-api/src/docbkx/common/xsd/OS-KSEC2-credentials.xsd b/openstack-identity-api/src/docbkx/common/xsd/OS-KSEC2-credentials.xsd new file mode 100644 index 00000000..4b7da238 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/OS-KSEC2-credentials.xsd @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/openstack-identity-api/src/docbkx/common/xsd/RAX-KSADM-credentials.xsd b/openstack-identity-api/src/docbkx/common/xsd/RAX-KSADM-credentials.xsd new file mode 100644 index 00000000..c1430ac3 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/RAX-KSADM-credentials.xsd @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/openstack-identity-api/src/docbkx/common/xsd/RAX-KSADM-users.xsd b/openstack-identity-api/src/docbkx/common/xsd/RAX-KSADM-users.xsd new file mode 100644 index 00000000..c8b9d16e --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/RAX-KSADM-users.xsd @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/openstack-identity-api/src/docbkx/common/xsd/RAX-KSGRP-groups.xsd b/openstack-identity-api/src/docbkx/common/xsd/RAX-KSGRP-groups.xsd new file mode 100644 index 00000000..267bacc3 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/RAX-KSGRP-groups.xsd @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/openstack-identity-api/src/docbkx/common/xsd/RAX-KSKEY-credentials.xsd b/openstack-identity-api/src/docbkx/common/xsd/RAX-KSKEY-credentials.xsd new file mode 100644 index 00000000..69f5ce10 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/RAX-KSKEY-credentials.xsd @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+ The user's API Key. +

+
+
+
+
+
+
+ +
diff --git a/openstack-identity-api/src/docbkx/common/xsd/RAX-KSQA-secretQA.xsd b/openstack-identity-api/src/docbkx/common/xsd/RAX-KSQA-secretQA.xsd new file mode 100644 index 00000000..cc13a492 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/RAX-KSQA-secretQA.xsd @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + +

+ A Secret Question and Answer. The answer shall serve to prove + the user's identity as it should only be able to be answered + by the user who proposed the question. +

+
+ + + + + + + + + + +
+ + + + + + +
+
+ +
diff --git a/openstack-identity-api/src/docbkx/common/xsd/api-common.xsd b/openstack-identity-api/src/docbkx/common/xsd/api-common.xsd new file mode 100644 index 00000000..0625e5be --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/api-common.xsd @@ -0,0 +1,55 @@ + + + + + + + + + Open Stack Common API Schema Types 1.0 + + + + + +

+ This is the main index XML Schema document + for Common API Schema Types Version 1.0. +

+
+
+ + + +

+ Types related to extensions. +

+
+
+
+ + + +

+ Types related to API version details. +

+
+
+
+
diff --git a/openstack-identity-api/src/docbkx/common/xsd/api.xsd b/openstack-identity-api/src/docbkx/common/xsd/api.xsd new file mode 100644 index 00000000..5b6140cc --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/api.xsd @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + diff --git a/openstack-identity-api/src/docbkx/common/xsd/atom/atom.xsd b/openstack-identity-api/src/docbkx/common/xsd/atom/atom.xsd new file mode 100644 index 00000000..c515c497 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/atom/atom.xsd @@ -0,0 +1,115 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + See section 3.4 of the ATOM RFC RFC4287 + + + + + + + TODO(Jorge) + + + + + + + + TODO(Jorge) + + + + + + + + TODO(Jorge) + + + + + + + + TODO(Jorge) + + + + + + + + TODO(Jorge) + + + + + + + + diff --git a/openstack-identity-api/src/docbkx/common/xsd/atom/xml.xsd b/openstack-identity-api/src/docbkx/common/xsd/atom/xml.xsd new file mode 100644 index 00000000..aea7d0db --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/atom/xml.xsd @@ -0,0 +1,287 @@ + + + + + + +
+

About the XML namespace

+ +
+

+ This schema document describes the XML namespace, in a form + suitable for import by other schema documents. +

+

+ See + http://www.w3.org/XML/1998/namespace.html and + + http://www.w3.org/TR/REC-xml for information + about this namespace. +

+

+ Note that local names in this namespace are intended to be + defined only by the World Wide Web Consortium or its subgroups. + The names currently defined in this namespace are listed below. + They should not be used with conflicting semantics by any Working + Group, specification, or document instance. +

+

+ See further below in this document for more information about how to refer to this schema document from your own + XSD schema documents and about the + namespace-versioning policy governing this schema document. +

+
+
+
+
+ + + + +
+ +

lang (as an attribute name)

+

+ denotes an attribute whose value + is a language code for the natural language of the content of + any element; its value is inherited. This name is reserved + by virtue of its definition in the XML specification.

+ +
+
+

Notes

+

+ Attempting to install the relevant ISO 2- and 3-letter + codes as the enumerated possible values is probably never + going to be a realistic possibility. +

+

+ See BCP 47 at + http://www.rfc-editor.org/rfc/bcp/bcp47.txt + and the IANA language subtag registry at + + http://www.iana.org/assignments/language-subtag-registry + for further information. +

+

+ The union allows for the 'un-declaration' of xml:lang with + the empty string. +

+
+
+
+ + + + + + + + + +
+ + + + +
+ +

space (as an attribute name)

+

+ denotes an attribute whose + value is a keyword indicating what whitespace processing + discipline is intended for the content of the element; its + value is inherited. This name is reserved by virtue of its + definition in the XML specification.

+ +
+
+
+ + + + + + +
+ + + +
+ +

base (as an attribute name)

+

+ denotes an attribute whose value + provides a URI to be used as the base for interpreting any + relative URIs in the scope of the element on which it + appears; its value is inherited. This name is reserved + by virtue of its definition in the XML Base specification.

+ +

+ See http://www.w3.org/TR/xmlbase/ + for information about this attribute. +

+
+
+
+
+ + + + +
+ +

id (as an attribute name)

+

+ denotes an attribute whose value + should be interpreted as if declared to be of type ID. + This name is reserved by virtue of its definition in the + xml:id specification.

+ +

+ See http://www.w3.org/TR/xml-id/ + for information about this attribute. +

+
+
+
+
+ + + + + + + + + + +
+ +

Father (in any context at all)

+ +
+

+ denotes Jon Bosak, the chair of + the original XML Working Group. This name is reserved by + the following decision of the W3C XML Plenary and + XML Coordination groups: +

+
+

+ In appreciation for his vision, leadership and + dedication the W3C XML Plenary on this 10th day of + February, 2000, reserves for Jon Bosak in perpetuity + the XML name "xml:Father". +

+
+
+
+
+
+ + + +
+

About this schema document

+ +
+

+ This schema defines attributes and an attribute group suitable + for use by schemas wishing to allow xml:base, + xml:lang, xml:space or + xml:id attributes on elements they define. +

+

+ To enable this, such a schema must import this schema for + the XML namespace, e.g. as follows: +

+
+          <schema . . .>
+           . . .
+           <import namespace="http://www.w3.org/XML/1998/namespace"
+                      schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+     
+

+ or +

+
+           <import namespace="http://www.w3.org/XML/1998/namespace"
+                      schemaLocation="http://www.w3.org/2009/01/xml.xsd"/>
+     
+

+ Subsequently, qualified reference to any of the attributes or the + group defined below will have the desired effect, e.g. +

+
+          <type . . .>
+           . . .
+           <attributeGroup ref="xml:specialAttrs"/>
+     
+

+ will define a type which will schema-validate an instance element + with any of those attributes. +

+
+
+
+
+ + + +
+

Versioning policy for this schema document

+
+

+ In keeping with the XML Schema WG's standard versioning + policy, this schema document will persist at + + http://www.w3.org/2009/01/xml.xsd. +

+

+ At the date of issue it can also be found at + + http://www.w3.org/2001/xml.xsd. +

+

+ The schema document at that URI may however change in the future, + in order to remain compatible with the latest version of XML + Schema itself, or with the XML namespace itself. In other words, + if the XML Schema or XML namespaces change, the version of this + document at + http://www.w3.org/2001/xml.xsd + + will change accordingly; the version at + + http://www.w3.org/2009/01/xml.xsd + + will not change. +

+

+ Previous dated (and unchanging) versions of this schema + document are at: +

+ +
+
+
+
+ +
+ diff --git a/openstack-identity-api/src/docbkx/common/xsd/credentials.xsd b/openstack-identity-api/src/docbkx/common/xsd/credentials.xsd new file mode 100644 index 00000000..36e59942 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/credentials.xsd @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + +

+ Base type for credential in Keystone. +

+
+
+ + + + +
+ + + + + +

+ Both the tenantId and tenantName are optional, but should not be specified together. If both attributes are specified, the server SHOULD respond with a 400 Bad Request. +

+
+
+ + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/openstack-identity-api/src/docbkx/common/xsd/endpoints.xsd b/openstack-identity-api/src/docbkx/common/xsd/endpoints.xsd new file mode 100644 index 00000000..acc82d72 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/endpoints.xsd @@ -0,0 +1,160 @@ + + + + + + + + + + + + + +

+ An Endpoint. +

+
+
+
+ + + +

+ A list of Endpoints. +

+
+
+
+ + + + + + + +

+ Version details. +

+
+
+
+ + +
+ + + +

+ An ID uniquely identifying the Endpoint. +

+
+
+
+ + + +

+ The OpenStack-registered type (e.g. 'compute', 'object-store', etc). +

+
+
+
+ + + +

+ The commercial service name (e.g. 'My Nova Cloud Servers'). +

+
+
+
+ + + +

+ The region of Endpoint Template. +

+
+
+
+ + + +

+ The public URL to access represented service. +

+
+
+
+ + + +

+ The internal version of the public URL. +

+
+
+
+ + + +

+ The admin URL. +

+
+
+
+ + + +

+ Tenant id to which the endpoints belong. +

+
+
+
+ +
+ + + + + + + + +
diff --git a/openstack-identity-api/src/docbkx/common/xsd/extensions.xsd b/openstack-identity-api/src/docbkx/common/xsd/extensions.xsd new file mode 100644 index 00000000..26694c07 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/extensions.xsd @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/common/xsd/fault.xsd b/openstack-identity-api/src/docbkx/common/xsd/fault.xsd new file mode 100644 index 00000000..4776ddaf --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/fault.xsd @@ -0,0 +1,138 @@ + + + + + + + + + + + + + + + + + + + + + + + +

+ A human readable message that is appropriate for display + to the end user. +

+
+
+
+ + + +

+ The optional <details> element may contain useful + information for tracking down errors (e.g a stack + trace). This information may or may not be appropriate + for display to an end user. +

+
+
+
+ +
+ + + +

+ The HTTP status code associated with the current fault. +

+
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+ An optional dateTime denoting when an operation should + be retried. +

+
+
+
+
+
+
+ +
diff --git a/openstack-identity-api/src/docbkx/common/xsd/roles.xsd b/openstack-identity-api/src/docbkx/common/xsd/roles.xsd new file mode 100644 index 00000000..0ed30143 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/roles.xsd @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + +

+ A list of roles. +

+
+
+
+ + + + +

+ A role. +

+
+
+
+ + + + + + + + + + + + + + + + + + + + +
\ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/common/xsd/services.xsd b/openstack-identity-api/src/docbkx/common/xsd/services.xsd new file mode 100644 index 00000000..248e1e93 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/services.xsd @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + +

+ An extensible service type allows all of the + strings defined in ServiceType or an + alias prefixed status. +

+
+
+ +
+ + + + + + +

+ The type for an OpenStack Compute API 1.1 compatible service. +

+
+
+
+ + + +

+ The type for a Swift-compatible service. +

+
+
+
+ + + +

+ The type for a Glance-compatible service +

+
+
+
+ + + +

+ The type for a Keystone-compatible service. +

+
+
+
+
+
+ + + + +

+ A non-core service type which must contain an extension prefix. +

+
+
+ + + +
+
\ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/common/xsd/tenant.xsd b/openstack-identity-api/src/docbkx/common/xsd/tenant.xsd new file mode 100644 index 00000000..9c836ea8 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/tenant.xsd @@ -0,0 +1,151 @@ + + + + + + + + + + + + + +

+ A container used to group or isolate resources and/or identity + objects. Depending on the service operator, a tenant may map to a customer, + account, organization, or project. +

+
+ + +           +             +           +           +             +           +         + +
+
+ + + +

+ A list of tenants. +

+
+
+
+ + + + + + + + + + + + + + + + +

+ An free text description of the tenant. +

+
+
+
+ +
+ + + +

+ An ID uniquely identifying the tenant. This usually comes from the back-end store. + This value is guaranteed to be unique and immutable (it will never change). +

+
+
+
+ + + +

+ The name of the tenant. This is guaranteed to be unique, but may change. +

+
+
+
+ + + +

+ An boolean signifying if a tenant is enabled or not. A disabled tenant + cannot be authenticated against. +

+
+
+
+ + + +

+ A human-readable, friendly name for use in user interfaces. +

+
+
+
+ + + +

+ A time-stamp identifying the modification time of the + tenant. +

+
+
+
+ + + +

+ A creation time-stamp for the tenant. +

+
+
+
+ +
+
diff --git a/openstack-identity-api/src/docbkx/common/xsd/token.xsd b/openstack-identity-api/src/docbkx/common/xsd/token.xsd new file mode 100644 index 00000000..5e410716 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/token.xsd @@ -0,0 +1,298 @@ + + + + + + + + + + + + + + + + + + + + +

+ A token is an arbitrary bit of text that is used to access + resources. Each token has a scope which describes which + resources are accessible with it. A token may be + revoked at anytime and is valid for a finite duration. +

+

+ While Keystone supports token-based authentication in this release, + the intention is for it to support additional protocols in the + future. The desire is for it to be an integration service, and not + a full-fledged identity store and management solution. +

+
+ + + + + + + + + + +
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+ The service catalog lists the services you have access to +

+
+

+ We optimized for future flexibility around the hierarchy. So we + left the design as a flat list of endpoints with attributes and the + consumer can categorize as they need. + This results in potential duplication (such as with the version/@list) + but we acceopt that normalization cost in order to not force an + artificial hierarchy (suchas on region, which can be optional). +

+
+
+ + +           +             +           +           +             +           +         + +
+ + + + +

+ A list of services. +

+
+
+
+ + +
+ +
+ + + + + + +

+ A list of endpoints. +

+
+
+
+ + +
+ + + +

+ The OpenStack-registered type (e.g. 'compute', 'object-store', etc). +

+
+
+
+ + + +

+ The commercial service name (e.g. 'My Nova Cloud Servers'). +

+
+
+
+ +
+ + + + + + + +

+ Version details. +

+
+
+
+ + +
+ + + +

+ The name of the region where the endpoint + lives. Example: airport codes; LHR (UK), + STL (Saint Louis) +

+
+
+
+ + + +

+ Tenant id to which the endpoints belong. +

+
+
+
+ + + +

+ Public accessible service URL. +

+
+
+
+ + + +

+ A service URL, accessible only locally within that + cloud (generally over a high bandwidth, low latency, + free of charge link). +

+
+
+
+ + + +

+ An Admin URL (used for administration using privileged + calls). This may expose + additional functionality not found in the public and + internal URL. +

+
+
+
+ +
+ + + + + + +

+ Id of the version. +

+
+
+
+ + + +

+ URI to get the information specific to this version. +

+
+
+
+ + + +

+ URI to get the information about all versions. +

+
+
+
+ +
+
+ diff --git a/openstack-identity-api/src/docbkx/common/xsd/user.xsd b/openstack-identity-api/src/docbkx/common/xsd/user.xsd new file mode 100644 index 00000000..66ae728d --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/user.xsd @@ -0,0 +1,131 @@ + + + + + + + + + + + + + + +

+ A list of Users. +

+
+
+
+ + + + +

+ A Keystone User. +

+
+
+
+ + + + + + +

+ An automatically generated, unique, immutable (it will never change) identifier + for the user. This is generated by the backend this user is stored in. +

+
+
+
+ + + +

+ A unique, mutable (it can change) user name that may be used by the user + an identifier when presenting credentials. +

+
+
+
+ + + + +

+ A true/false value that determines if the user may authenticate or not. + If enabled is false, the user will not be able to authenticate. + How this value is stored or generated is dependent on the backend in use. +

+
+
+
+ + + +

+ A human-readable, friendly name for use in user interfaces. +

+
+
+
+ + + +

+ A time-stamp identifying the modification time of the + user. +

+
+
+
+ + + +

+ A creation time-stamp for the user. +

+
+
+
+ +
+ + + + + + + + + +
diff --git a/openstack-identity-api/src/docbkx/common/xsd/version.xsd b/openstack-identity-api/src/docbkx/common/xsd/version.xsd new file mode 100644 index 00000000..a65d1ff2 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xsd/version.xsd @@ -0,0 +1,357 @@ + + + + + + + + + + Version Types + + + +

+ This schema file defines all types related to versioning. +

+
+
+ + + + + + + + +

+ This element is returned when the version of the + resource cannot be determined. The element + provides a list of choices for the resource. +

+
+ + + + + + + + + + +
+
+ + + + + +

+ Provides a list of supported versions. +

+
+ + + + + + + + + + + + + +
+
+ + + +

+ This element provides detailed meta information + regarding the status of the current API version. + This is the XSD 1.0 compatible element definition. +

+
+
+
+ + + + +

+ This element provides detailed meta information + regarding the status of the current API + version. The description should include a pointer + to both a human readable and a machine processable + description of the API service. +

+
+ + + + + + + + + + + + + +
+
+ + + + + + + The VersionStatus type describes a service's operational status. + + + + + + + + + + This is a new service the API. Thi API + contract may be set, but the implementaiton + may not be 100% complient with it. Developers + are encouraged to begin testing aganst an + ALPHA version to provide feedback. + + + + + + + + + A status of BETA indicates that this + version is a candidate for the next major + release and may feature functionality not + available in the current + version. Developers are encouraged to test + and begin the migration processes to a + BETA version. Note that a BETA version is + undergoing testing, it has not been + officially released, and my not be stable. + + + + + + + + + The API version is stable and has been + tested. Developers are encouraged to + develop against this API version. The + current released version of the API will + always be marked as CURRENT. + + + + + + + + + A status of DEPRECATED indicates that a + newer version of the API is + available. Application developers are + discouraged from using this version and + should instead develop against the latest + current version of the API. + + + + + + + + + + + + A version choice list outlines a collection of + resources at various versions. + + + + + + + + + + + + + + + + + + + + + + + + A version choice contains relevant information + about an available service that a user can then + use to target a specific version of the service. + + + + + + + + + + + + + + + The ID of a version choice represents the service version's unique + identifier. This ID is guaranteed to be unique only among the + service version choices outlined in the VersionChoiceList. + + + + + + + + + + A version choice's status describes the current operational state of + the given service version. The operational status is captured in a + simple type enumeration called VersionStatus. + + + + + + + + + + A version choice's updated attribute describes + the time when the version was updated. The + time should be updated anytime + anything in the + version has changed: documentation, + extensions, bug fixes. + + + + + + + + + + + + A MediaTypeList outlines a collection of valid media types for a given + service version. + + + + + + + + + + + + + + + + A MediaType describes what content types the service version understands. + + + + + + + + + + + The base of a given media type describes the + simple MIME type that then a more complicated + media type can be derived from. These types + are basic and provide no namespace or version + specific data are are only provided as a + convenience. + + + + + + + + + + The type attribute of a MediaType describes + the MIME specific identifier of the media type + in question. + + + + + + +
diff --git a/openstack-identity-api/src/docbkx/common/xslt/schema.xslt b/openstack-identity-api/src/docbkx/common/xslt/schema.xslt new file mode 100644 index 00000000..6d602cc7 --- /dev/null +++ b/openstack-identity-api/src/docbkx/common/xslt/schema.xslt @@ -0,0 +1,1342 @@ + + + + + + + + + + + + + + + + + .. + + + + + + XML Schema Documentation + application/xhtml+xml + http://www.w3.org/2001/XMLSchema + http://web4.w3.org/TR/2001/REC-xmlschema-2-20010502/# + + " + ' + + + + + + + + + + + + + + + + + + + + element_ + attrib_ + attgrp_ + grp_ + type_ + + + + http://yui.yahooapis.com/2.7.0/build/ + + + + + + + + + + + + + + + + + stylesheet + text/css + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <xslt:value-of select="xsd:annotation/xsd:appinfo/xsdxt:title"/> + + + <xslt:value-of select="$defaultTitle"/> + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+
+
Loading...
+
+
+
+ + + +

+
+ +

+
+
+ + + + + + + + + + + +
+ + + + + + + + + +

Namespaces

+ + + +
+

+ Your browser does not seem to have support for + namespace nodes in XPath. If you're a Firefox + user, please consider voting to get this issue + resolved: + + https://bugzilla.mozilla.org/show_bug.cgi?id=94270 + +

+
+
+ + + + + + + + + + + +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + +
+ + + + + trc.schema.controller.links[' + + ']=[ + + + + + + + + + + + + + + + + + + + + + + + + + + , + + + ]; + + + + + + trc.schema.controller.index = + + + + + + index + + + Index Schema Document + + + ; + + + + + + + trc.schema.controller.links[' + + ']=[ + + + + # + + + + + + + + See definition of + + + + + , + + + ]; + + + + + + + + { href : + + + + + + , name : + + + + + + , title : + + + + + + } + + + + + + + + +

Imports

+ + + + + + + + + +
+ + +
+
+ + + Visit + + +
+
+ +
+
+
+
+ + +

Includes

+ + + + + + + + +
+
+
+ + + Visit + + +
+
+ +
+
+
+
+ + +

Elements

+ + + + + + + + +
+ + + + + + +
+
+ + + trc.schema.sampleManager.showSample( + + + + ); + + + + + + + + + + + + + + + + + + + + +
+
+ + + + Sample +
+ +
+ +
+
+
+ + + +
+ + + + + + + Loading... + + + + + + +
+
+ + + + + + +

Complex Types

+ + + + + + +
+ + +

Simple Types

+ + + + + + +
+ + + + + + # + + + + + + + + + + + + + + + + + + +

+ +

+ + + + + +
+ extends: + + + + , + + +
+
+ +
+ restricts: + + + + , + + +
+
+
+
+ + + +
+ + + + + + + + + + SubAttributes + + + Attributes + + + + + + + + + + + + + + + +
+
+
+
+ + + + + + + + + + SubDocumentation + + + Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Sequence + + +
+
+ + + +
+
+
+ +
+ + + +
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + <?> (Any Element) + + + + + + + + @? (Any Attribute) + + + + + +
+ restriction +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
enum values
+ + + + + + + + +
+ + + + + +
+
+ + + (id = + + ) + +
+ +
+ +
+
+
+ +
+ + + + + + + + (id = + + ) + + + (fixed) + + + + + + + + + + + + +
+ +
+ +
+ +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + < + + > + + + + + + @ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/openstack-identity-api/src/docbkx/contrib/__init__.py b/openstack-identity-api/src/docbkx/contrib/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/openstack-identity-api/src/docbkx/contrib/__init__.pyc b/openstack-identity-api/src/docbkx/contrib/__init__.pyc new file mode 100644 index 0000000000000000000000000000000000000000..90032c2603c519f42ded69c695251353dac0146b GIT binary patch literal 147 zcmcckiI?lu&BK1l3{b!bq#b~`m<33rFfasbfJFQ>fCK{?QEUSg(+@39Eh^Se%*#vF zOHa)!$w}2OE=tzVPOU61$*fi6cb- literal 0 HcmV?d00001 diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/__init__.py b/openstack-identity-api/src/docbkx/contrib/extensions/__init__.py new file mode 100644 index 00000000..35bba8c3 --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/__init__.py @@ -0,0 +1,44 @@ +# vim: tabstop=4 shiftwidth=4 softtabstop=4 + +# Copyright 2010 OpenStack LLC. +# All Rights Reserved. +# +# 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 + +import ast +import logging +from keystone import utils +EXTENSION_PREFIX = 'keystone.contrib.extensions.' + + +class BaseExtensionConfigurer(object): + def configure_extensions(self, extension_property, extension_type, + extension_defaults, mapper, options): + supported_extensions = options.get( + extension_property, extension_defaults) + for supported_extension in supported_extensions.split(','): + self.extension_handlers = [] + supported_extension = EXTENSION_PREFIX\ + + extension_type + '.' + supported_extension.strip()\ + + '.ExtensionHandler' + try: + extenion_handler = utils.import_module(supported_extension)() + extenion_handler.map_extension_methods(mapper, options) + self.extension_handlers.append(extenion_handler) + except Exception as err: + logging.exception("Could not load extension for " +\ + extension_type + ':' + supported_extension + str(err)) + + def get_extension_handlers(self): + return self.extension_handlers diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/__init__.pyc b/openstack-identity-api/src/docbkx/contrib/extensions/__init__.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9ee13c764c48edded0c77617b0c39f34cbc2661a GIT binary patch literal 1562 zcmcIk&2G~`5T3OYrwJ`;OCbV^6mhadmE1TWgiu4Ey#(ZfS|TCKjW_AGj@Ni6QX@I1 z@)*1VPl3dpBd@@b7l4^flc0(twKC)N%32$ z*{0K(oEX%pZ1#1ExjJsjbCju3IyFtKlfiCeWM?jG>vW)o<6Pzo(Cl-U$lN0)39f}m z7fA*x$ByMqvq9(P zqIP>x8YeP04@lb9<0NjR8XJj@;>M!pje*V^_VyEhjqE5>fT2X&G?OI?ag!tq`|#w_ zDXx>abM&^;J=lNU4c`Qvm-|PvTh!GoAT1z!RHIDi7>;y2P9)wY$tcRgrNfcL6CE4m zPDNQJ)0pZ)uFv~2Lz)WY)+Ks4RO!%a~d%Rw|waE631@->dFEewNO9AKPrHZoo&VDQ$z6}Cb)B4shJo2{?RbD!>jW#$!~ zTJH=ssuiWQ7ekq1B3mZ!x8}RDJX|hKYmtd*g`r9nhG8?CSd3&cTbaKw@~YT<0ml=o zVjVnDb+?5pHpRNwBJxC^2Wd`iw&&z|aCz2PFBwNf pgJ(g`yJ>eLVAyu(_3^3fqxEu)C@q4gv%);H6UzWrc^HJ}{sHspeE + + + + Adds the capability to support EC2 style authentication. + + + + + + diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/admin/osksadm/__init__.py b/openstack-identity-api/src/docbkx/contrib/extensions/admin/osksadm/__init__.py new file mode 100644 index 00000000..6a5abdb7 --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/admin/osksadm/__init__.py @@ -0,0 +1,149 @@ +# vim: tabstop=4 shiftwidth=4 softtabstop=4 + +# Copyright 2010 OpenStack LLC. +# All Rights Reserved. +# +# 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. + +from keystone.contrib.extensions.admin.extension import BaseExtensionHandler +from keystone.controllers.services import ServicesController +from keystone.controllers.roles import RolesController +from keystone.controllers.user import UserController +from keystone.controllers.tenant import TenantController +from keystone.controllers.credentials import CredentialsController + + +class ExtensionHandler(BaseExtensionHandler): + def map_extension_methods(self, mapper, options): + tenant_controller = TenantController(options) + roles_controller = RolesController(options) + user_controller = UserController(options) + credentials_controller = CredentialsController(options) + + # Tenant Operations + mapper.connect("/tenants", controller=tenant_controller, + action="create_tenant", + conditions=dict(method=["POST"])) + mapper.connect("/tenants/{tenant_id}", + controller=tenant_controller, + action="update_tenant", conditions=dict(method=["POST"])) + mapper.connect("/tenants/{tenant_id}", + controller=tenant_controller, + action="delete_tenant", conditions=dict(method=["DELETE"])) + mapper.connect("/tenants/{tenant_id}/users", + controller=user_controller, + action="get_tenant_users", + conditions=dict(method=["GET"])) + + #Add/Delete Tenant specific role. + mapper.connect( + "/tenants/{tenant_id}/users/{user_id}/roles/OS-KSADM/{role_id}", + controller=roles_controller, action="add_role_to_user", + conditions=dict(method=["PUT"])) + mapper.connect( + "/tenants/{tenant_id}/users/{user_id}/roles/OS-KSADM/{role_id}", + controller=roles_controller, action="delete_role_from_user", + conditions=dict(method=["DELETE"])) + # User Operations + mapper.connect("/users", + controller=user_controller, + action="get_users", + conditions=dict(method=["GET"])) + mapper.connect("/users", + controller=user_controller, + action="create_user", + conditions=dict(method=["POST"])) + mapper.connect("/users/{user_id}", + controller=user_controller, + action="update_user", + conditions=dict(method=["POST"])) + mapper.connect("/users/{user_id}", + controller=user_controller, + action="delete_user", + conditions=dict(method=["DELETE"])) + #API doesn't have any of the shorthand updates as of now. + mapper.connect("/users/{user_id}/OS-KSADM/password", + controller=user_controller, + action="set_user_password", + conditions=dict(method=["PUT"])) + mapper.connect("/users/{user_id}/OS-KSADM/tenant", + controller=user_controller, + action="update_user_tenant", + conditions=dict(method=["PUT"])) + # Test this, test failed + mapper.connect("/users/{user_id}/OS-KSADM/enabled", + controller=user_controller, + action="set_user_enabled", + conditions=dict(method=["PUT"])) + #User Roles + #Add/Delete Global role. + mapper.connect("/users/{user_id}/roles/OS-KSADM/{role_id}", + controller=roles_controller, action="add_role_to_user", + conditions=dict(method=["PUT"])) + mapper.connect("/users/{user_id}/roles/OS-KSADM/{role_id}", + controller=roles_controller, action="delete_role_from_user", + conditions=dict(method=["DELETE"])) + + # Services Operations + services_controller = ServicesController(options) + mapper.connect("/OS-KSADM/services", + controller=services_controller, + action="get_services", + conditions=dict(method=["GET"])) + mapper.connect("/OS-KSADM/services", + controller=services_controller, + action="create_service", + conditions=dict(method=["POST"])) + mapper.connect("/OS-KSADM/services/{service_id}", + controller=services_controller, + action="delete_service", + conditions=dict(method=["DELETE"])) + mapper.connect("/OS-KSADM/services/{service_id}", + controller=services_controller, + action="get_service", + conditions=dict(method=["GET"])) + #Roles Operations + mapper.connect("/OS-KSADM/roles", controller=roles_controller, + action="create_role", conditions=dict(method=["POST"])) + mapper.connect("/OS-KSADM/roles", controller=roles_controller, + action="get_roles", conditions=dict(method=["GET"])) + mapper.connect("/OS-KSADM/roles/{role_id}", + controller=roles_controller, action="get_role", + conditions=dict(method=["GET"])) + mapper.connect("/OS-KSADM/roles/{role_id}", + controller=roles_controller, action="delete_role", + conditions=dict(method=["DELETE"])) + + #Credentials Operations + mapper.connect("/users/{user_id}/OS-KSADM/credentials", + controller=credentials_controller, action="get_credentials", + conditions=dict(method=["GET"])) + mapper.connect("/users/{user_id}/OS-KSADM/credentials", + controller=credentials_controller, action="add_credential", + conditions=dict(method=["POST"])) + mapper.connect("/users/{user_id}/OS-KSADM/"\ + "credentials/passwordCredentials", + controller=credentials_controller, + action="get_password_credential", + conditions=dict(method=["GET"])) + mapper.connect("/users/{user_id}/OS-KSADM/credentials"\ + "/passwordCredentials", + controller=credentials_controller, + action="update_password_credential", + conditions=dict(method=["POST"])) + mapper.connect("/users/{user_id}/"\ + "OS-KSADM/credentials/passwordCredentials", + controller=credentials_controller, + action="delete_password_credential", + conditions=dict(method=["DELETE"])) diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/admin/osksadm/extension.json b/openstack-identity-api/src/docbkx/contrib/extensions/admin/osksadm/extension.json new file mode 100644 index 00000000..ffa573f2 --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/admin/osksadm/extension.json @@ -0,0 +1,20 @@ +{ + "extension":{ + "name": "Openstack Keystone Admin", + "namespace": "http://docs.openstack.org/identity/api/ext/OS-KSADM/v1.0", + "alias": "OS-KSADM", + "updated": "2011-08-19T13:25:27-06:00", + "description": "Openstack extensions to Keystone v2.0 API enabling Admin Operations.", + "links": [{ + "rel": "describedby", + "type": "application/pdf", + "href": "https://github.com/openstack/keystone/raw/master/keystone/content/admin/OS-KSADM-admin-devguide.pdf" + }, + { + "rel": "describedby", + "type": "application/vnd.sun.wadl+xml", + "href": "https://github.com/openstack/keystone/raw/master/keystone/content/admin/OS-KSADM-admin.wadl" + } + ] + } +} diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/admin/osksadm/extension.xml b/openstack-identity-api/src/docbkx/contrib/extensions/admin/osksadm/extension.xml new file mode 100644 index 00000000..b3c0a7a6 --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/admin/osksadm/extension.xml @@ -0,0 +1,15 @@ + + + + Openstack extensions to Keystone v2.0 + API enabling Admin Operations. + + + + diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/admin/oskscatalog/__init__.py b/openstack-identity-api/src/docbkx/contrib/extensions/admin/oskscatalog/__init__.py new file mode 100644 index 00000000..cd0c3927 --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/admin/oskscatalog/__init__.py @@ -0,0 +1,63 @@ +# vim: tabstop=4 shiftwidth=4 softtabstop=4 + +# Copyright 2010 OpenStack LLC. +# All Rights Reserved. +# +# 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. + +from keystone.contrib.extensions.admin.extension import BaseExtensionHandler +from keystone.controllers.endpointtemplates import EndpointTemplatesController + + +class ExtensionHandler(BaseExtensionHandler): + def map_extension_methods(self, mapper, options): + #EndpointTemplates Calls + endpoint_templates_controller = EndpointTemplatesController(options) + mapper.connect("/OS-KSCATALOG/endpointTemplates", + controller=endpoint_templates_controller, + action="get_endpoint_templates", + conditions=dict(method=["GET"])) + mapper.connect("/OS-KSCATALOG/endpointTemplates", + controller=endpoint_templates_controller, + action="add_endpoint_template", + conditions=dict(method=["POST"])) + mapper.connect( + "/OS-KSCATALOG/endpointTemplates/{endpoint_template_id}", + controller=endpoint_templates_controller, + action="get_endpoint_template", + conditions=dict(method=["GET"])) + mapper.connect( + "/OS-KSCATALOG/endpointTemplates/{endpoint_template_id}", + controller=endpoint_templates_controller, + action="modify_endpoint_template", + conditions=dict(method=["PUT"])) + mapper.connect( + "/OS-KSCATALOG/endpointTemplates/{endpoint_template_id}", + controller=endpoint_templates_controller, + action="delete_endpoint_template", + conditions=dict(method=["DELETE"])) + #Endpoint Calls + mapper.connect("/tenants/{tenant_id}/OS-KSCATALOG/endpoints", + controller=endpoint_templates_controller, + action="get_endpoints_for_tenant", + conditions=dict(method=["GET"])) + mapper.connect("/tenants/{tenant_id}/OS-KSCATALOG/endpoints", + controller=endpoint_templates_controller, + action="add_endpoint_to_tenant", + conditions=dict(method=["POST"])) + mapper.connect( + "/tenants/{tenant_id}/OS-KSCATALOG/endpoints/{endpoint_id}", + controller=endpoint_templates_controller, + action="remove_endpoint_from_tenant", + conditions=dict(method=["DELETE"])) diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/admin/oskscatalog/extension.json b/openstack-identity-api/src/docbkx/contrib/extensions/admin/oskscatalog/extension.json new file mode 100644 index 00000000..d44c170b --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/admin/oskscatalog/extension.json @@ -0,0 +1,20 @@ +{ + "extension":{ + "name": "Openstack Keystone Catalog", + "namespace": "http://docs.openstack.org/identity/api/ext/OS-KSCATALOG/v1.0", + "alias": "OS-KSCATALOG", + "updated": "2011-07-13T13:25:27-06:00", + "description": "Openstack extensions to Keystone v2.0 API enabling Admin Operations to support Catalog.", + "links": [{ + "rel": "describedby", + "type": "application/pdf", + "href": "https://github.com/openstack/keystone/raw/master/keystone/content/admin/OS-KSCATALOG-admin-devguide.pdf" + }, + { + "rel": "describedby", + "type": "application/vnd.sun.wadl+xml", + "href": "https://github.com/openstack/keystone/raw/master/keystone/content/admin/OS-KSCATALOG-admin.wadl" + } + ] + } +} diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/admin/oskscatalog/extension.xml b/openstack-identity-api/src/docbkx/contrib/extensions/admin/oskscatalog/extension.xml new file mode 100644 index 00000000..8664c77f --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/admin/oskscatalog/extension.xml @@ -0,0 +1,15 @@ + + + + Openstack extensions to Keystone v2.0 API enabling Admin Operations + to support Catalog. + + + + diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/admin/raxgrp/extension.json b/openstack-identity-api/src/docbkx/contrib/extensions/admin/raxgrp/extension.json new file mode 100644 index 00000000..6af6d049 --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/admin/raxgrp/extension.json @@ -0,0 +1,19 @@ +{ + "extension":{ + "name": "Rackspace Keystone Group Extensions", + "namespace": "http://docs.rackspace.com/identity/api/ext/RAX-KSGROUP/v1.0", + "alias": "RAX-KSGRP", + "updated": "2011-08-14T13:25:27-06:00", + "description": "Rackspace extensions to Keystone v2.0 API enabling groups.", + "links": [{ + "rel": "describedby", + "type": "application/pdf", + "href": "https://github.com/openstack/keystone/raw/master/keystone/content/admin/RAX-KSGRP-admin-devguide.pdf" + }, + { + "rel": "describedby", + "type": "application/vnd.sun.wadl+xml", + "href": "https://github.com/openstack/keystone/raw/master/keystone/content/admin/RAX-KSGRP-admin.wadl" + }] + } +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/admin/raxgrp/extension.xml b/openstack-identity-api/src/docbkx/contrib/extensions/admin/raxgrp/extension.xml new file mode 100644 index 00000000..22f77faa --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/admin/raxgrp/extension.xml @@ -0,0 +1,15 @@ + + + + Rackspace extensions to Keystone v2.0 API + enabling groups. + + + + diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/admin/raxkey/__init__.py b/openstack-identity-api/src/docbkx/contrib/extensions/admin/raxkey/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/admin/raxkey/extension.json b/openstack-identity-api/src/docbkx/contrib/extensions/admin/raxkey/extension.json new file mode 100644 index 00000000..16e2b5b0 --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/admin/raxkey/extension.json @@ -0,0 +1,20 @@ +{ + "extension":{ + "name": "Rackspace API Key Authentication", + "namespace": "http://docs.rackspace.com/identity/api/ext/RAX-KSKEY/v1.0", + "alias": "RAX-KSKEY", + "updated": "2011-07-13T13:25:27-06:00", + "description": "Rackspace extensions to Keystone v2.0 API enabling API Key authentication.", + "links": [{ + "rel": "describedby", + "type": "application/pdf", + "href": "https://github.com/openstack/keystone/raw/master/keystone/content/admin/RAX-KSKEY-admin-devguide.pdf" + }, + { + "rel": "describedby", + "type": "application/vnd.sun.wadl+xml", + "href": "https://github.com/openstack/keystone/raw/master/keystone/content/admin/RAX-KSKEY-admin.wadl" + } + ] + } +} diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/admin/raxkey/extension.xml b/openstack-identity-api/src/docbkx/contrib/extensions/admin/raxkey/extension.xml new file mode 100644 index 00000000..175d7302 --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/admin/raxkey/extension.xml @@ -0,0 +1,15 @@ + + + + Rackspace extensions to Keystone v2.0 API + enabling API Key authentication. + + + + diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/admin/raxkey/frontend.py b/openstack-identity-api/src/docbkx/contrib/extensions/admin/raxkey/frontend.py new file mode 100644 index 00000000..ccd47439 --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/admin/raxkey/frontend.py @@ -0,0 +1,99 @@ +#!/usr/bin/env python +# vim: tabstop=4 shiftwidth=4 softtabstop=4 +# +# Copyright (c) 2010-2011 OpenStack, LLC. +# +# 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. + +""" +RACKSPACE API KEY EXTENSION + +This WSGI component +- detects calls with extensions in them. +- processes the necessary components +""" + +import os +import json +from lxml import etree +from webob.exc import Request, Response + +EXTENSION_ALIAS = "RAX-KSKEY-admin" + + +class FrontEndFilter(object): + """API Key Middleware that handles authentication with API Key""" + + def __init__(self, app, conf): + """ Common initialization code """ + print "Starting the %s extension" % EXTENSION_ALIAS + self.conf = conf + self.app = app + + def __call__(self, env, start_response): + """ Handle incoming request. Transform. And send downstream. """ + request = Request(env) + if request.path == "/extensions": + if env['KEYSTONE_API_VERSION'] == '2.0': + request = Request(env) + response = request.get_response(self.app) + if response.status_int == 200: + if response.content_type == 'application/json': + #load json for this extension from file + thisextension = open(os.path.join( + os.path.dirname(__file__), + "extension.json")).read() + thisextensionjson = json.loads(thisextension) + + #load json in response + body = json.loads(response.body) + extensionsarray = body["extensions"]["values"] + + #add this extension and return the response + extensionsarray.append(thisextensionjson) + newresp = Response( + content_type='application/json', + body=json.dumps(body)) + return newresp(env, start_response) + elif response.content_type == 'application/xml': + #load xml for this extension from file + thisextensionxml = etree.parse(os.path.join( + os.path.dirname(__file__), + "extension.xml")).getroot() + #load xml being returned in response + body = etree.fromstring(response.body) + + #add this extension and return the response + body.append(thisextensionxml) + newresp = Response( + content_type='application/xml', + body=etree.tostring(body)) + return newresp(env, start_response) + + # return the response + return response(env, start_response) + + #default action, bypass + return self.app(env, start_response) + + +def filter_factory(global_conf, **local_conf): + """Returns a WSGI filter app for use with paste.deploy.""" + conf = global_conf.copy() + conf.update(local_conf) + + def ext_filter(app): + """Closure to return""" + return FrontEndFilter(app, conf) + return ext_filter diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/service/__init__.py b/openstack-identity-api/src/docbkx/contrib/extensions/service/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/service/osec2/__init__.py b/openstack-identity-api/src/docbkx/contrib/extensions/service/osec2/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/service/osec2/extension.json b/openstack-identity-api/src/docbkx/contrib/extensions/service/osec2/extension.json new file mode 100644 index 00000000..78054933 --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/service/osec2/extension.json @@ -0,0 +1,16 @@ +{ + "extension":{ + "name": "OpenStack EC2 authentication Extension", + "namespace": "http://docs.openstack.org/identity/api/ext/OS-KSEC2/v1.0", + "alias": "OS-KSEC2", + "updated": "2011-08-25T09:50:00-00:00", + "description": "Adds the capability to support EC2 style authentication.", + "links": [ + { + "rel": "describedby", + "type": "application/pdf", + "href": "https://github.com/openstack/keystone/raw/master/keystone/content/service/OS-KSEC2-service-devguide.pdf" + } + ] + } +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/service/osec2/extension.xml b/openstack-identity-api/src/docbkx/contrib/extensions/service/osec2/extension.xml new file mode 100644 index 00000000..0f8307f2 --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/service/osec2/extension.xml @@ -0,0 +1,16 @@ + + + + + Adds the capability to support EC2 style authentication. + + + + + diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/service/osec2/frontend.py b/openstack-identity-api/src/docbkx/contrib/extensions/service/osec2/frontend.py new file mode 100644 index 00000000..c461466a --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/service/osec2/frontend.py @@ -0,0 +1,99 @@ +#!/usr/bin/env python +# vim: tabstop=4 shiftwidth=4 softtabstop=4 +# +# Copyright (c) 2010-2011 OpenStack, LLC. +# +# 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. + +""" +RACKSPACE API KEY EXTENSION + +This WSGI component +- detects calls with extensions in them. +- processes the necessary components +""" + +import os +import json +from lxml import etree +from webob.exc import Request, Response + +EXTENSION_ALIAS = "RAX-KEY" + + +class FrontEndFilter(object): + """API Key Middleware that handles authentication with API Key""" + + def __init__(self, app, conf): + """ Common initialization code """ + print "Starting the %s extension" % EXTENSION_ALIAS + self.conf = conf + self.app = app + + def __call__(self, env, start_response): + """ Handle incoming request. Transform. And send downstream. """ + request = Request(env) + if request.path == "/extensions": + if env['KEYSTONE_API_VERSION'] == '2.0': + request = Request(env) + response = request.get_response(self.app) + if response.status_int == 200: + if response.content_type == 'application/json': + #load json for this extension from file + thisextension = open(os.path.join( + os.path.dirname(__file__), + "extension.json")).read() + thisextensionjson = json.loads(thisextension) + + #load json in response + body = json.loads(response.body) + extensionsarray = body["extensions"]["values"] + + #add this extension and return the response + extensionsarray.append(thisextensionjson) + newresp = Response( + content_type='application/json', + body=json.dumps(body)) + return newresp(env, start_response) + elif response.content_type == 'application/xml': + #load xml for this extension from file + thisextensionxml = etree.parse(os.path.join( + os.path.dirname(__file__), + "extension.xml")).getroot() + #load xml being returned in response + body = etree.fromstring(response.body) + + #add this extension and return the response + body.append(thisextensionxml) + newresp = Response( + content_type='application/xml', + body=etree.tostring(body)) + return newresp(env, start_response) + + # return the response + return response(env, start_response) + + #default action, bypass + return self.app(env, start_response) + + +def filter_factory(global_conf, **local_conf): + """Returns a WSGI filter app for use with paste.deploy.""" + conf = global_conf.copy() + conf.update(local_conf) + + def ext_filter(app): + """Closure to return""" + return FrontEndFilter(app, conf) + return ext_filter diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/service/raxgrp/__init__.py b/openstack-identity-api/src/docbkx/contrib/extensions/service/raxgrp/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/service/raxgrp/api.py b/openstack-identity-api/src/docbkx/contrib/extensions/service/raxgrp/api.py new file mode 100755 index 00000000..ef9e7fd5 --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/service/raxgrp/api.py @@ -0,0 +1,140 @@ +# vim: tabstop=4 shiftwidth=4 softtabstop=4 + +# Copyright 2010 OpenStack LLC. +# All Rights Reserved. +# +# 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. + +from keystone.backends.api import BaseUserAPI + + +#Base APIs +class RAXEXTBaseUserAPI(BaseUserAPI): + + def get_by_group(self, user_id, group_id): + raise NotImplementedError + + def tenant_group(self, values): + raise NotImplementedError + + def tenant_group_delete(self, id, group_id): + raise NotImplementedError + + def get_groups(self, id): + raise NotImplementedError + + def users_tenant_group_get_page(self, group_id, marker, limit): + raise NotImplementedError + + def users_tenant_group_get_page_markers(self, group_id, marker, limit): + raise NotImplementedError + + def get_group_by_tenant(self, id): + raise NotImplementedError + + def delete_tenant_user(self, id, tenant_id): + raise NotImplementedError + + def users_get_by_tenant(self, user_id, tenant_id): + raise NotImplementedError + + def user_role_add(self, values): + raise NotImplementedError + + def user_get_update(self, id): + raise NotImplementedError + + def users_get_page(self, marker, limit): + raise NotImplementedError + + def users_get_page_markers(self, marker, limit): + raise NotImplementedError + + def users_get_by_tenant_get_page(self, tenant_id, marker, limit): + raise NotImplementedError + + def users_get_by_tenant_get_page_markers(self, tenant_id, marker, limit): + raise NotImplementedError + + def check_password(self, user, password): + raise NotImplementedError + + +class RAXEXTBaseTenantGroupAPI(object): + def create(self, values): + raise NotImplementedError + + def is_empty(self, id): + raise NotImplementedError + + def get(self, id, tenant): + raise NotImplementedError + + def get_page(self, tenant_id, marker, limit): + raise NotImplementedError + + def get_page_markers(self, tenant_id, marker, limit): + raise NotImplementedError + + def update(self, id, tenant_id, values): + raise NotImplementedError + + def delete(self, id, tenant_id): + raise NotImplementedError + + +class RAXEXTBaseGroupAPI(object): + def get(self, id): + raise NotImplementedError + + def get_users(self, id): + raise NotImplementedError + + def get_all(self): + raise NotImplementedError + + def get_page(self, marker, limit): + raise NotImplementedError + + def get_page_markers(self, marker, limit): + raise NotImplementedError + + def delete(self, id): + raise NotImplementedError + + def get_by_user_get_page(self, user_id, marker, limit): + raise NotImplementedError + + def get_by_user_get_page_markers(self, user_id, marker, limit): + raise NotImplementedError + + +#API +#TODO(Yogi) Refactor all API to separate classes specific to models. +GROUP = RAXEXTBaseGroupAPI() +TENANT_GROUP = RAXEXTBaseTenantGroupAPI() +USER = RAXEXTBaseUserAPI() + + +# Function to dynamically set module references. +def set_value(variable_name, value): + if variable_name == 'group': + global GROUP + GROUP = value + elif variable_name == 'tenant_group': + global TENANT_GROUP + TENANT_GROUP = value + elif variable_name == 'user': + global USER + USER = value diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/service/raxgrp/extension.json b/openstack-identity-api/src/docbkx/contrib/extensions/service/raxgrp/extension.json new file mode 100644 index 00000000..08f34b25 --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/service/raxgrp/extension.json @@ -0,0 +1,14 @@ +{ + "extension":{ + "name": "Rackspace Keystone Group Extensions", + "namespace": "http://docs.rackspace.com/identity/api/ext/RAX-KSGROUP/v1.0", + "alias": "RAX-KSGRP", + "updated": "2011-08-14T13:25:27-06:00", + "description": "Rackspace extensions to Keystone v2.0 API enabling groups.", + "links": [{ + "rel": "describedby", + "type": "application/pdf", + "href": "https://github.com/openstack/keystone/raw/master/keystone/content/service/RAX-KSGRP-service-devguide.pdf" + }] + } +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/service/raxgrp/extension.xml b/openstack-identity-api/src/docbkx/contrib/extensions/service/raxgrp/extension.xml new file mode 100644 index 00000000..f05855ac --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/service/raxgrp/extension.xml @@ -0,0 +1,13 @@ + + + + Rackspace extensions to Keystone v2.0 API + enabling groups. + + + diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/service/raxkey/__init__.py b/openstack-identity-api/src/docbkx/contrib/extensions/service/raxkey/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/service/raxkey/extension.json b/openstack-identity-api/src/docbkx/contrib/extensions/service/raxkey/extension.json new file mode 100644 index 00000000..9a8e6a15 --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/service/raxkey/extension.json @@ -0,0 +1,14 @@ +{ + "extension":{ + "name": "Rackspace API Key Authentication", + "namespace": "http://docs.rackspace.com/identity/api/ext/RAX-KSKEY/v1.0", + "alias": "RAX-KSKEY", + "updated": "2011-08-14T13:25:27-06:00", + "description": "Rackspace extensions to Keystone v2.0 API enabling API Key authentication.", + "links": [{ + "rel": "describedby", + "type": "application/pdf", + "href": "https://github.com/openstack/keystone/raw/master/keystone/content/service/RAX-KSKEY-service-devguide.pdf" + }] + } +} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/service/raxkey/extension.xml b/openstack-identity-api/src/docbkx/contrib/extensions/service/raxkey/extension.xml new file mode 100644 index 00000000..981cb2bc --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/service/raxkey/extension.xml @@ -0,0 +1,13 @@ + + + + Rackspace extensions to Keystone v2.0 API + enabling API Key authentication. + + + diff --git a/openstack-identity-api/src/docbkx/contrib/extensions/service/raxkey/frontend.py b/openstack-identity-api/src/docbkx/contrib/extensions/service/raxkey/frontend.py new file mode 100644 index 00000000..c461466a --- /dev/null +++ b/openstack-identity-api/src/docbkx/contrib/extensions/service/raxkey/frontend.py @@ -0,0 +1,99 @@ +#!/usr/bin/env python +# vim: tabstop=4 shiftwidth=4 softtabstop=4 +# +# Copyright (c) 2010-2011 OpenStack, LLC. +# +# 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. + +""" +RACKSPACE API KEY EXTENSION + +This WSGI component +- detects calls with extensions in them. +- processes the necessary components +""" + +import os +import json +from lxml import etree +from webob.exc import Request, Response + +EXTENSION_ALIAS = "RAX-KEY" + + +class FrontEndFilter(object): + """API Key Middleware that handles authentication with API Key""" + + def __init__(self, app, conf): + """ Common initialization code """ + print "Starting the %s extension" % EXTENSION_ALIAS + self.conf = conf + self.app = app + + def __call__(self, env, start_response): + """ Handle incoming request. Transform. And send downstream. """ + request = Request(env) + if request.path == "/extensions": + if env['KEYSTONE_API_VERSION'] == '2.0': + request = Request(env) + response = request.get_response(self.app) + if response.status_int == 200: + if response.content_type == 'application/json': + #load json for this extension from file + thisextension = open(os.path.join( + os.path.dirname(__file__), + "extension.json")).read() + thisextensionjson = json.loads(thisextension) + + #load json in response + body = json.loads(response.body) + extensionsarray = body["extensions"]["values"] + + #add this extension and return the response + extensionsarray.append(thisextensionjson) + newresp = Response( + content_type='application/json', + body=json.dumps(body)) + return newresp(env, start_response) + elif response.content_type == 'application/xml': + #load xml for this extension from file + thisextensionxml = etree.parse(os.path.join( + os.path.dirname(__file__), + "extension.xml")).getroot() + #load xml being returned in response + body = etree.fromstring(response.body) + + #add this extension and return the response + body.append(thisextensionxml) + newresp = Response( + content_type='application/xml', + body=etree.tostring(body)) + return newresp(env, start_response) + + # return the response + return response(env, start_response) + + #default action, bypass + return self.app(env, start_response) + + +def filter_factory(global_conf, **local_conf): + """Returns a WSGI filter app for use with paste.deploy.""" + conf = global_conf.copy() + conf.update(local_conf) + + def ext_filter(app): + """Closure to return""" + return FrontEndFilter(app, conf) + return ext_filter diff --git a/openstack-identity-api/src/docbkx/identity-client-api.xml b/openstack-identity-api/src/docbkx/identity-client-api.xml deleted file mode 100644 index e8813c77..00000000 --- a/openstack-identity-api/src/docbkx/identity-client-api.xml +++ /dev/null @@ -1,19 +0,0 @@ - -
- Service API (Client Operations) - The operations described in this chapter allow clients to authenticate and get access - tokens and service endpoints. The following calls are core Keystone Service APIs in version - 2.0: - - - - - - - - -
- diff --git a/openstack-identity-api/src/docbkx/samples/auth.json b/openstack-identity-api/src/docbkx/samples/auth.json deleted file mode 100644 index 76583b02..00000000 --- a/openstack-identity-api/src/docbkx/samples/auth.json +++ /dev/null @@ -1,67 +0,0 @@ -{ - "auth": { - "token": { - "id": "asdasdasd-adsasdads-asdasdasd-adsadsasd", - "expires": "2010-11-01T03:32:15-05:00" - }, - "serviceCatalog": [ - { - "name": "Cloud Servers", - "type": "compute", - "endpoints": [ - { - "publicURL": "https://compute.north.host/v1/1234", - "internalURL": "https://compute.north.host/v1/1234", - "region": "North", - "tenantId": "1234", - "versionId": "1.0", - "versionInfo": "https://compute.north.host/v1.0/", - "versionList": "https://compute.north.host/" - }, { - "publicURL": "https://compute.north.host/v1.1/3456", - "internalURL": "https://compute.north.host/v1.1/3456", - "region": "North", - "tenantId": "3456", - "versionId": "1.1", - "versionInfo": "https://compute.north.host/v1.1/", - "versionList": "https://compute.north.host/" - } - ] - }, { - "name": "Cloud Files", - "type": "object-store", - "endpoints": [ - { - "publicURL": "https://compute.north.host/v1/blah-blah", - "internalURL": "https://compute.north.host/v1/blah-blah", - "region": "South", - "tenantId": "1234", - "versionId": "1.0", - "versionInfo": "uri", - "versionList": "uri" - }, { - "publicURL": "https://compute.north.host/v1.1/blah-blah", - "internalURL": "https://compute.north.host/v1.1/blah-blah", - "region": "South", - "tenantId": "3456", - "versionId": "1.1", - "versionInfo": "https://compute.north.host/v1.1/", - "versionList": "https://compute.north.host/" - } - ], - "endpoint_links": [ - { - "rel": "next", - "href": "https://identity.north.host/v2.0/endpoints?marker=2" - } - ] - } - ], - "serviceCatalog_links": [ - { - "rel": "next", - "href": "https://identity.host/v2.0/endpoints?session=2hfh8Ar&marker=2" - } - ] - } -} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/samples/auth_credentials-OS-EC2.json b/openstack-identity-api/src/docbkx/samples/auth_credentials-OS-EC2.json deleted file mode 100644 index 93461cea..00000000 --- a/openstack-identity-api/src/docbkx/samples/auth_credentials-OS-EC2.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "auth": { - "OS-EC2-ec2Credentials": { - "username": "test_user", - "secret": "aaaaa", - "signature": "bbb", - }, - "tenantId": "77654" - } -} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/samples/auth_credentials-RAX-KEY.json b/openstack-identity-api/src/docbkx/samples/auth_credentials-RAX-KEY.json deleted file mode 100644 index adc7507c..00000000 --- a/openstack-identity-api/src/docbkx/samples/auth_credentials-RAX-KEY.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "auth": { - "RAX-KEY:apikeyCredentials": { - "username": "test_user", - "apikey": "aaaaa-bbbbb-ccccc-12345678" - } - } -} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/samples/auth_credentials-RAX-KEY.xml b/openstack-identity-api/src/docbkx/samples/auth_credentials-RAX-KEY.xml deleted file mode 100644 index d8529896..00000000 --- a/openstack-identity-api/src/docbkx/samples/auth_credentials-RAX-KEY.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - diff --git a/openstack-identity-api/src/docbkx/samples/auth_credentials.json b/openstack-identity-api/src/docbkx/samples/auth_credentials.json deleted file mode 100644 index 282f321d..00000000 --- a/openstack-identity-api/src/docbkx/samples/auth_credentials.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "auth": { - "passwordCredentials": { - "username": "test_user", - "password": "mypass" - }, - "tenantId": "1234" - } -} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/samples/auth_credentials.xml b/openstack-identity-api/src/docbkx/samples/auth_credentials.xml deleted file mode 100644 index a02c7c8e..00000000 --- a/openstack-identity-api/src/docbkx/samples/auth_credentials.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/samples/choices.json b/openstack-identity-api/src/docbkx/samples/choices.json deleted file mode 100644 index 9f1783c1..00000000 --- a/openstack-identity-api/src/docbkx/samples/choices.json +++ /dev/null @@ -1,67 +0,0 @@ -{ - "choices": { - "values": [ - { - "id": "v1.0", - "status": "DEPRECATED", - "links": [ - { - "rel": "self", - "href": "http://identity.api.openstack.org/v1.0" - } - ], - "media-types": { - "values": [ - { - "base": "application/xml", - "type": "application/vnd.openstack.identity+xml;version=1.0" - }, { - "base": "application/json", - "type": "application/vnd.openstack.identity+json;version=1.0" - } - ] - } - }, { - "id": "v1.1", - "status": "CURRENT", - "links": [ - { - "rel": "self", - "href": "http://identity.api.openstack.org/v1.1" - } - ], - "media-types": { - "values": [ - { - "base": "application/xml", - "type": "application/vnd.openstack.identity+xml;version=1.1" - }, { - "base": "application/json", - "type": "application/vnd.openstack.identity+json;version=1.1" - } - ] - } - }, { - "id": "v2.0", - "status": "BETA", - "links": [ - { - "rel": "self", - "href": "http://identity.api.openstack.org/v2.0" - } - ], - "media-types": { - "values": [ - { - "base": "application/xml", - "type": "application/vnd.openstack.identity+xml;version=2.0" - }, { - "base": "application/json", - "type": "application/vnd.openstack.identity+json;version=2.0" - } - ] - } - } - ] - } -} diff --git a/openstack-identity-api/src/docbkx/samples/endpoint.json b/openstack-identity-api/src/docbkx/samples/endpoint.json deleted file mode 100644 index e3b2bb21..00000000 --- a/openstack-identity-api/src/docbkx/samples/endpoint.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "endpoint": { - "id": 3, - "href": "https://auth.keystone.com/v2.0/endpoints/3" - } -} diff --git a/openstack-identity-api/src/docbkx/samples/endpoint.xml b/openstack-identity-api/src/docbkx/samples/endpoint.xml deleted file mode 100644 index 6fabeaff..00000000 --- a/openstack-identity-api/src/docbkx/samples/endpoint.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - diff --git a/openstack-identity-api/src/docbkx/samples/endpointTemplate.json b/openstack-identity-api/src/docbkx/samples/endpointTemplate.json deleted file mode 100644 index fc75a0a1..00000000 --- a/openstack-identity-api/src/docbkx/samples/endpointTemplate.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "endpointTemplate": { - "id": 1, - "region": "North", - "global": true, - "type": "compute", - "publicURL": "https://compute.north.public.com/v1", - "internalURL": "https://compute.north.internal.com/v1", - "versionId": "1", - "versionInfo": "https://compute.north.public.com/v1/", - "versionList": "https://compute.north.public.com/", - "enabled": true - } -} diff --git a/openstack-identity-api/src/docbkx/samples/endpointTemplates.json b/openstack-identity-api/src/docbkx/samples/endpointTemplates.json deleted file mode 100644 index 77f96ef9..00000000 --- a/openstack-identity-api/src/docbkx/samples/endpointTemplates.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "endpointsTemplates": [ - { - "id": 1, - "region": "North", - "global": true, - "type": "compute", - "publicURL": "https://compute.north.public.com/v1", - "internalURL": "https://compute.north.internal.com/v1", - "versionId": "1", - "versionInfo": "https://compute.north.public.com/v1/", - "versionList": "https://compute.north.public.com/", - "enabled": true - }, { - "id": 2, - "region": "South", - "serviceName": "compute", - "publicURL": "https://compute.south.public.com/v1", - "internalURL": "https://compute.south.internal.com/v1", - "versionId": "1", - "versionInfo": "https://compute.south.public.com/v1/", - "versionList": "https://compute.south.public.com/", - "enabled": false - }, { - "id": 3, - "region": "North", - "global": true, - "serviceName": "object-store", - "publicURL": "https://object-store.north.public.com/v1.0", - "versionId": "1.0", - "versionInfo": "https://object-store.north.public.com/v1.0/", - "versionList": "https://object-store.north.public.com/", - "enabled": true - }, { - "id": 4, - "region": "South", - "serviceName": "object-store", - "publicURL": "https://object-store.south.public.com/v2", - "versionId": "2", - "versionInfo": "https://object-store.south.public.com/v2/", - "versionList": "https://object-store.south.public.com/", - "enabled": true - }, { - "id": 5, - "global": true, - "serviceName": "OS-DNS:DNS", - "publicURL": "https://dns.public.com/v3.2", - "versionId": "1.0", - "versionInfo": "https://dns.public.com/v1.0/", - "versionList": "https://dns.public.com/", - "enabled": true - } - ] -} diff --git a/openstack-identity-api/src/docbkx/samples/endpoints.json b/openstack-identity-api/src/docbkx/samples/endpoints.json deleted file mode 100644 index 951a6228..00000000 --- a/openstack-identity-api/src/docbkx/samples/endpoints.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "endpoints": [ - { - "id": 1, - "href": "https://auth.keystone.com/v2.0/endpoints/1" - }, { - "id": 2, - "href": "https://auth.keystone.com/v2.0/endpoints/2" - }, { - "id": 3, - "href": "https://auth.keystone.com/v2.0/endpoints/3" - }, { - "id": 4, - "href": "https://auth.keystone.com/v2.0/endpoints/4" - }, { - "id": 5, - "href": "https://auth.keystone.com/v2.0/endpoints/5" - } - ] -} diff --git a/openstack-identity-api/src/docbkx/samples/endpoints.xml b/openstack-identity-api/src/docbkx/samples/endpoints.xml deleted file mode 100644 index df8480f9..00000000 --- a/openstack-identity-api/src/docbkx/samples/endpoints.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - - - - diff --git a/openstack-identity-api/src/docbkx/samples/extensions.json b/openstack-identity-api/src/docbkx/samples/extensions.json deleted file mode 100644 index 18803f07..00000000 --- a/openstack-identity-api/src/docbkx/samples/extensions.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "extensions": { - "values": [ - { - "name": "Reset Password Extension", - "namespace": "http://docs.rackspacecloud.com/identity/api/ext/rpe/v2.0", - "alias": "RS-RPE", - "updated": "2011-01-22T13:25:27-06:00", - "description": "Adds the capability to reset a user's password. The user is emailed when the password has been reset.", - "links": [ - { - "rel": "describedby", - "type": "application/pdf", - "href": "http://docs.rackspacecloud.com/identity/api/ext/identity-rpe-20111111.pdf" - }, { - "rel": "describedby", - "type": "application/vnd.sun.wadl+xml", - "href": "http://docs.rackspacecloud.com/identity/api/ext/identity-rpe.wadl" - } - ] - }, { - "name": "User Metadata Extension", - "namespace": "http://docs.rackspacecloud.com/identity/api/ext/meta/v2.0", - "alias": "RS-META", - "updated": "2011-01-12T11:22:33-06:00", - "description": "Allows associating arbritrary metadata with a user.", - "links": [ - { - "rel": "describedby", - "type": "application/pdf", - "href": "http://docs.rackspacecloud.com/identity/api/ext/identity-meta-20111201.pdf" - }, { - "rel": "describedby", - "type": "application/vnd.sun.wadl+xml", - "href": "http://docs.rackspacecloud.com/identity/api/ext/identity-meta.wadl" - } - ] - } - ] - } -} diff --git a/openstack-identity-api/src/docbkx/samples/getuser-1.json b/openstack-identity-api/src/docbkx/samples/getuser-1.json deleted file mode 100644 index 1439651d..00000000 --- a/openstack-identity-api/src/docbkx/samples/getuser-1.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "user": { - "roles": { - "values": [ - { - "tenantId": "1234", - "id": "Admin" - }, { - "tenantId": "1234", - "id": "DBUser" - } - ], - "links": [ - { - "rel": "next", - "href": "http://identity.api.openstack.org/v2.0/tenants/1234/users/u1000/roles?marker=Super" - } - ] - }, - "id": "u1000", - "username": "jqsmith", - "email": "john.smith@example.org", - "enabled": true - } -} diff --git a/openstack-identity-api/src/docbkx/samples/role.xml b/openstack-identity-api/src/docbkx/samples/role.xml deleted file mode 100644 index 48fe20d8..00000000 --- a/openstack-identity-api/src/docbkx/samples/role.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - diff --git a/openstack-identity-api/src/docbkx/samples/roles.json b/openstack-identity-api/src/docbkx/samples/roles.json deleted file mode 100644 index a55481bb..00000000 --- a/openstack-identity-api/src/docbkx/samples/roles.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "roles": [ - { - "id": "Admin", - "tenantId": "1234", - "description": "All access" - }, { - "id": "Guest", - "tenantId": "3456", - "description": "Guest Access" - } - ] -} diff --git a/openstack-identity-api/src/docbkx/samples/roles.xml b/openstack-identity-api/src/docbkx/samples/roles.xml deleted file mode 100644 index 952c7b7c..00000000 --- a/openstack-identity-api/src/docbkx/samples/roles.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/samples/service.json b/openstack-identity-api/src/docbkx/samples/service.json deleted file mode 100644 index 1b31aac4..00000000 --- a/openstack-identity-api/src/docbkx/samples/service.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "service": { - "id": "nova", - "type": "compute", - "description": "A description ..." - } -} diff --git a/openstack-identity-api/src/docbkx/samples/service.xml b/openstack-identity-api/src/docbkx/samples/service.xml deleted file mode 100644 index f79a6724..00000000 --- a/openstack-identity-api/src/docbkx/samples/service.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - diff --git a/openstack-identity-api/src/docbkx/samples/services.json b/openstack-identity-api/src/docbkx/samples/services.json deleted file mode 100644 index 6a0ac8e2..00000000 --- a/openstack-identity-api/src/docbkx/samples/services.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "services": [ - { - "id": "nova", - "type": "compute", - "description": "Computers in the Cloud" - }, { - "id": "glance", - "type": "image-service", - "description": "Server Images" - } - ] -} diff --git a/openstack-identity-api/src/docbkx/samples/services.xml b/openstack-identity-api/src/docbkx/samples/services.xml deleted file mode 100644 index dd5327ef..00000000 --- a/openstack-identity-api/src/docbkx/samples/services.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/samples/tenants-1.json b/openstack-identity-api/src/docbkx/samples/tenants-1.json deleted file mode 100644 index 4f845760..00000000 --- a/openstack-identity-api/src/docbkx/samples/tenants-1.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "tenants": { - "values": [ - { - "id": "1234", - "name": "ACME corp", - "description": "A description ...", - "enabled": true - } - ], - "links": [ - { - "rel": "next", - "href": "http://identity.api.openstack.org/v2.0/tenants?limit=1&marker=1234" - } - ] - } -} diff --git a/openstack-identity-api/src/docbkx/samples/tenants-2.json b/openstack-identity-api/src/docbkx/samples/tenants-2.json deleted file mode 100644 index c966c505..00000000 --- a/openstack-identity-api/src/docbkx/samples/tenants-2.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "tenants": { - "values": [ - { - "id": "3645", - "name": "Iron Works", - "description": "A description ...", - "enabled": true - } - ], - "links": [ - { - "rel": "next", - "href": "http://identity.api.openstack.org/v2.0/tenants?limit=1&marker=3645" - }, { - "rel": "previous", - "href": "http://identity.api.openstack.org/v2.0/tenants?limit=1" - } - ] - } -} diff --git a/openstack-identity-api/src/docbkx/samples/tenants-3.json b/openstack-identity-api/src/docbkx/samples/tenants-3.json deleted file mode 100644 index 8546234f..00000000 --- a/openstack-identity-api/src/docbkx/samples/tenants-3.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "tenants": { - "values": [ - { - "id": "9999", - "name": "Bigz", - "description": "A description ...", - "enabled": true - } - ], - "links": [ - { - "rel": "previous", - "href": "http://identity.api.openstack.org/v2.0/tenants?limit=1&marker=1234" - } - ] - } -} diff --git a/openstack-identity-api/src/docbkx/samples/tenants.json b/openstack-identity-api/src/docbkx/samples/tenants.json deleted file mode 100644 index c0f2b5d6..00000000 --- a/openstack-identity-api/src/docbkx/samples/tenants.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "tenants": { - "values": [ - { - "id": "1234", - "name": "ACME Corp", - "description": "A description ...", - "enabled": true - }, { - "id": "3456", - "name": "Iron Works", - "description": "A description ...", - "enabled": true - } - ] - } -} \ No newline at end of file diff --git a/openstack-identity-api/src/docbkx/samples/validatetoken.json b/openstack-identity-api/src/docbkx/samples/validatetoken.json deleted file mode 100644 index 6f655374..00000000 --- a/openstack-identity-api/src/docbkx/samples/validatetoken.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "auth": { - "token": { - "expires": "2010-11-01T03:32:15-05:00", - "id": "ab48a9efdfedb23ty3494" - }, - "user": { - "username": "jqsmith", - "roles": [ - { - "id": "Admin", - "tenantId": "one" - }, { - "id": "compute:cloud_admin" - } - ] - } - } -} diff --git a/openstack-identity-api/src/docbkx/samples/validatetoken.xml b/openstack-identity-api/src/docbkx/samples/validatetoken.xml deleted file mode 100644 index 5987ff46..00000000 --- a/openstack-identity-api/src/docbkx/samples/validatetoken.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - diff --git a/openstack-identity-api/src/docbkx/samples/versions.json b/openstack-identity-api/src/docbkx/samples/versions.json deleted file mode 100644 index 4c90ea05..00000000 --- a/openstack-identity-api/src/docbkx/samples/versions.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "versions": { - "values": [ - { - "id": "v1.0", - "status": "DEPRECATED", - "updated": "2009-10-09T11:30:00Z", - "links": [ - { - "rel": "self", - "href": "http://identity.api.openstack.org/v1.0/" - } - ] - }, { - "id": "v1.1", - "status": "CURRENT", - "updated": "2010-12-12T18:30:02.25Z", - "links": [ - { - "rel": "self", - "href": "http://identity.api.openstack.org/v1.1/" - } - ] - }, { - "id": "v2.0", - "status": "BETA", - "updated": "2011-05-27T20:22:02.25Z", - "links": [ - { - "rel": "self", - "href": "http://identity.api.openstack.org/v2.0/" - } - ] - } - ] - } -}