--- # Generate a self-signed certificate when there is no user-supplied certificate - name: Configure self-signed certificate file paths set_fact: docker_registry_cert_path: "{{ openshift_master_config_dir }}/registry.crt" docker_registry_key_path: "{{ openshift_master_config_dir }}/registry.key" docker_registry_cacert_path: "{{ openshift_master_config_dir }}/ca.crt" docker_registry_self_signed: true when: - "'certfile' not in openshift_hosted_registry_routecertificates" - "'keyfile' not in openshift_hosted_registry_routecertificates" # Retrieve user supplied certificate files if they are provided - when: - "'certfile' in openshift_hosted_registry_routecertificates" - "'keyfile' in openshift_hosted_registry_routecertificates" block: - name: Configure provided certificate file paths set_fact: docker_registry_cert_path: "{{ openshift_master_config_dir }}/named_certificates/{{ openshift_hosted_registry_routecertificates['certfile'] | basename }}" docker_registry_key_path: "{{ openshift_master_config_dir }}/named_certificates/{{ openshift_hosted_registry_routecertificates['keyfile'] | basename }}" docker_registry_self_signed: false # Since we end up bundling the cert, cacert and key in a .pem file, the 'cafile' # is optional - name: Configure provided ca certificate file path set_fact: docker_registry_cacert_path: "{{ openshift_master_config_dir }}/named_certificates/{{ openshift_hosted_registry_routecertificates['cafile'] | basename }}" when: "'cafile' in openshift_hosted_registry_routecertificates" - name: Retrieve provided certificate files copy: backup: True dest: "{{ openshift_master_config_dir }}/named_certificates/{{ item.value | basename }}" src: "{{ item.value }}" when: item.key in ['certfile', 'keyfile', 'cafile'] and item.value with_dict: "{{ openshift_hosted_registry_routecertificates }}" - name: Configure a passthrough route for docker-registry oc_route: name: docker-registry namespace: "{{ openshift_hosted_registry_namespace }}" service_name: docker-registry tls_termination: "{{ openshift_hosted_registry_routetermination }}" host: "{{ openshift_hosted_registry_routehost | default(omit, true) }}"