Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat : Add nvidia_gpu_exporter #380

Conversation

zhan9san
Copy link
Contributor

@zhan9san zhan9san commented Jun 7, 2024

No description provided.

@zhan9san zhan9san force-pushed the feature/add-nvidia-gpu-exporter branch from f17516b to 718b7d5 Compare June 7, 2024 09:12
@zhan9san zhan9san changed the title Add nvidia_gpu_exporter feat : Add nvidia_gpu_exporter Jun 7, 2024
Copy link
Contributor

github-actions bot commented Jun 7, 2024

Docs Build 📝

Thank you for contribution!✨

The docs for this PR have been published here:
https://prometheus-community.github.io/ansible/pr/380

You can compare to the docs for the main branch here:
https://prometheus-community.github.io/ansible/branch/main

The docsite for this PR is also available for download as an artifact from this run:
https://github.com/prometheus-community/ansible/actions/runs/11568594066

File changes:

Click to see the diff comparison.

NOTE: only file modifications are shown here. New and deleted files are excluded.
See the file list and check the published docs to see those files.

diff --git a/home/runner/work/ansible/ansible/docsbuild/base/_common_role.html b/home/runner/work/ansible/ansible/docsbuild/head/_common_role.html
index 6c60eca..f5897fb 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/_common_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/_common_role.html
@@ -117,6 +117,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/alertmanager_role.html b/home/runner/work/ansible/ansible/docsbuild/head/alertmanager_role.html
index 4f97446..270f253 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/alertmanager_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/alertmanager_role.html
@@ -99,6 +99,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/bind_exporter_role.html b/home/runner/work/ansible/ansible/docsbuild/head/bind_exporter_role.html
index a968c1e..b456ddd 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/bind_exporter_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/bind_exporter_role.html
@@ -99,6 +99,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/blackbox_exporter_role.html b/home/runner/work/ansible/ansible/docsbuild/head/blackbox_exporter_role.html
index 37b4972..69498fc 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/blackbox_exporter_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/blackbox_exporter_role.html
@@ -99,6 +99,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/cadvisor_role.html b/home/runner/work/ansible/ansible/docsbuild/head/cadvisor_role.html
index be3cdf3..b2120cb 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/cadvisor_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/cadvisor_role.html
@@ -99,6 +99,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/chrony_exporter_role.html b/home/runner/work/ansible/ansible/docsbuild/head/chrony_exporter_role.html
index 7c23540..81b47af 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/chrony_exporter_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/chrony_exporter_role.html
@@ -99,6 +99,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/environment_variables.html b/home/runner/work/ansible/ansible/docsbuild/head/environment_variables.html
index f06c760..55abff7 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/environment_variables.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/environment_variables.html
@@ -86,6 +86,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/fail2ban_exporter_role.html b/home/runner/work/ansible/ansible/docsbuild/head/fail2ban_exporter_role.html
index dfe8dc2..3d43012 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/fail2ban_exporter_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/fail2ban_exporter_role.html
@@ -99,6 +99,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/index.html b/home/runner/work/ansible/ansible/docsbuild/head/index.html
index d724f43..b3eb8e3 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/index.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/index.html
@@ -87,6 +87,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
@@ -178,6 +179,7 @@
 <li><p><a class="reference internal" href="mysqld_exporter_role.html#ansible-collections-prometheus-prometheus-mysqld-exporter-role"><span class="std std-ref">mysqld_exporter role</span></a> – Prometheus MySQLd Exporter</p></li>
 <li><p><a class="reference internal" href="nginx_exporter_role.html#ansible-collections-prometheus-prometheus-nginx-exporter-role"><span class="std std-ref">nginx_exporter role</span></a> – Prometheus nginx_exporter</p></li>
 <li><p><a class="reference internal" href="node_exporter_role.html#ansible-collections-prometheus-prometheus-node-exporter-role"><span class="std std-ref">node_exporter role</span></a> – Prometheus Node Exporter</p></li>
