Add tls support for dns endpoints

Add ca_file to tls_config

Change-Id: I58c38cbc2ff1ba9120dfb24a61a73dc8973d74fa
PROD-related: PROD-29177 (PROD:29177)
(cherry picked from commit c216f47d7a361b020b6076a0b7a962907e3efca3)
diff --git a/prometheus/files/server/prometheus.yml b/prometheus/files/server/prometheus.yml
index 7611b97..dae4fe9 100644
--- a/prometheus/files/server/prometheus.yml
+++ b/prometheus/files/server/prometheus.yml
@@ -88,7 +88,8 @@
             'tls_config': {
               'skip_verify': job.get('tls_config', {}).get('skip_verify', False),
               'cert_name': job.get('tls_config', {}).get('cert_name'),
-              'key_name': job.get('tls_config', {}).get('key_name')
+              'key_name': job.get('tls_config', {}).get('key_name'),
+              'ca_file' : job.get('tls_config', {}).get('ca_file')
             }
           }) %}
         {%- endif %}
@@ -137,7 +138,8 @@
     {%- endif %}
     {%- if job.get('tls_config') %}
     tls_config:
-      {% if job.tls_config.get('skip_verify') is defined %}insecure_skip_verify: {{ job.tls_config.skip_verify | lower }}{%- endif %}
+      {% if job.tls_config.get('ca_file') %}ca_file: {{ job.tls_config.ca_file }}{%- endif %}
+      {% if job.tls_config.get('skip_verify') %}insecure_skip_verify: {{ job.tls_config.skip_verify | lower }}{%- endif %}
       {% if job.tls_config.get('cert_name') %}cert_file: {{ server.dir.config_in_container }}/{{ job.tls_config.cert_name }}{%- endif %}
       {% if job.tls_config.get('key_name') %}key_file: {{ server.dir.config_in_container }}/{{ job.tls_config.key_name }}{%- endif %}
     {%- endif %}
@@ -368,6 +370,7 @@
 
 {%- for name, endpoint in dns_endpoints | dictsort %}
   - job_name: {{ endpoint.name }}
+    scheme: {{ endpoint.get("scheme", "http") }}
   {%- if endpoint.scrape_interval is defined %}
     scrape_interval: {{ endpoint.scrape_interval }}
   {%- endif %}
@@ -378,6 +381,13 @@
   {%- endfor %}
       type: {{ endpoint.type }}
       port: {{ endpoint.port }}
+  {%- if endpoint.get('tls_config') %}
+    tls_config:
+      {% if endpoint.tls_config.get('ca_file') %}ca_file: {{ endpoint.tls_config.ca_file }}{%- endif %}
+      {% if endpoint.tls_config.get('skip_verify') %}insecure_skip_verify: {{ endpoint.tls_config.skip_verify | lower }}{%- endif %}
+      {% if endpoint.tls_config.get('cert_name') %}cert_file: {{ server.dir.config_in_container }}/{{ endpoint.tls_config.cert_name }}{%- endif %}
+      {% if endpoint.tls_config.get('key_name') %}key_file: {{ server.dir.config_in_container }}/{{ endpoint.tls_config.key_name }}{%- endif %}
+  {%- endif %}
     relabel_configs:
     {%- if server.config.environment_label is defined %}
     - source_labels: ['instance']