def _login(self): host = self.config['host'] user = self.config['user'] passwd = self.config['pass'] org = self.config['org'] vdc = self.config.get('vdc') # suppress logging for name in ['urllib3.connectionpool', 'vcd_pysdk.log']: vcd_logger = logging.getLogger(name) vcd_logger.propagate = False vcd_logger.setLevel(logging.WARNING) logging.info("logging in host={}".format(host)) self.client = vcd.Client(host, api_version='29.0', verify_ssl_certs=self.verify_ssl, log_file='log', log_requests=False, log_headers=False, log_bodies=True) self.client.set_highest_supported_version() self.client.set_credentials( vcd.BasicLoginCredentials(user, org, passwd)) # TODO: check logged in ? org_res = self.client.get_org() self.org = vcdOrg(self.client, resource=org_res) logging.info("logged in") self.vdcName = vdc return True
def get_sys_admin_client(api_version: Optional[str]): server_config = get_server_runtime_config() if not api_version: api_version = server_config.get_value_at('service.default_api_version') verify_ssl_certs = server_config.get_value_at('vcd.verify') if not verify_ssl_certs: requests.packages.urllib3.disable_warnings() log_filename = None log_wire = str_to_bool(server_config.get_value_at('service.log_wire')) if log_wire: log_filename = SERVER_DEBUG_WIRELOG_FILEPATH client = vcd_client.Client(uri=server_config.get_value_at('vcd.host'), api_version=api_version, verify_ssl_certs=verify_ssl_certs, log_file=log_filename, log_requests=log_wire, log_headers=log_wire, log_bodies=log_wire) credentials = vcd_client.BasicLoginCredentials( server_config.get_value_at('vcd.username'), shared_constants.SYSTEM_ORG_NAME, server_config.get_value_at('vcd.password')) client.set_credentials(credentials) return client
def get_sys_admin_client(): server_config = get_server_runtime_config() if not server_config['vcd']['verify']: SERVER_LOGGER.warning("InsecureRequestWarning: Unverified HTTPS " "request is being made. Adding certificate " "verification is strongly advised.") requests.packages.urllib3.disable_warnings() log_filename = None log_wire = str_to_bool(server_config['service'].get('log_wire')) if log_wire: log_filename = SERVER_DEBUG_WIRELOG_FILEPATH client = vcd_client.Client( uri=server_config['vcd']['host'], api_version=server_config['vcd']['api_version'], verify_ssl_certs=server_config['vcd']['verify'], log_file=log_filename, log_requests=log_wire, log_headers=log_wire, log_bodies=log_wire) credentials = vcd_client.BasicLoginCredentials( server_config['vcd']['username'], SYSTEM_ORG_NAME, server_config['vcd']['password']) client.set_credentials(credentials) return client
def _create_client_with_credentials(self, api_version): """Create client with[out] explicit API version and login.""" new_client = client.Client(self._host, api_version=api_version, verify_ssl_certs=False) creds = client.BasicLoginCredentials(self._user, self._org, self._pass) new_client.set_credentials(creds) return new_client
def test_0070_flag_invalid_credentials(self): """Invalid credentials result in a VcdException.""" self._logger.debug("TEST: test_0070_flag_invalid_credentials") self._client = client.Client(self._host, verify_ssl_certs=False) creds = client.BasicLoginCredentials(self._user, self._org, '!!!') try: self._client.set_credentials(creds) self.fail("Login succeeded with bad password") except VcdException: self._logger.debug("Received expected exception", exc_info=True)
def test_0030_server_highest_version(self): """User can set connection to highest supported server version.""" self._client = client.Client(self._host, verify_ssl_certs=False) self._client.set_highest_supported_version() creds = client.BasicLoginCredentials(self._user, self._org, self._pass) self._client.set_credentials(creds) server_versions = self._client.get_supported_versions_list() self.assertEqual( self._client.get_api_version(), server_versions[-1], msg="Client version must be at highest server version level")
def test_0080_flag_invalid_host(self): """Invalid host results in an exception.""" unreachable_code = False try: self._client = client.Client("invalid.host.com", verify_ssl_certs=False) creds = client.BasicLoginCredentials(self._user, self._org, self._pass) self._client.set_credentials(creds) except Exception: # We don't care about the exact exception as request/urllib # handling is implementation-dependent and may change. self._logger.debug("Received expected exception", exc_info=True) if unreachable_code: raise Exception("Login succeeded with bad host")
def test_0050_set_logging_parameters(self): """User can set logging parameters to force request logs. Resetting parameters does not change logging because there's only a single appender and it's already set by time this case runs. For now we just confirm that nothing breaks when these parameters are set. """ self._client = client.Client( self._host, verify_ssl_certs=False, log_file='test_0050_set_logging_parameters.log', log_requests=True, log_headers=True, log_bodies=True) creds = client.BasicLoginCredentials(self._user, self._org, self._pass) self._client.set_credentials(creds)