+<li><p><a class="reference internal" href="nvidia_gpu_exporter_role.html#ansible-collections-prometheus-prometheus-nvidia-gpu-exporter-role"><span class="std std-ref">nvidia_gpu_exporter role</span></a> – Prometheus Nvidia GPU Exporter</p></li>
 <li><p><a class="reference internal" href="postgres_exporter_role.html#ansible-collections-prometheus-prometheus-postgres-exporter-role"><span class="std std-ref">postgres_exporter role</span></a> – Prometheus PostgreSQL Exporter</p></li>
 <li><p><a class="reference internal" href="process_exporter_role.html#ansible-collections-prometheus-prometheus-process-exporter-role"><span class="std std-ref">process_exporter role</span></a> – Prometheus Process exporter</p></li>
 <li><p><a class="reference internal" href="prometheus_role.html#ansible-collections-prometheus-prometheus-prometheus-role"><span class="std std-ref">prometheus role</span></a> – Installs and configures prometheus</p></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/influxdb_exporter_role.html b/home/runner/work/ansible/ansible/docsbuild/head/influxdb_exporter_role.html
index f8d88f2..d44c168 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/influxdb_exporter_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/influxdb_exporter_role.html
@@ -99,6 +99,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/ipmi_exporter_role.html b/home/runner/work/ansible/ansible/docsbuild/head/ipmi_exporter_role.html
index 6ee0aff..13266ff 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/ipmi_exporter_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/ipmi_exporter_role.html
@@ -99,6 +99,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/memcached_exporter_role.html b/home/runner/work/ansible/ansible/docsbuild/head/memcached_exporter_role.html
index 33e97dc..fa9497f 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/memcached_exporter_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/memcached_exporter_role.html
@@ -99,6 +99,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/mongodb_exporter_role.html b/home/runner/work/ansible/ansible/docsbuild/head/mongodb_exporter_role.html
index 90f8ff6..e69a0e2 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/mongodb_exporter_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/mongodb_exporter_role.html
@@ -99,6 +99,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/mysqld_exporter_role.html b/home/runner/work/ansible/ansible/docsbuild/head/mysqld_exporter_role.html
index f757965..59c1f97 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/mysqld_exporter_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/mysqld_exporter_role.html
@@ -99,6 +99,7 @@
 </li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/nginx_exporter_role.html b/home/runner/work/ansible/ansible/docsbuild/head/nginx_exporter_role.html
index ab5ea83..c7420cf 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/nginx_exporter_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/nginx_exporter_role.html
@@ -99,6 +99,7 @@
 </ul>
 </li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/node_exporter_role.html b/home/runner/work/ansible/ansible/docsbuild/head/node_exporter_role.html
index e909ac7..7994105 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/node_exporter_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/node_exporter_role.html
@@ -22,7 +22,7 @@
       <script src="_static/sphinx_highlight.js?v=dc90522c"></script>
     <script src="_static/js/theme.js"></script>
     <link rel="search" title="Search" href="search.html" />
-    <link rel="next" title="prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter" href="postgres_exporter_role.html" />
+    <link rel="next" title="prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter" href="nvidia_gpu_exporter_role.html" />
     <link rel="prev" title="prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter" href="nginx_exporter_role.html" /><!-- extra head elements for Ansible beyond RTD Sphinx Theme -->
 
 
@@ -99,6 +99,7 @@
 </li>
 </ul>
 </li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
@@ -346,7 +347,7 @@ To check whether it is installed, run <code class="code docutils literal notrans
 
 <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
         <a href="nginx_exporter_role.html" class="btn btn-neutral float-left" title="prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
-        <a href="postgres_exporter_role.html" class="btn btn-neutral float-right" title="prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
+        <a href="nvidia_gpu_exporter_role.html" class="btn btn-neutral float-right" title="prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
     </div>
 
   <hr/>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/postgres_exporter_role.html b/home/runner/work/ansible/ansible/docsbuild/head/postgres_exporter_role.html
