mirror of
https://github.com/vmware/vsphere-automation-sdk-python.git
synced 2024-11-22 09:39:58 -05:00
Merge pull request #22 from pgbidkar/master
SSO samples are failing with 6.0 vCenter server. com.vmware.vapi.vcen…
This commit is contained in:
commit
8fd515441d
@ -13,7 +13,6 @@
|
|||||||
* NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
|
* NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
|
||||||
__author__ = 'VMware, Inc.'
|
__author__ = 'VMware, Inc.'
|
||||||
__copyright__ = 'Copyright 2017 VMware, Inc. All rights reserved.'
|
__copyright__ = 'Copyright 2017 VMware, Inc. All rights reserved.'
|
||||||
__vcenter_version__ = '6.0+'
|
__vcenter_version__ = '6.0+'
|
||||||
@ -22,11 +21,11 @@ from pprint import pprint
|
|||||||
import requests
|
import requests
|
||||||
|
|
||||||
from com.vmware.cis_client import Session
|
from com.vmware.cis_client import Session
|
||||||
from com.vmware.vcenter_client import Datacenter
|
|
||||||
from vmware.vapi.lib.connect import get_requests_connector
|
from vmware.vapi.lib.connect import get_requests_connector
|
||||||
from vmware.vapi.security.session import create_session_security_context
|
from vmware.vapi.security.session import create_session_security_context
|
||||||
from vmware.vapi.security.sso import create_saml_bearer_security_context
|
from vmware.vapi.security.sso import create_saml_bearer_security_context
|
||||||
from vmware.vapi.stdlib.client.factories import StubConfigurationFactory
|
from vmware.vapi.stdlib.client.factories import StubConfigurationFactory
|
||||||
|
from com.vmware.cis.tagging_client import (Category, CategoryModel)
|
||||||
|
|
||||||
from samples.vsphere.common.ssl_helper import get_unverified_context
|
from samples.vsphere.common.ssl_helper import get_unverified_context
|
||||||
from samples.vsphere.common.vapiconnect import create_unverified_session
|
from samples.vsphere.common.vapiconnect import create_unverified_session
|
||||||
@ -47,6 +46,8 @@ class EmbeddedPscSsoWorkflow(object):
|
|||||||
self.session = None
|
self.session = None
|
||||||
self.session_id = None
|
self.session_id = None
|
||||||
self.skip_verification = False
|
self.skip_verification = False
|
||||||
|
self.category_svc = None
|
||||||
|
self.category_id = None
|
||||||
|
|
||||||
def setup(self):
|
def setup(self):
|
||||||
self.server, self.username, self.password, _, self.skip_verification = \
|
self.server, self.username, self.password, _, self.skip_verification = \
|
||||||
@ -100,14 +101,31 @@ class EmbeddedPscSsoWorkflow(object):
|
|||||||
session_sec_ctx = create_session_security_context(self.session_id)
|
session_sec_ctx = create_session_security_context(self.session_id)
|
||||||
connector.set_security_context(session_sec_ctx)
|
connector.set_security_context(session_sec_ctx)
|
||||||
|
|
||||||
print('\nStep 3: List available datacenters using the vAPI services')
|
# Create and Delete TagCategory to Verify connection is successful
|
||||||
|
print('\nStep 3: Creating and Deleting Tag Category...\n')
|
||||||
|
self.category_svc = Category(stub_config)
|
||||||
|
|
||||||
datacenter_svc = Datacenter(stub_config)
|
self.category_id = self.create_tag_category('TestTagCat', 'TestTagDesc',
|
||||||
pprint(datacenter_svc.list())
|
CategoryModel.Cardinality.MULTIPLE)
|
||||||
|
assert self.category_id is not None
|
||||||
|
print('Tag category created; Id: {0}\n'.format(self.category_id))
|
||||||
|
|
||||||
|
# Delete TagCategory
|
||||||
|
self.category_svc.delete(self.category_id)
|
||||||
|
|
||||||
self.session.delete()
|
self.session.delete()
|
||||||
print('VAPI session disconnected successfully...')
|
print('VAPI session disconnected successfully...')
|
||||||
|
|
||||||
|
def create_tag_category(self, name, description, cardinality):
|
||||||
|
"""create a category. User who invokes this needs create category privilege."""
|
||||||
|
create_spec = self.category_svc.CreateSpec()
|
||||||
|
create_spec.name = name
|
||||||
|
create_spec.description = description
|
||||||
|
create_spec.cardinality = cardinality
|
||||||
|
associableTypes = set()
|
||||||
|
create_spec.associable_types = associableTypes
|
||||||
|
return self.category_svc.create(create_spec)
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
embedded_psc_sso_workflow = EmbeddedPscSsoWorkflow()
|
embedded_psc_sso_workflow = EmbeddedPscSsoWorkflow()
|
||||||
|
@ -25,12 +25,12 @@ from pprint import pprint
|
|||||||
from six.moves.urllib import request, parse
|
from six.moves.urllib import request, parse
|
||||||
|
|
||||||
from com.vmware.cis_client import Session
|
from com.vmware.cis_client import Session
|
||||||
from com.vmware.vcenter_client import Datacenter
|
|
||||||
|
|
||||||
from vmware.vapi.lib.connect import get_requests_connector
|
from vmware.vapi.lib.connect import get_requests_connector
|
||||||
from vmware.vapi.security.session import create_session_security_context
|
from vmware.vapi.security.session import create_session_security_context
|
||||||
from vmware.vapi.security.sso import create_saml_bearer_security_context
|
from vmware.vapi.security.sso import create_saml_bearer_security_context
|
||||||
from vmware.vapi.stdlib.client.factories import StubConfigurationFactory
|
from vmware.vapi.stdlib.client.factories import StubConfigurationFactory
|
||||||
|
from com.vmware.cis.tagging_client import (Category, CategoryModel)
|
||||||
|
|
||||||
from samples.vsphere.common import sso
|
from samples.vsphere.common import sso
|
||||||
from samples.vsphere.common.lookup_service_helper import LookupServiceHelper
|
from samples.vsphere.common.lookup_service_helper import LookupServiceHelper
|
||||||
@ -56,6 +56,8 @@ class ExternalPscSsoWorkflow(object):
|
|||||||
self.argparser = None
|
self.argparser = None
|
||||||
self.mgmtinstancename = None
|
self.mgmtinstancename = None
|
||||||
self.skip_verification = False
|
self.skip_verification = False
|
||||||
|
self.category_svc = None
|
||||||
|
self.category_id = None
|
||||||
|
|
||||||
def options(self):
|
def options(self):
|
||||||
self.argparser = argparse.ArgumentParser(description=self.__doc__)
|
self.argparser = argparse.ArgumentParser(description=self.__doc__)
|
||||||
@ -170,10 +172,30 @@ class ExternalPscSsoWorkflow(object):
|
|||||||
session_sec_ctx = create_session_security_context(self.session_id)
|
session_sec_ctx = create_session_security_context(self.session_id)
|
||||||
connector.set_security_context(session_sec_ctx)
|
connector.set_security_context(session_sec_ctx)
|
||||||
|
|
||||||
print('\nStep 6: List available datacenters using the vAPI service')
|
# Create and Delete TagCategory to Verify connection is successful
|
||||||
|
print('\nStep 6: Creating and Deleting Tag Category...\n')
|
||||||
|
self.category_svc = Category(stub_config)
|
||||||
|
|
||||||
datacenter_svc = Datacenter(stub_config)
|
self.category_id = self.create_tag_category('TestTagCat', 'TestTagDesc',
|
||||||
pprint(datacenter_svc.list())
|
CategoryModel.Cardinality.MULTIPLE)
|
||||||
|
assert self.category_id is not None
|
||||||
|
print('Tag category created; Id: {0}\n'.format(self.category_id))
|
||||||
|
|
||||||
|
# Delete TagCategory
|
||||||
|
self.category_svc.delete(self.category_id)
|
||||||
|
|
||||||
|
self.session.delete()
|
||||||
|
print('VAPI session disconnected successfully...')
|
||||||
|
|
||||||
|
def create_tag_category(self, name, description, cardinality):
|
||||||
|
"""create a category. User who invokes this needs create category privilege."""
|
||||||
|
create_spec = self.category_svc.CreateSpec()
|
||||||
|
create_spec.name = name
|
||||||
|
create_spec.description = description
|
||||||
|
create_spec.cardinality = cardinality
|
||||||
|
associableTypes = set()
|
||||||
|
create_spec.associable_types = associableTypes
|
||||||
|
return self.category_svc.create(create_spec)
|
||||||
|
|
||||||
self.session.delete()
|
self.session.delete()
|
||||||
print('VAPI session disconnected successfully...')
|
print('VAPI session disconnected successfully...')
|
||||||
|
Loading…
Reference in New Issue
Block a user