upgrade_poll_and_check_certs.yml 1.6 KB

1234567891011121314151617181920212223242526272829303132
  1. ---
  2. # This playbook is called during upgrade_control_plane via post_control_plane.yml
  3. # Need to poll to ensure the pods are deployed.
  4. - import_playbook: openshift_hosted_wait_for_pods.yml
  5. - name: Upgrade default router and default registry
  6. hosts: oo_first_master
  7. roles:
  8. - lib_utils
  9. - openshift_facts
  10. tasks:
  11. # Do not perform these tasks when the registry is insecure. The default registry is insecure in openshift_hosted/defaults/main.yml
  12. - when: not (openshift_docker_hosted_registry_insecure | default(False))
  13. block:
  14. # we need to migrate customers to the new pattern of pushing to the registry via dns
  15. # Step 1: verify the certificates have the docker registry service name
  16. - name: shell command to determine if the docker-registry.default.svc is found in the registry certificate
  17. shell: >
  18. echo -n | openssl s_client -showcerts -servername docker-registry.default.svc -connect docker-registry.default.svc:5000 | openssl x509 -text | grep -A1 'X509v3 Subject Alternative Name:' | grep -Pq 'DNS:docker-registry\.default\.svc(,|$)'
  19. register: cert_output
  20. changed_when: false
  21. failed_when:
  22. - cert_output.rc not in [0, 1]
  23. # Step 2: Set a fact to be used to determine if we should run the redeploy of registry certs
  24. - name: set a fact to include the registry certs playbook if needed
  25. set_fact:
  26. openshift_hosted_rollout_certs_and_registry: "{{ cert_output.rc != 0 }}"
  27. - when: (hostvars[groups.oo_first_master.0].openshift_hosted_rollout_certs_and_registry | default(False)) | bool
  28. import_playbook: redeploy-registry-certificates.yml