index c80bd9a..bf12ef3 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/postgres_exporter_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/postgres_exporter_role.html
@@ -23,7 +23,7 @@
     <script src="_static/js/theme.js"></script>
     <link rel="search" title="Search" href="search.html" />
     <link rel="next" title="prometheus.prometheus.process_exporter role – Prometheus Process exporter" href="process_exporter_role.html" />
-    <link rel="prev" title="prometheus.prometheus.node_exporter role – Prometheus Node Exporter" href="node_exporter_role.html" /><!-- extra head elements for Ansible beyond RTD Sphinx Theme -->
+    <link rel="prev" title="prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter" href="nvidia_gpu_exporter_role.html" /><!-- extra head elements for Ansible beyond RTD Sphinx Theme -->
 
 
 
@@ -88,6 +88,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1 current"><a class="current reference internal" href="#">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="#entry-point-main-prometheus-postgresql-exporter">Entry point <code class="docutils literal notranslate"><span class="pre">main</span></code> – Prometheus PostgreSQL Exporter</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="#synopsis">Synopsis</a></li>
@@ -362,7 +363,7 @@ To check whether it is installed, run <code class="code docutils literal notrans
           
 
 <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
-        <a href="node_exporter_role.html" class="btn btn-neutral float-left" title="prometheus.prometheus.node_exporter role – Prometheus Node Exporter" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
+        <a href="nvidia_gpu_exporter_role.html" class="btn btn-neutral float-left" title="prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
         <a href="process_exporter_role.html" class="btn btn-neutral float-right" title="prometheus.prometheus.process_exporter role – Prometheus Process exporter" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
     </div>
 
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/process_exporter_role.html b/home/runner/work/ansible/ansible/docsbuild/head/process_exporter_role.html
index 4eeeb5a..540b7f1 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/process_exporter_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/process_exporter_role.html
@@ -88,6 +88,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1 current"><a class="current reference internal" href="#">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="#entry-point-main-prometheus-process-exporter">Entry point <code class="docutils literal notranslate"><span class="pre">main</span></code> – Prometheus Process exporter</a><ul>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/prometheus_role.html b/home/runner/work/ansible/ansible/docsbuild/head/prometheus_role.html
index b1ea4e3..4df110c 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/prometheus_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/prometheus_role.html
@@ -88,6 +88,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1 current"><a class="current reference internal" href="#">prometheus.prometheus.prometheus role – Installs and configures prometheus</a><ul>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/pushgateway_role.html b/home/runner/work/ansible/ansible/docsbuild/head/pushgateway_role.html
index 82e574f..1361697 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/pushgateway_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/pushgateway_role.html
@@ -88,6 +88,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/redis_exporter_role.html b/home/runner/work/ansible/ansible/docsbuild/head/redis_exporter_role.html
index 9ed023a..ca91e5d 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/redis_exporter_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/redis_exporter_role.html
@@ -88,6 +88,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/search.html b/home/runner/work/ansible/ansible/docsbuild/head/search.html
index 0301979..668256c 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/search.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/search.html
@@ -87,6 +87,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/smartctl_exporter_role.html b/home/runner/work/ansible/ansible/docsbuild/head/smartctl_exporter_role.html
index 61e7b4b..9eae9e9 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/smartctl_exporter_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/smartctl_exporter_role.html
@@ -88,6 +88,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/smokeping_prober_role.html b/home/runner/work/ansible/ansible/docsbuild/head/smokeping_prober_role.html
index 5dd3ccc..19b4c9f 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/smokeping_prober_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/smokeping_prober_role.html
@@ -88,6 +88,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/snmp_exporter_role.html b/home/runner/work/ansible/ansible/docsbuild/head/snmp_exporter_role.html
index ad55b09..1d712e6 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/snmp_exporter_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/snmp_exporter_role.html
@@ -88,6 +88,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>
diff --git a/home/runner/work/ansible/ansible/docsbuild/base/systemd_exporter_role.html b/home/runner/work/ansible/ansible/docsbuild/head/systemd_exporter_role.html
index b3a3db9..c13c435 100644
--- a/home/runner/work/ansible/ansible/docsbuild/base/systemd_exporter_role.html
+++ b/home/runner/work/ansible/ansible/docsbuild/head/systemd_exporter_role.html
@@ -87,6 +87,7 @@
 <li class="toctree-l1"><a class="reference internal" href="mysqld_exporter_role.html">prometheus.prometheus.mysqld_exporter role – Prometheus MySQLd Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="nginx_exporter_role.html">prometheus.prometheus.nginx_exporter role – Prometheus nginx_exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="node_exporter_role.html">prometheus.prometheus.node_exporter role – Prometheus Node Exporter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="nvidia_gpu_exporter_role.html">prometheus.prometheus.nvidia_gpu_exporter role – Prometheus Nvidia GPU Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="postgres_exporter_role.html">prometheus.prometheus.postgres_exporter role – Prometheus PostgreSQL Exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="process_exporter_role.html">prometheus.prometheus.process_exporter role – Prometheus Process exporter</a></li>
 <li class="toctree-l1"><a class="reference internal" href="prometheus_role.html">prometheus.prometheus.prometheus role – Installs and configures prometheus</a></li>

