main.yml 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. ---
  2. - name: Create temp directory for kubeconfig
  3. command: mktemp -d /tmp/openshift-ansible-XXXXXX
  4. register: mktemp
  5. changed_when: False
  6. - set_fact:
  7. openshift_hosted_kubeconfig: "{{ mktemp.stdout }}/admin.kubeconfig"
  8. - name: Copy the admin client config(s)
  9. command: >
  10. cp {{ openshift_master_config_dir }}/admin.kubeconfig {{ openshift_hosted_kubeconfig }}
  11. changed_when: False
  12. - name: Create passthrough route for docker-registry
  13. command: >
  14. {{ openshift.common.client_binary }} create route passthrough
  15. --service docker-registry
  16. --config={{ openshift_hosted_kubeconfig }}
  17. -n default
  18. register: create_docker_registry_route
  19. changed_when: "'already exists' not in create_docker_registry_route.stderr"
  20. failed_when: "'already exists' not in create_docker_registry_route.stderr and create_docker_registry_route.rc != 0"
  21. - name: Create passthrough route for registry-console
  22. command: >
  23. {{ openshift.common.client_binary }} create route passthrough
  24. --service registry-console
  25. --port registry-console
  26. --config={{ openshift_hosted_kubeconfig }}
  27. -n default
  28. register: create_registry_console_route
  29. changed_when: "'already exists' not in create_registry_console_route.stderr"
  30. failed_when: "'already exists' not in create_registry_console_route.stderr and create_registry_console_route.rc != 0"
  31. - name: Retrieve docker-registry route
  32. command: >
  33. {{ openshift.common.client_binary }} get route docker-registry
  34. --template='{{ '{{' }} .spec.host {{ '}}' }}'
  35. --config={{ openshift_hosted_kubeconfig }}
  36. -n default
  37. register: docker_registry_route
  38. changed_when: false
  39. - name: Retrieve cockpit kube url
  40. command: >
  41. {{ openshift.common.client_binary }} get route registry-console
  42. --template='https://{{ '{{' }} .spec.host {{ '}}' }}'
  43. -n default
  44. register: registry_console_cockpit_kube_url
  45. changed_when: false
  46. - set_fact:
  47. cockpit_image_prefix: "{{ '-p IMAGE_PREFIX=' ~ openshift_cockpit_deployer_prefix | default('') }}"
  48. - name: Deploy registry-console
  49. command: >
  50. {{ openshift.common.client_binary }} new-app --template=registry-console
  51. {{ cockpit_image_prefix }}
  52. -p OPENSHIFT_OAUTH_PROVIDER_URL="{{ openshift.master.public_api_url }}"
  53. -p REGISTRY_HOST="{{ docker_registry_route.stdout }}"
  54. -p COCKPIT_KUBE_URL="{{ registry_console_cockpit_kube_url.stdout }}"
  55. --config={{ openshift_hosted_kubeconfig }}
  56. -n default
  57. register: deploy_registry_console
  58. changed_when: "'already exists' not in deploy_registry_console.stderr"
  59. failed_when: "'already exists' not in deploy_registry_console.stderr and deploy_registry_console.rc != 0"
  60. - name: Delete temp directory
  61. file:
  62. name: "{{ mktemp.stdout }}"
  63. state: absent
  64. changed_when: False