services.yml 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. #!/usr/bin/ansible-playbook
  2. ---
  3. - hosts: "oo_clusterid_mwoodson:&oo_master_primary"
  4. gather_facts: no
  5. user: root
  6. roles:
  7. - roles/lib_yaml_editor
  8. tasks:
  9. - copy:
  10. dest: "/tmp/{{ item }}"
  11. src: "files/{{ item }}"
  12. with_items:
  13. - router.json
  14. - router-mod.json
  15. - name: list services
  16. oc_obj:
  17. kind: service
  18. state: list
  19. namespace: default
  20. name: router
  21. register: service_out
  22. - debug:
  23. var: service_out.results
  24. - name: absent service
  25. oc_obj:
  26. kind: service
  27. state: absent
  28. namespace: default
  29. name: router
  30. register: service_out
  31. - debug:
  32. var: service_out
  33. - name: present service create
  34. oc_obj:
  35. kind: service
  36. state: present
  37. namespace: default
  38. name: router
  39. files:
  40. - /tmp/router.json
  41. delete_after: True
  42. register: service_out
  43. - debug:
  44. var: service_out
  45. - name: dump router
  46. oc_obj:
  47. kind: service
  48. state: list
  49. name: router
  50. namespace: default
  51. register: routerout
  52. - name: write router file
  53. copy:
  54. dest: /tmp/router-mod.json
  55. content: "{{ routerout.results[0] }}"
  56. - command: cat /tmp/router-mod.json
  57. register: catout
  58. - debug:
  59. msg: "{{ catout }}"
  60. - command: "sed -i 's/80-tcp/81-tcp/g' /tmp/router-mod.json"
  61. register: catout
  62. - name: present service replace
  63. oc_obj:
  64. kind: service
  65. state: present
  66. namespace: default
  67. name: router
  68. files:
  69. - /tmp/router-mod.json
  70. #delete_after: True
  71. register: service_out
  72. - debug:
  73. var: service_out
  74. - name: list services
  75. oc_obj:
  76. kind: service
  77. state: list
  78. namespace: default
  79. name: router
  80. register: service_out
  81. - debug:
  82. var: service_out.results
  83. - set_fact:
  84. new_service: "{{ service_out.results[0] }}"
  85. - yedit:
  86. src: /tmp/routeryedit
  87. content: "{{ new_service }}"
  88. key: spec.ports
  89. value:
  90. - name: 80-tcp
  91. port: 80
  92. protocol: TCP
  93. targetPort: 80
  94. - yedit:
  95. src: /tmp/routeryedit
  96. state: list
  97. register: yeditout
  98. - debug:
  99. var: yeditout
  100. - name: present service replace
  101. oc_obj:
  102. kind: service
  103. state: present
  104. namespace: default
  105. name: router
  106. content: "{{ yeditout.results }}"
  107. delete_after: True
  108. register: service_out
  109. - debug:
  110. var: service_out