def test_credentials_token_noverify(): expected_headers = {'Authorization': 'Bearer mytoken'} creds = KubeletCredentials({ "verify_tls": "false", "ca_cert": "ca_cert", "client_crt": "ignore_me", "token": "mytoken" }) assert creds.verify() is False assert creds.cert_pair() is None assert creds.headers("https://dummy") == expected_headers # Make sure we don't leak the token over http assert creds.headers("http://dummy") is None instance = {'prometheus_url': 'https://dummy', 'namespace': 'foo'} scraper = OpenMetricsBaseCheck('prometheus', {}, [instance]) scraper_config = scraper.create_scraper_configuration(instance) creds.configure_scraper(scraper_config) assert scraper_config['ssl_ca_cert'] is False assert scraper_config['ssl_cert'] is None assert scraper_config['ssl_private_key'] is None assert scraper_config['extra_headers'] == expected_headers # Make sure we don't leak the token over http scraper_config['prometheus_url'] = "http://dummy" creds.configure_scraper(scraper_config) assert scraper_config['ssl_ca_cert'] is False assert scraper_config['ssl_cert'] is None assert scraper_config['ssl_private_key'] is None assert scraper_config['extra_headers'] == {}
def test_credentials_empty(): creds = KubeletCredentials({}) assert creds.verify() is None assert creds.cert_pair() is None assert creds.headers("https://dummy") is None instance = {'prometheus_url': 'https://dummy', 'namespace': 'foo'} scraper = OpenMetricsBaseCheck('prometheus', {}, [instance]) scraper_config = scraper.create_scraper_configuration(instance) creds.configure_scraper(scraper_config) assert scraper_config['ssl_ca_cert'] is None assert scraper_config['ssl_cert'] is None assert scraper_config['ssl_private_key'] is None assert scraper_config['extra_headers'] == {}
def test_credentials_certificates(): creds = KubeletCredentials({ "verify_tls": "true", "ca_cert": "ca_cert", "client_crt": "crt", "client_key": "key", "token": "ignore_me" }) assert creds.verify() == "ca_cert" assert creds.cert_pair() == ("crt", "key") assert creds.headers("https://dummy") is None instance = {'prometheus_url': 'https://dummy', 'namespace': 'foo'} scraper = OpenMetricsBaseCheck('prometheus', {}, [instance]) scraper_config = scraper.create_scraper_configuration(instance) creds.configure_scraper(scraper_config) assert scraper_config['ssl_ca_cert'] == "ca_cert" assert scraper_config['ssl_cert'] == "crt" assert scraper_config['ssl_private_key'] == "key" assert scraper_config['extra_headers'] == {}