@zhan9san
Copy link
Contributor Author

Hi,

I hope to add a new exporter to this repository, but I’m uncertain about its acceptance.
If it is approved, I would be happy to address the CI issue and continue working on this task.

I do have some concerns that it might not lead to the desired outcome.

Copy link
Contributor

@SuperQ SuperQ left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This also needs the testing boilerplate under /tests/integration/targets/.

Copy link
Contributor

@SuperQ SuperQ left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This also needs the testing boilerplate under /tests/integration/targets/.

@zhan9san
Copy link
Contributor Author

@SuperQ

Thanks for your attention. I am glad this PR can be reviewed.

I'll handle the issues later.

@SuperQ
Copy link
Contributor

SuperQ commented Oct 17, 2024

Sorry, but this will need a rebase against our new _common role.

@zhan9san
Copy link
Contributor Author

sure. will do

@zhan9san zhan9san changed the title feat : Add nvidia_gpu_exporter [WIP] feat : Add nvidia_gpu_exporter Oct 18, 2024
@zhan9san zhan9san force-pushed the feature/add-nvidia-gpu-exporter branch from 718b7d5 to bf1b63a Compare October 27, 2024 14:41
@zhan9san zhan9san changed the title [WIP] feat : Add nvidia_gpu_exporter feat : Add nvidia_gpu_exporter Oct 27, 2024
@zhan9san zhan9san force-pushed the feature/add-nvidia-gpu-exporter branch from bf1b63a to 7e862f9 Compare October 27, 2024 14:48
@zhan9san
Copy link
Contributor Author

@SuperQ

This PR is ready for review. Could you help on it?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please move this to the main tasks file as it's only including the _common role and not performing any additional tasks

ansible.builtin.include_tasks:
file: preflight.yml
tags:
- nvidia_gpu_exporter_install
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- nvidia_gpu_exporter_install
- nvidia_gpu_exporter
- install
- configure
- run
- nvidia_gpu_exporter_install

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for your detailed review.

Is there any reason that these tags are required for this new role but not node_exporter?

The tags are referred to node_exporter's, like below,

tags:
- node_exporter_install
- node_exporter_configure
- node_exporter_run

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

They should be there as well, thanks for letting me know.

Comment on lines 23 to 30
tags:
- nvidia_gpu_exporter_install
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
tags:
- nvidia_gpu_exporter_install
tags:
- nvidia_gpu_exporter
- install
- nvidia_gpu_exporter_install

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same as last reply.
The tags are referred to node_exporter's.

Comment on lines +33 to +40
tags:
- nvidia_gpu_exporter_configure
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
tags:
- nvidia_gpu_exporter_configure
tags:
- nvidia_gpu_exporter
- configure
- nvidia_gpu_exporter_configure

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same as last reply.
The tags are referred to node_exporter's.

