From 680c3d35a7bfda47535608207bb4817f238e2f94 Mon Sep 17 00:00:00 2001
From: Ravi Tripathi <ravi89@uab.edu>
Date: Thu, 27 Jul 2023 15:27:46 -0500
Subject: [PATCH] Create the initial role for node_exporter installation and
 setup

---
 README.md                                     |  8 +++++++
 group_vars/all                                |  4 ++++
 node_exporter_build.yaml                      |  6 +++++
 .../files/install-node_exporter.sh            |  0
 .../files/node_exporter.service               |  0
 roles/install_node_exporter/tasks/main.yaml   | 22 +++++++++++++++++++
 6 files changed, 40 insertions(+)
 create mode 100644 group_vars/all
 create mode 100644 node_exporter_build.yaml
 rename install-node_exporter.sh => roles/install_node_exporter/files/install-node_exporter.sh (100%)
 mode change 100755 => 100644
 rename node_exporter.service => roles/install_node_exporter/files/node_exporter.service (100%)
 create mode 100644 roles/install_node_exporter/tasks/main.yaml

diff --git a/README.md b/README.md
index b0105f3..a8f410e 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,13 @@
 # rc-node_exporter
 
+To install the node_exporter on a machine, follow these steps:
+
+* Clone this repo to the machine
+* From withing the cloned git repo run the following commands:
+```shell
+ansible-playbook -i "localhost," node_exporter_build.yaml -b
+```
+
 
 
 ## Getting started
diff --git a/group_vars/all b/group_vars/all
new file mode 100644
index 0000000..b8b2b0a
--- /dev/null
+++ b/group_vars/all
@@ -0,0 +1,4 @@
+---
+
+# Destination on remote server to move install-node_exporter.sh script to
+install-node_exporter_dest: "/tmp" 
\ No newline at end of file
diff --git a/node_exporter_build.yaml b/node_exporter_build.yaml
new file mode 100644
index 0000000..c7243a3
--- /dev/null
+++ b/node_exporter_build.yaml
@@ -0,0 +1,6 @@
+---
+- hosts: localhost
+  connection: local
+  become: yes
+  roles:
+    - { name: 'install_node_exporter', tags: 'install_node_exporter' }
\ No newline at end of file
diff --git a/install-node_exporter.sh b/roles/install_node_exporter/files/install-node_exporter.sh
old mode 100755
new mode 100644
similarity index 100%
rename from install-node_exporter.sh
rename to roles/install_node_exporter/files/install-node_exporter.sh
diff --git a/node_exporter.service b/roles/install_node_exporter/files/node_exporter.service
similarity index 100%
rename from node_exporter.service
rename to roles/install_node_exporter/files/node_exporter.service
diff --git a/roles/install_node_exporter/tasks/main.yaml b/roles/install_node_exporter/tasks/main.yaml
new file mode 100644
index 0000000..d85f398
--- /dev/null
+++ b/roles/install_node_exporter/tasks/main.yaml
@@ -0,0 +1,22 @@
+---
+- name: Copy install-node_exporter.sh
+  copy:
+    src: "install-node_exporter.sh"
+    dest: "{{ install-node_exporter_dest }}/install-node_exporter.sh"
+    owner: root
+    group: root
+    mode: 0700
+
+- name: Copy node_exporter.service
+  copy:
+    src: "node_exporter.service"
+    dest: "/etc/systemd/system/install-node_exporter.sh"
+
+- name: Run install-node_exporter.sh as root
+    shell: "{{ install-node_exporter_dest }}/install-node_exporter.sh"
+    become: yes
+
+- name: Enable node_exporter.service
+  systemd:
+    name: node_exporter.service
+    state: enabled
-- 
GitLab