diff --git a/REFERENCE.md b/REFERENCE.md
index 3e275f87..e4d8c85e 100644
--- a/REFERENCE.md
+++ b/REFERENCE.md
@@ -11613,6 +11613,8 @@ The following parameters are available in the `prometheus::server` class:
* [`collect_tag`](#-prometheus--server--collect_tag)
* [`max_open_files`](#-prometheus--server--max_open_files)
* [`usershell`](#-prometheus--server--usershell)
+* [`proxy_server`](#-prometheus--server--proxy_server)
+* [`proxy_type`](#-prometheus--server--proxy_type)
##### `configname`
@@ -12006,6 +12008,22 @@ Data type: `Stdlib::Absolutepath`
Default value: `$prometheus::usershell`
+##### `proxy_server`
+
+Data type: `Optional[String[1]]`
+
+
+
+Default value: `$prometheus::proxy_server`
+
+##### `proxy_type`
+
+Data type: `Optional[Enum['none', 'http', 'https', 'ftp']]`
+
+
+
+Default value: `$prometheus::proxy_type`
+
### `prometheus::snmp_exporter`
This module manages prometheus snmp_exporter
diff --git a/manifests/install.pp b/manifests/install.pp
index 0b1ec826..579fdda8 100644
--- a/manifests/install.pp
+++ b/manifests/install.pp
@@ -25,6 +25,8 @@
creates => "/opt/prometheus-${prometheus::server::version}.${prometheus::server::os}-${prometheus::server::real_arch}/prometheus",
cleanup => true,
extract_command => $prometheus::extract_command,
+ proxy_server => $prometheus::server::proxy_server,
+ proxy_type => $prometheus::server::proxy_type,
}
-> file {
"/opt/prometheus-${prometheus::server::version}.${prometheus::server::os}-${prometheus::server::real_arch}/prometheus":
diff --git a/manifests/server.pp b/manifests/server.pp
index 98e0f318..28355243 100644
--- a/manifests/server.pp
+++ b/manifests/server.pp
@@ -49,6 +49,8 @@
Optional[String[1]] $collect_tag = $prometheus::collect_tag,
Optional[Integer] $max_open_files = $prometheus::max_open_files,
Stdlib::Absolutepath $usershell = $prometheus::usershell,
+ Optional[String[1]] $proxy_server = $prometheus::proxy_server,
+ Optional[Enum['none', 'http', 'https', 'ftp']] $proxy_type = $prometheus::proxy_type,
) inherits prometheus {
if( versioncmp($version, '1.0.0') == -1 ) {
$real_download_url = pick($download_url,
diff --git a/spec/classes/prometheus_spec.rb b/spec/classes/prometheus_spec.rb
index 2887474a..aedc616d 100644
--- a/spec/classes/prometheus_spec.rb
+++ b/spec/classes/prometheus_spec.rb
@@ -15,7 +15,7 @@
'/etc/prometheus/prometheus.yaml'
end
- [{ manage_prometheus_server: true, version: '2.0.0-rc.1', bin_dir: '/usr/local/bin', install_method: 'url', rule_files: ['/etc/prometheus/rules.d/*.rules'] }].each do |parameters|
+ [{ manage_prometheus_server: true, version: '2.0.0-rc.1', bin_dir: '/usr/local/bin', install_method: 'url', rule_files: ['/etc/prometheus/rules.d/*.rules'], proxy_server: 'proxy.test', proxy_type: 'https' }].each do |parameters|
context "with parameters #{parameters}" do
let(:params) do
parameters
@@ -51,7 +51,9 @@
'source' => "https://github.com/prometheus/prometheus/releases/download/v#{prom_version}/prometheus-#{prom_version}.#{prom_os}-#{prom_arch}.tar.gz",
'checksum_verify' => false,
'creates' => "/opt/prometheus-#{prom_version}.#{prom_os}-#{prom_arch}/prometheus",
- 'cleanup' => true
+ 'cleanup' => true,
+ 'proxy_server' => 'proxy.test',
+ 'proxy_type' => 'https'
).that_comes_before("File[/opt/prometheus-#{prom_version}.#{prom_os}-#{prom_arch}/prometheus]")
}