summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKenny Woodson <kwoodson@redhat.com>2015-07-09 20:26:33 -0400
committerKenny Woodson <kwoodson@redhat.com>2015-07-09 20:26:33 -0400
commit1830191258b9148b6ce286fa63d30c41e048a146 (patch)
tree1face1c19bf36a951578c04d17cec653c90cbcf7
parentb03b50a7a408470c28f2c8d1752cda541b75f8ee (diff)
downloadopenshift-1830191258b9148b6ce286fa63d30c41e048a146.tar.gz
openshift-1830191258b9148b6ce286fa63d30c41e048a146.tar.bz2
openshift-1830191258b9148b6ce286fa63d30c41e048a146.tar.xz
openshift-1830191258b9148b6ce286fa63d30c41e048a146.zip
example create_host
-rw-r--r--filter_plugins/oo_filters.py12
-rw-r--r--playbooks/adhoc/noc/create_host.yml55
2 files changed, 66 insertions, 1 deletions
diff --git a/filter_plugins/oo_filters.py b/filter_plugins/oo_filters.py
index 0f3f4fa9e..4e4a7309d 100644
--- a/filter_plugins/oo_filters.py
+++ b/filter_plugins/oo_filters.py
@@ -223,6 +223,15 @@ class FilterModule(object):
# Gather up the values for the list of keys passed in
return [x for x in data if x[filter_attr]]
+ @staticmethod
+ def oo_build_zabbix_list_dict(values, string):
+ ''' Build a list of dicts with string as key for each value
+ '''
+ rval = []
+ for value in values:
+ rval.append({string: value})
+ return rval
+
def filters(self):
''' returns a mapping of filters to methods '''
return {
@@ -235,5 +244,6 @@ class FilterModule(object):
"oo_ec2_volume_definition": self.oo_ec2_volume_definition,
"oo_combine_key_value": self.oo_combine_key_value,
"oo_split": self.oo_split,
- "oo_filter_list": self.oo_filter_list
+ "oo_filter_list": self.oo_filter_list,
+ "oo_build_zabbix_list_dict": self.oo_build_zabbix_list_dict
}
diff --git a/playbooks/adhoc/noc/create_host.yml b/playbooks/adhoc/noc/create_host.yml
new file mode 100644
index 000000000..d250e6e69
--- /dev/null
+++ b/playbooks/adhoc/noc/create_host.yml
@@ -0,0 +1,55 @@
+---
+- name: 'Create a host object in zabbix'
+ hosts: localhost
+ gather_facts: no
+ roles:
+ - os_zabbix
+ post_tasks:
+
+ - zbxapi:
+ server: https://noc2.ops.rhcloud.com/zabbix/api_jsonrpc.php
+ zbx_class: Template
+ state: list
+ params:
+ host: ctr_test_kwoodson
+ filter:
+ host:
+ - ctr_kwoodson_test_tmpl
+
+ register: tmpl_results
+
+ - debug: var=tmpl_results
+
+#ansible-playbook -e 'oo_desc=kwoodson test' -e 'oo_name=kwoodson test name' -e 'oo_start=1435715357' -e 'oo_stop=1435718985' -e 'oo_hostids=11549' create_maintenance.yml
+- name: 'Create a host object in zabbix'
+ hosts: localhost
+ gather_facts: no
+ roles:
+ - os_zabbix
+ post_tasks:
+
+ - zbxapi:
+ server: https://noc2.ops.rhcloud.com/zabbix/api_jsonrpc.php
+ zbx_class: Host
+ state: absent
+ params:
+ host: ctr_test_kwoodson
+ interfaces:
+ - type: 1
+ main: 1
+ useip: 1
+ ip: 127.0.0.1
+ dns: ""
+ port: 10050
+ groups:
+ - groupid: 1
+ templates: "{{ tmpl_results.results | oo_collect('templateid') | oo_build_zabbix_list_dict('templateid') }}"
+ output: extend
+ filter:
+ host:
+ - ctr_test_kwoodson
+
+ register: host_results
+
+ - debug: var=host_results
+