create_template.yml 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  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 Prototypes
  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
  76. - name: Create Trigger Prototypes
  77. zbx_triggerprototype:
  78. zbx_server: "{{ server }}"
  79. zbx_user: "{{ user }}"
  80. zbx_password: "{{ password }}"
  81. name: "{{ item.name }}"
  82. expression: "{{ item.expression }}"
  83. url: "{{ item.url | default('', True) }}"
  84. priority: "{{ item.priority | default('average', True) }}"
  85. description: "{{ item.description | default('', True) }}"
  86. with_items: template.ztriggerprototypes
  87. when: template.ztriggerprototypes is defined