create_template.yml 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. ---
  2. - name: Template Create Template
  3. zbx_template:
  4. zbx_server: "{{ server }}"
  5. zbx_user: "{{ user }}"
  6. zbx_password: "{{ password }}"
  7. name: "{{ template.name }}"
  8. register: created_template
  9. - set_fact:
  10. lzbx_applications: "{{ template.zitems | oo_select_keys_from_list(['applications']) | oo_flatten | unique }}"
  11. - name: Create Application
  12. zbx_application:
  13. zbx_server: "{{ server }}"
  14. zbx_user: "{{ user }}"
  15. zbx_password: "{{ password }}"
  16. name: "{{ item }}"
  17. template_name: "{{ template.name }}"
  18. with_items: lzbx_applications
  19. register: created_application
  20. when: template.zitems is defined
  21. - name: Create Items
  22. zbx_item:
  23. zbx_server: "{{ server }}"
  24. zbx_user: "{{ user }}"
  25. zbx_password: "{{ password }}"
  26. key: "{{ item.key }}"
  27. name: "{{ item.name | default(item.key, true) }}"
  28. value_type: "{{ item.value_type | default('int') }}"
  29. description: "{{ item.description | default('', True) }}"
  30. multiplier: "{{ item.multiplier | default('', True) }}"
  31. units: "{{ item.units | default('', True) }}"
  32. template_name: "{{ template.name }}"
  33. applications: "{{ item.applications }}"
  34. with_items: template.zitems
  35. register: created_items
  36. when: template.zitems is defined
  37. - name: Create Triggers
  38. zbx_trigger:
  39. zbx_server: "{{ server }}"
  40. zbx_user: "{{ user }}"
  41. zbx_password: "{{ password }}"
  42. name: "{{ item.name }}"
  43. description: "{{ item.description | default('', True) }}"
  44. dependencies: "{{ item.dependencies | default([], True) }}"
  45. expression: "{{ item.expression }}"
  46. priority: "{{ item.priority }}"
  47. url: "{{ item.url | default(None, True) }}"
  48. with_items: template.ztriggers
  49. when: template.ztriggers is defined
  50. - name: Create Discoveryrules
  51. zbx_discoveryrule:
  52. zbx_server: "{{ server }}"
  53. zbx_user: "{{ user }}"
  54. zbx_password: "{{ password }}"
  55. name: "{{ item.name }}"
  56. key: "{{ item.key }}"
  57. lifetime: "{{ item.lifetime }}"
  58. template_name: "{{ template.name }}"
  59. description: "{{ item.description | default('', True) }}"
  60. with_items: template.zdiscoveryrules
  61. when: template.zdiscoveryrules is defined
  62. - name: Create Item Prototype
  63. zbx_itemprototype:
  64. zbx_server: "{{ server }}"
  65. zbx_user: "{{ user }}"
  66. zbx_password: "{{ password }}"
  67. name: "{{ item.name }}"
  68. key: "{{ item.key }}"
  69. discoveryrule_key: "{{ item.discoveryrule_key }}"
  70. value_type: "{{ item.value_type }}"
  71. template_name: "{{ template.name }}"
  72. applications: "{{ item.applications }}"
  73. description: "{{ item.description | default('', True) }}"
  74. with_items: template.zitemprototypes
  75. when: template.zitemprototypes is defined