Comment on lines 36 to 53
- name: Configure
ansible.builtin.include_tasks:
file: configure.yml
tags:
- nvidia_gpu_exporter_configure
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- name: Configure
ansible.builtin.include_tasks:
file: configure.yml
tags:
- nvidia_gpu_exporter_configure
- name: Configure
ansible.builtin.include_role:
name: prometheus.prometheus._common
tasks_from: configure.yml
vars:
_common_system_user: "{{ nvidia_gpu_exporter_system_user }}"
_common_system_group: "{{ nvidia_gpu_exporter_system_group }}"
tags:
- nvidia_gpu_exporter
- configure
- nvidia_gpu_exporter_configure

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The logic is referred to node_exporter's.

The _common role is included in configure.yml. Do we need to remove configure.yml?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's because the node_exporter role has a additional configuration task that's not covered by the _common role.
Since this role does not have any configuration tasks other than those covered by the _common role there is no need to put the configuration task into a separate file.

Comment on lines 51 to 67
tags:
- nvidia_gpu_exporter_run
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
tags:
- nvidia_gpu_exporter_run
tags:
- nvidia_gpu_exporter
- run
- nvidia_gpu_exporter_run

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same as last reply.
The tags are referred to node_exporter's.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure if this is needed

'armv7l': 'armv7',
'armv6l': 'armv6'}.get(ansible_architecture, ansible_architecture) }}"
_nvidia_gpu_exporter_repo: "utkuozdemir/nvidia_gpu_exporter"
_github_api_headers: "{{ {'GITHUB_TOKEN': lookup('ansible.builtin.env', 'GITHUB_TOKEN')} if (lookup('ansible.builtin.env', 'GITHUB_TOKEN')) else {} }}"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
_github_api_headers: "{{ {'GITHUB_TOKEN': lookup('ansible.builtin.env', 'GITHUB_TOKEN')} if (lookup('ansible.builtin.env', 'GITHUB_TOKEN')) else {} }}"
_nvidia_gpu_exporter_github_api_headers: "{{ {'GITHUB_TOKEN': lookup('ansible.builtin.env', 'GITHUB_TOKEN')} if (lookup('ansible.builtin.env', 'GITHUB_TOKEN')) else {} }}"

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

_github_api_headers is used for all other roles. Do we need to use another variable name for this role?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's something that needs to be changed in the other roles. The reason for it is to comply with the var-naming[no-role-prefix] ansible-lint rule which I'm working on in #385


- name: Discover latest version
ansible.builtin.set_fact:
nvidia_gpu_exporter_version: "{{ (lookup('url', 'https://api.github.com/repos/{{ _nvidia_gpu_exporter_repo }}/releases/latest', headers=_github_api_headers,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
nvidia_gpu_exporter_version: "{{ (lookup('url', 'https://api.github.com/repos/{{ _nvidia_gpu_exporter_repo }}/releases/latest', headers=_github_api_headers,
nvidia_gpu_exporter_version: "{{ (lookup('url', 'https://api.github.com/repos/{{ _nvidia_gpu_exporter_repo }}/releases/latest', headers=_nvidia_gpu_exporter_github_api_headers,

Copy link
Member

@gardar gardar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please also include integration tests for invoking molecule from ansible-test.
It's basically just creating new directories under /tests/integration/targets with the name molecule-<role name>-<scenario>
And placing a runme.sh script there which looks like this:

#!/usr/bin/env bash

collection_root=$(pwd | grep -oP ".+\/ansible_collections\/\w+?\/\w+")
source "$collection_root/tests/integration/molecule.sh"

Signed-off-by: Zhang, Chaoyue (Jack) <[email protected]>
@zhan9san zhan9san force-pushed the feature/add-nvidia-gpu-exporter branch from 64ac5ff to 4d4140f Compare October 29, 2024 06:37
@zhan9san zhan9san closed this Oct 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment