# Run the intermediate registry on this host. - hosts: intermediate-registry name: Set up the intermediate registry and add a build tasks: - name: Include intermediate registry vars include_vars: vars/intermediate-registry-auth.yaml - name: Run the intermediate registry include_role: name: run-test-intermediate-registry - name: Install the intermediate registry cert include_role: name: ensure-registry-cert vars: registry_host: localhost registry_port: 5000 registry_cert: "{{ intermediate_registry_tls_cert }}" - name: Set up user credentials for the intermediate registry include_role: name: intermediate-registry-user-config - hosts: builder name: Test the container mirror role tasks: - name: Include intermediate registry vars include_vars: vars/intermediate-registry-auth.yaml - name: Set registry credentials set_fact: container_registry_credentials: "zuul-jobs.intermediate-registry:5000": username: "{{ intermediate_registry.username }}" password: "{{ intermediate_registry.password }}" - name: Configure /etc/hosts for intermediate registry become: true lineinfile: path: /etc/hosts state: present regex: "^{{ hostvars['intermediate-registry'].nodepool.private_ipv4 }}\t{{ intermediate_registry.host }}$" line: "{{ hostvars['intermediate-registry'].nodepool.private_ipv4 }}\t{{ intermediate_registry.host }}" insertafter: EOF - name: Install the intermediate registry cert include_role: name: ensure-registry-cert vars: registry_host: "{{ intermediate_registry.host }}" registry_port: "{{ intermediate_registry.port }}" registry_cert: "{{ intermediate_registry_tls_cert }}" # This begins the simulation of what we would expect to happen in a # normal job. - name: Test the mirror role include_role: name: mirror-container-images vars: mirror_container_images_images: - src_repository: quay.io/zuul-ci/zuul-client src_tag: latest dest_repository: "{{ intermediate_registry.host }}:{{ intermediate_registry.port }}/org/repo" dest_tag: tag dest_registry: "{{ intermediate_registry.host }}:{{ intermediate_registry.port }}"