test.yml 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. ---
  2. # This is a test playbook to create one of each of the zabbix ansible modules.
  3. # ensure that the zbxapi module is installed
  4. # ansible-playbook test.yml
  5. - name: Test zabbix ansible module
  6. hosts: localhost
  7. gather_facts: no
  8. vars:
  9. zbx_server: http://localhost:8080/zabbix/api_jsonrpc.php
  10. zbx_user: Admin
  11. zbx_password: zabbix
  12. pre_tasks:
  13. - name: Create a template
  14. zbx_template:
  15. server: "{{ zbx_server }}"
  16. user: "{{ zbx_user }}"
  17. password: "{{ zbx_password }}"
  18. name: 'test template'
  19. register: template_output
  20. - debug: var=template_output
  21. - name: Create a discoveryrule
  22. zbx_discoveryrule:
  23. server: "{{ zbx_server }}"
  24. user: "{{ zbx_user }}"
  25. password: "{{ zbx_password }}"
  26. name: test discoverule
  27. key: test_listener
  28. template_name: test template
  29. lifetime: 14
  30. register: discoveryrule
  31. - debug: var=discoveryrule
  32. - name: Create an itemprototype
  33. zbx_itemprototype:
  34. server: "{{ zbx_server }}"
  35. user: "{{ zbx_user }}"
  36. password: "{{ zbx_password }}"
  37. name: 'Test itemprototype on {#TEST_LISTENER}'
  38. key: 'test[{#TEST_LISTENER}]'
  39. template_name: test template
  40. discoveryrule_name: test discoverule
  41. register: itemproto
  42. - debug: var=itemproto
  43. - name: Create an application
  44. zbx_application:
  45. server: "{{ zbx_server }}"
  46. user: "{{ zbx_user }}"
  47. password: "{{ zbx_password }}"
  48. name: 'Test App'
  49. template_name: "test template"
  50. register: item_output
  51. - name: Create an item
  52. zbx_item:
  53. server: "{{ zbx_server }}"
  54. user: "{{ zbx_user }}"
  55. password: "{{ zbx_password }}"
  56. name: 'test item'
  57. key: 'kenny.item.1'
  58. applications:
  59. - 'Test App'
  60. template_name: "test template"
  61. register: item_output
  62. - debug: var=item_output
  63. - name: Create an trigger
  64. zbx_trigger:
  65. server: "{{ zbx_server }}"
  66. user: "{{ zbx_user }}"
  67. password: "{{ zbx_password }}"
  68. expression: '{test template:kenny.item.1.last()}>2'
  69. description: 'Kenny desc'
  70. register: trigger_output
  71. - debug: var=trigger_output
  72. - name: Create a hostgroup
  73. zbx_hostgroup:
  74. server: "{{ zbx_server }}"
  75. user: "{{ zbx_user }}"
  76. password: "{{ zbx_password }}"
  77. name: 'kenny hostgroup'
  78. register: hostgroup_output
  79. - debug: var=hostgroup_output
  80. - name: Create a host
  81. zbx_host:
  82. server: "{{ zbx_server }}"
  83. user: "{{ zbx_user }}"
  84. password: "{{ zbx_password }}"
  85. name: 'kenny host'
  86. template_names:
  87. - test template
  88. hostgroup_names:
  89. - kenny hostgroup
  90. register: host_output
  91. - debug: var=host_output
  92. - name: Create a usergroup
  93. zbx_usergroup:
  94. server: "{{ zbx_server }}"
  95. user: "{{ zbx_user }}"
  96. password: "{{ zbx_password }}"
  97. name: kenny usergroup
  98. rights:
  99. - 'kenny hostgroup': rw
  100. register: usergroup_output
  101. - debug: var=usergroup_output
  102. - name: Create a user
  103. zbx_user:
  104. server: "{{ zbx_server }}"
  105. user: "{{ zbx_user }}"
  106. password: "{{ zbx_password }}"
  107. alias: kenny user
  108. passwd: zabbix
  109. usergroups:
  110. - kenny usergroup
  111. register: user_output
  112. - debug: var=user_output