summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docker/ansible/roles/config_files/tasks/default_read_import.yml8
-rw-r--r--docker/ansible/roles/config_files/tasks/ipmi.yml45
-rw-r--r--docker/ansible/roles/config_files/tasks/main.yml13
-rw-r--r--docker/ansible/roles/config_files/templates/default_read_plugins.conf.j21
-rw-r--r--docker/ansible/roles/config_files/templates/ipmi.conf.j245
-rw-r--r--docker/ansible/roles/config_files/vars/main.yml3
6 files changed, 106 insertions, 9 deletions
diff --git a/docker/ansible/roles/config_files/tasks/default_read_import.yml b/docker/ansible/roles/config_files/tasks/default_read_import.yml
index f11b8b80..589ace34 100644
--- a/docker/ansible/roles/config_files/tasks/default_read_import.yml
+++ b/docker/ansible/roles/config_files/tasks/default_read_import.yml
@@ -101,14 +101,6 @@
tags:
- ipc
-- name: enable ipmi plugin
- replace:
- path: "{{ config_file_dir }}/default_read_plugins.conf"
- regexp: '(\s+)#LoadPlugin ipmi(\s+.*)?$'
- replace: '\1LoadPlugin ipmi\2'
- tags:
- - ipmi
-
- name: enable df plugin
replace:
path: "{{ config_file_dir }}/default_read_plugins.conf"
diff --git a/docker/ansible/roles/config_files/tasks/ipmi.yml b/docker/ansible/roles/config_files/tasks/ipmi.yml
new file mode 100644
index 00000000..da3f42bd
--- /dev/null
+++ b/docker/ansible/roles/config_files/tasks/ipmi.yml
@@ -0,0 +1,45 @@
+#Copyright 2018 OPNFV and Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+---
+
+- name: Check if /dev/ipmi0 exists
+ stat:
+ path: /dev/ipmi0
+ register: ipmi0_exists
+ ignore_errors: True
+ tags:
+ - ipmi
+
+- name: check ipmi_devintf is loaded
+ shell: "lsmod | cut -d' ' -f1 | grep ipmi_devintf"
+ register: ipmi_devintf
+ ignore_errors: true
+ tags:
+ - ipmi
+
+- name: check ipmi_si is loaded
+ shell: "lsmod | cut -d' ' -f1 | grep ipmi_si"
+ register: ipmi_devsi
+ ignore_errors: true
+ tags:
+ - ipmi
+
+- name: enable ipmi plugin
+ template:
+ src: ipmi.conf.j2
+ dest: "{{ config_file_dir }}/ipmi.conf"
+ when: ipmi0_exists|succeeded and ipmi_devintf|succeeded and ipmi_devsi|succeeded
+ tags:
+ - ipmi
+
diff --git a/docker/ansible/roles/config_files/tasks/main.yml b/docker/ansible/roles/config_files/tasks/main.yml
index 2f0938c0..7d3919a1 100644
--- a/docker/ansible/roles/config_files/tasks/main.yml
+++ b/docker/ansible/roles/config_files/tasks/main.yml
@@ -70,3 +70,16 @@
- name: enable virt plugin
import_tasks: virt.yml
+
+- name: enable ipmi plugin
+ include: ipmi.yml
+
+- name: copy additional configuration files to target system
+ template:
+ src: "{{ item }}"
+ dest: "{{ config_file_dir }}/{{ item | basename | regex_replace('\\.j2','') }}"
+ tags:
+ - always
+ - copy_additional_configs
+ with_fileglob:
+ - "{{ additional_configs_path }}"
diff --git a/docker/ansible/roles/config_files/templates/default_read_plugins.conf.j2 b/docker/ansible/roles/config_files/templates/default_read_plugins.conf.j2
index e0c52ca0..fd941a76 100644
--- a/docker/ansible/roles/config_files/templates/default_read_plugins.conf.j2
+++ b/docker/ansible/roles/config_files/templates/default_read_plugins.conf.j2
@@ -23,7 +23,6 @@ Interval "{{ interval_value }}"
#LoadPlugin disk
#LoadPlugin ethstat
#LoadPlugin ipc
-#LoadPlugin ipmi
#LoadPlugin irq
#LoadPlugin load
#LoadPlugin memory
diff --git a/docker/ansible/roles/config_files/templates/ipmi.conf.j2 b/docker/ansible/roles/config_files/templates/ipmi.conf.j2
new file mode 100644
index 00000000..54554d23
--- /dev/null
+++ b/docker/ansible/roles/config_files/templates/ipmi.conf.j2
@@ -0,0 +1,45 @@
+#Copyright 2018 OPNFV and Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+LoadPlugin ipmi
+
+#<Plugin ipmi>
+# <Instance "local">
+# Sensor "some_sensor"
+# Sensor "another_one"
+# IgnoreSelected false
+# NotifySensorAdd false
+# NotifySensorRemove true
+# NotifySensorNotPresent false
+# NotifyIPMIConnectionState false
+# SELEnabled false
+# SELClearEvent false
+# </Instance>
+# <Instance "remote">
+# Host "server.example.com"
+# Address "1.2.3.4"
+# Username "user"
+# Password "secret"
+# #AuthType "md5"
+# Sensor "some_sensor"
+# Sensor "another_one"
+# IgnoreSelected false
+# NotifySensorAdd false
+# NotifySensorRemove true
+# NotifySensorNotPresent false
+# NotifyIPMIConnectionState false
+# SELEnabled false
+# SELClearEvent false
+# </Instance>
+#</Plugin>
diff --git a/docker/ansible/roles/config_files/vars/main.yml b/docker/ansible/roles/config_files/vars/main.yml
index 3677422a..05fb9e7f 100644
--- a/docker/ansible/roles/config_files/vars/main.yml
+++ b/docker/ansible/roles/config_files/vars/main.yml
@@ -51,3 +51,6 @@ syslog_log_level: info
rrdtool_db_dir: "/var/lib/collectd/rrd"
cache_flush: 120
write_per_sec: 50
+
+#additional configuration files path
+additional_configs_path: ""