Matrix Docker Ansible eploy
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
 
 

344 linhas
11 KiB

  1. - name: Install jq in AWX
  2. delegate_to: 127.0.0.1
  3. yum:
  4. name: jq
  5. state: latest
  6. - name: Collect AWX admin token the hard way!
  7. delegate_to: 127.0.0.1
  8. shell: |
  9. curl -sku {{ tower_username }}:{{ tower_password }} -H "Content-Type: application/json" -X POST -d '{"description":"Tower CLI", "application":null, "scope":"write"}' https://{{ tower_host }}/api/v2/users/1/personal_tokens/ | jq '.token' | sed -r 's/\"//g'
  10. register: tower_token
  11. no_log: True
  12. - name: Remove original 'Provision Server' job template
  13. delegate_to: 127.0.0.1
  14. awx.awx.tower_job_template:
  15. name: "0 - {{ subscription_id }} - Provision a New Server"
  16. job_type: run
  17. project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  18. playbook: setup.yml
  19. state: absent
  20. tower_host: "https://{{ tower_host }}"
  21. tower_oauthtoken: "{{ tower_token.stdout }}"
  22. validate_certs: yes
  23. - name: Remove 'Provision Wireguard Server' job template
  24. delegate_to: 127.0.0.1
  25. awx.awx.tower_job_template:
  26. name: "0 - {{ subscription_id }} - Provision Wireguard Server"
  27. job_type: run
  28. project: "Ansible Create Delete Subscription Membership"
  29. playbook: setup_wireguard_server.yml
  30. state: absent
  31. tower_host: "https://{{ tower_host }}"
  32. tower_oauthtoken: "{{ tower_token.stdout }}"
  33. validate_certs: yes
  34. - name: Remove schedule for 'Deploy a New Server' job template
  35. delegate_to: 127.0.0.1
  36. awx.awx.tower_schedule:
  37. name: "{{ matrix_domain }} - 0 - Update Server Schedule"
  38. enabled: yes
  39. state: absent
  40. tower_host: "https://{{ tower_host }}"
  41. tower_oauthtoken: "{{ tower_token.stdout }}"
  42. validate_certs: yes
  43. when: matrix_domain is defined
  44. - name: Remove 'Backup Server' job template
  45. delegate_to: 127.0.0.1
  46. awx.awx.tower_job_template:
  47. name: "{{ matrix_domain }} - 0 - Backup Server"
  48. job_type: run
  49. project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  50. playbook: setup.yml
  51. state: absent
  52. tower_host: "https://{{ tower_host }}"
  53. tower_oauthtoken: "{{ tower_token.stdout }}"
  54. validate_certs: yes
  55. when: matrix_domain is defined
  56. - name: Remove 'Export Server' job template
  57. delegate_to: 127.0.0.1
  58. awx.awx.tower_job_template:
  59. name: "{{ matrix_domain }} - 0 - Export Server"
  60. job_type: run
  61. project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  62. playbook: setup.yml
  63. state: absent
  64. tower_host: "https://{{ tower_host }}"
  65. tower_oauthtoken: "{{ tower_token.stdout }}"
  66. validate_certs: yes
  67. when: matrix_domain is defined
  68. - name: Remove 'Deploy/Update a Server' job template
  69. delegate_to: 127.0.0.1
  70. awx.awx.tower_job_template:
  71. name: "{{ matrix_domain }} - 0 - Deploy/Update a Server"
  72. job_type: run
  73. project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  74. playbook: setup.yml
  75. state: absent
  76. tower_host: "https://{{ tower_host }}"
  77. tower_oauthtoken: "{{ tower_token.stdout }}"
  78. validate_certs: yes
  79. when: matrix_domain is defined
  80. - name: Remove 'Self-Check' job template
  81. delegate_to: 127.0.0.1
  82. awx.awx.tower_job_template:
  83. name: "{{ matrix_domain }} - 0 - Self-Check"
  84. job_type: run
  85. project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  86. playbook: setup.yml
  87. state: absent
  88. tower_host: "https://{{ tower_host }}"
  89. tower_oauthtoken: "{{ tower_token.stdout }}"
  90. validate_certs: yes
  91. when: matrix_domain is defined
  92. - name: Remove 'Start/Restart all Services' job template
  93. delegate_to: 127.0.0.1
  94. awx.awx.tower_job_template:
  95. name: "{{ matrix_domain }} - 0 - Start/Restart all Services"
  96. job_type: run
  97. project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  98. playbook: setup.yml
  99. state: absent
  100. tower_host: "https://{{ tower_host }}"
  101. tower_oauthtoken: "{{ tower_token.stdout }}"
  102. validate_certs: yes
  103. when: matrix_domain is defined
  104. - name: Remove 'Stop all Services' job template
  105. delegate_to: 127.0.0.1
  106. awx.awx.tower_job_template:
  107. name: "{{ matrix_domain }} - 0 - Stop all Services"
  108. job_type: run
  109. project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  110. playbook: setup.yml
  111. state: absent
  112. tower_host: "https://{{ tower_host }}"
  113. tower_oauthtoken: "{{ tower_token.stdout }}"
  114. validate_certs: yes
  115. when: matrix_domain is defined
  116. - name: Remove 'Configure Corporal (Advanced)' job template
  117. delegate_to: 127.0.0.1
  118. awx.awx.tower_job_template:
  119. name: "{{ matrix_domain }} - 1 - Configure Corporal (Advanced)"
  120. job_type: run
  121. project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  122. playbook: setup.yml
  123. state: absent
  124. tower_host: "https://{{ tower_host }}"
  125. tower_oauthtoken: "{{ tower_token.stdout }}"
  126. validate_certs: yes
  127. when: matrix_domain is defined
  128. - name: Remove 'Configure Dimension' job template
  129. delegate_to: 127.0.0.1
  130. awx.awx.tower_job_template:
  131. name: "{{ matrix_domain }} - 1 - Configure Dimension"
  132. job_type: run
  133. project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  134. playbook: setup.yml
  135. state: absent
  136. tower_host: "https://{{ tower_host }}"
  137. tower_oauthtoken: "{{ tower_token.stdout }}"
  138. validate_certs: yes
  139. when: matrix_domain is defined
  140. - name: Remove 'Configure Element' job template
  141. delegate_to: 127.0.0.1
  142. awx.awx.tower_job_template:
  143. name: "{{ matrix_domain }} - 1 - Configure Element"
  144. job_type: run
  145. project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  146. playbook: setup.yml
  147. state: absent
  148. tower_host: "https://{{ tower_host }}"
  149. tower_oauthtoken: "{{ tower_token.stdout }}"
  150. validate_certs: yes
  151. when: matrix_domain is defined
  152. - name: Remove 'Configure Element Subdomain' job template
  153. delegate_to: 127.0.0.1
  154. awx.awx.tower_job_template:
  155. name: "{{ matrix_domain }} - 1 - Configure Element Subdomain"
  156. job_type: run
  157. project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  158. playbook: setup.yml
  159. state: absent
  160. tower_host: "https://{{ tower_host }}"
  161. tower_oauthtoken: "{{ tower_token.stdout }}"
  162. validate_certs: yes
  163. when: matrix_domain is defined
  164. - name: Remove 'Configure Email Relay' job template
  165. delegate_to: 127.0.0.1
  166. awx.awx.tower_job_template:
  167. name: "{{ matrix_domain }} - 1 - Configure Email Relay"
  168. job_type: run
  169. project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  170. playbook: setup.yml
  171. state: absent
  172. tower_host: "https://{{ tower_host }}"
  173. tower_oauthtoken: "{{ tower_token.stdout }}"
  174. validate_certs: yes
  175. when: matrix_domain is defined
  176. - name: Remove 'Configure Jitsi' job template
  177. delegate_to: 127.0.0.1
  178. awx.awx.tower_job_template:
  179. name: "{{ matrix_domain }} - 1 - Configure Jitsi"
  180. job_type: run
  181. project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  182. playbook: setup.yml
  183. state: absent
  184. tower_host: "https://{{ tower_host }}"
  185. tower_oauthtoken: "{{ tower_token.stdout }}"
  186. validate_certs: yes
  187. when: matrix_domain is defined
  188. - name: Remove 'Configure ma1sd (Advanced)' job template
  189. delegate_to: 127.0.0.1
  190. awx.awx.tower_job_template:
  191. name: "{{ matrix_domain }} - 1 - Configure ma1sd (Advanced)"
  192. job_type: run
  193. project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  194. playbook: setup.yml
  195. state: absent
  196. tower_host: "https://{{ tower_host }}"
  197. tower_oauthtoken: "{{ tower_token.stdout }}"
  198. validate_certs: yes
  199. when: matrix_domain is defined
  200. - name: Remove 'Configure Synapse' job template
  201. delegate_to: 127.0.0.1
  202. awx.awx.tower_job_template:
  203. name: "{{ matrix_domain }} - 1 - Configure Synapse"
  204. job_type: run
  205. project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  206. playbook: setup.yml
  207. state: absent
  208. tower_host: "https://{{ tower_host }}"
  209. tower_oauthtoken: "{{ tower_token.stdout }}"
  210. validate_certs: yes
  211. when: matrix_domain is defined
  212. - name: Remove 'Configure Synapse Admin' job template
  213. delegate_to: 127.0.0.1
  214. awx.awx.tower_job_template:
  215. name: "{{ matrix_domain }} - 1 - Configure Synapse Admin"
  216. job_type: run
  217. project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  218. playbook: setup.yml
  219. state: absent
  220. tower_host: "https://{{ tower_host }}"
  221. tower_oauthtoken: "{{ tower_token.stdout }}"
  222. validate_certs: yes
  223. when: matrix_domain is defined
  224. - name: Remove 'Access Export' job template
  225. delegate_to: 127.0.0.1
  226. awx.awx.tower_job_template:
  227. name: "{{ matrix_domain }} - 1 - Access Export"
  228. job_type: run
  229. project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  230. playbook: setup.yml
  231. state: absent
  232. tower_host: "https://{{ tower_host }}"
  233. tower_oauthtoken: "{{ tower_token.stdout }}"
  234. validate_certs: yes
  235. when: matrix_domain is defined
  236. - name: Remove 'Configure Website + Access Export' job template
  237. delegate_to: 127.0.0.1
  238. awx.awx.tower_job_template:
  239. name: "{{ matrix_domain }} - 1 - Configure Website + Access Export"
  240. job_type: run
  241. project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  242. playbook: setup.yml
  243. state: absent
  244. tower_host: "https://{{ tower_host }}"
  245. tower_oauthtoken: "{{ tower_token.stdout }}"
  246. validate_certs: yes
  247. when: matrix_domain is defined
  248. - name: Remove 'Create User' job template
  249. delegate_to: 127.0.0.1
  250. awx.awx.tower_job_template:
  251. name: "{{ matrix_domain }} - 2 - Create User"
  252. job_type: run
  253. project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  254. playbook: setup.yml
  255. state: absent
  256. tower_host: "https://{{ tower_host }}"
  257. tower_oauthtoken: "{{ tower_token.stdout }}"
  258. validate_certs: yes
  259. when: matrix_domain is defined
  260. - name: Remove 'Purge Media (Advanced)' job template
  261. delegate_to: 127.0.0.1
  262. awx.awx.tower_job_template:
  263. name: "{{ matrix_domain }} - 2 - Purge Media (Advanced)"
  264. job_type: run
  265. project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  266. playbook: setup.yml
  267. state: absent
  268. tower_host: "https://{{ tower_host }}"
  269. tower_oauthtoken: "{{ tower_token.stdout }}"
  270. validate_certs: yes
  271. when: matrix_domain is defined
  272. - name: Remove Matrix server from organisations inventory
  273. delegate_to: 127.0.0.1
  274. awx.awx.tower_host:
  275. name: "matrix.{{ matrix_domain }}"
  276. description: "{{ matrix_domain }} Matrix Server"
  277. inventory: "{{ member_id }}"
  278. state: absent
  279. tower_host: "https://{{ tower_host }}"
  280. tower_oauthtoken: "{{ tower_token.stdout }}"
  281. validate_certs: yes
  282. when: matrix_domain is defined
  283. - name: Remove Wireguard Server from organisations inventory
  284. delegate_to: 127.0.0.1
  285. awx.awx.tower_host:
  286. name: "wireguard.{{ matrix_domain }}"
  287. description: "{{ matrix_domain }} Wireguard Proxy"
  288. inventory: "{{ member_id }}"
  289. state: absent
  290. tower_host: "https://{{ tower_host }}"
  291. tower_oauthtoken: "{{ tower_token.stdout }}"
  292. validate_certs: yes
  293. when: matrix_domain is defined
  294. #- name: Remove '<< SUBSCRIPTION DELETION IN PROGRESS >>' job template
  295. # delegate_to: 127.0.0.1
  296. # awx.awx.tower_job_template:
  297. # name: "0 - {{ subscription_id }} - << SUBSCRIPTION DELETION IN PROGRESS >>"
  298. # job_type: run
  299. # project: "{{ member_id }} - Matrix Docker Ansible Deploy"
  300. # playbook: setup.yml
  301. # state: absent
  302. # tower_host: "https://{{ tower_host }}"
  303. # tower_oauthtoken: "{{ tower_token.stdout }}"
  304. # validate_certs: yes
  305. # make new extra vars file
  306. # remake 'delete delete playbook'
  307. # launch it
  308. - name: Set boolean value to exit playbook
  309. set_fact:
  310. end_playbook: true
  311. - name: End playbook if this task list is called.
  312. meta: end_play
  313. when: end_playbook is defined and end_playbook|bool