diff options
Diffstat (limited to 'roles')
| -rw-r--r-- | roles/cockpit-ui/meta/main.yml | 2 | ||||
| -rw-r--r-- | roles/cockpit-ui/tasks/main.yml | 142 | ||||
| -rw-r--r-- | roles/openshift_hosted/tasks/registry/secure.yml | 16 | 
3 files changed, 67 insertions, 93 deletions
| diff --git a/roles/cockpit-ui/meta/main.yml b/roles/cockpit-ui/meta/main.yml index 6ad2e324a..4d619fff6 100644 --- a/roles/cockpit-ui/meta/main.yml +++ b/roles/cockpit-ui/meta/main.yml @@ -11,3 +11,5 @@ galaxy_info:      - 7    categories:    - cloud +dependencies: +- role: lib_openshift diff --git a/roles/cockpit-ui/tasks/main.yml b/roles/cockpit-ui/tasks/main.yml index f2ef4f161..8bd68787a 100644 --- a/roles/cockpit-ui/tasks/main.yml +++ b/roles/cockpit-ui/tasks/main.yml @@ -1,86 +1,58 @@  --- -- name: Create temp directory for kubeconfig -  command: mktemp -d /tmp/openshift-ansible-XXXXXX -  register: mktemp -  changed_when: False - -- set_fact: -    openshift_hosted_kubeconfig: "{{ mktemp.stdout }}/admin.kubeconfig" - -- name: Copy the admin client config(s) -  command: > -    cp {{ openshift_master_config_dir }}/admin.kubeconfig {{ openshift_hosted_kubeconfig }} -  changed_when: False - -- name: Determine if docker-registry service exists -  command: > -    {{ openshift.common.client_binary }} get svc/docker-registry -    --config={{ openshift_hosted_kubeconfig }} -    -n default -  register: check_docker_registry_exists -  failed_when: false -  changed_when: false - -- name: Create passthrough route for docker-registry -  command: > -    {{ openshift.common.client_binary }} create route passthrough -    --service docker-registry -    --config={{ openshift_hosted_kubeconfig }} -    -n default -  register: create_docker_registry_route -  changed_when: "'already exists' not in create_docker_registry_route.stderr" -  failed_when: "'already exists' not in create_docker_registry_route.stderr and create_docker_registry_route.rc != 0" -  when: check_docker_registry_exists.rc == 0 - -- name: Create passthrough route for registry-console -  command: > -    {{ openshift.common.client_binary }} create route passthrough -    --service registry-console -    --port registry-console -    --config={{ openshift_hosted_kubeconfig }} -    -n default -  register: create_registry_console_route -  changed_when: "'already exists' not in create_registry_console_route.stderr" -  failed_when: "'already exists' not in create_registry_console_route.stderr and create_registry_console_route.rc != 0" -  when: check_docker_registry_exists.rc == 0 - -- name: Retrieve docker-registry route -  command: > -    {{ openshift.common.client_binary }} get route docker-registry -    -o jsonpath='{.spec.host}' -    --config={{ openshift_hosted_kubeconfig }} -    -n default -  register: docker_registry_route -  changed_when: false -  when: check_docker_registry_exists.rc == 0 - -- name: Retrieve cockpit kube url -  command: > -    {{ openshift.common.client_binary }} get route registry-console -    -o jsonpath='https://{.spec.host}' -    -n default -  register: registry_console_cockpit_kube_url -  changed_when: false -  when: check_docker_registry_exists.rc == 0 - -# TODO: Need to fix the origin and enterprise templates so that they both respect IMAGE_PREFIX -- name: Deploy registry-console -  command: > -    {{ openshift.common.client_binary }} new-app --template=registry-console -    {% if openshift_cockpit_deployer_prefix is defined  %}-p IMAGE_PREFIX="{{ openshift_cockpit_deployer_prefix }}"{% endif %} -    {% if openshift_cockpit_deployer_version is defined  %}-p IMAGE_VERSION="{{ openshift_cockpit_deployer_version }}"{% endif %} -    -p OPENSHIFT_OAUTH_PROVIDER_URL="{{ openshift.master.public_api_url }}" -    -p REGISTRY_HOST="{{ docker_registry_route.stdout }}" -    -p COCKPIT_KUBE_URL="{{ registry_console_cockpit_kube_url.stdout }}" -    --config={{ openshift_hosted_kubeconfig }} -    -n default -  register: deploy_registry_console -  changed_when: "'already exists' not in deploy_registry_console.stderr" -  failed_when: "'already exists' not in deploy_registry_console.stderr and deploy_registry_console.rc != 0" -  when: check_docker_registry_exists.rc == 0 - -- name: Delete temp directory -  file: -    name: "{{ mktemp.stdout }}" -    state: absent -  changed_when: False +- block: +  - name: Create passthrough route for docker-registry +    oc_route: +      kubeconfig: "{{ openshift_master_config_dir }}/admin.kubeconfig" +      name: docker-registry +      namespace: default +      service_name: docker-registry +      state: present +      tls_termination: passthrough +    register: docker_registry_route + +  - name: Create passthrough route for registry-console +    oc_route: +      kubeconfig: "{{ openshift_master_config_dir }}/admin.kubeconfig" +      name: registry-console +      namespace: default +      service_name: registry-console +      state: present +      tls_termination: passthrough +    register: registry_console_cockpit_kube + +  # XXX: Required for items still using command +  - name: Create temp directory for kubeconfig +    command: mktemp -d /tmp/openshift-ansible-XXXXXX +    register: mktemp +    changed_when: False + +  - set_fact: +      openshift_hosted_kubeconfig: "{{ mktemp.stdout }}/admin.kubeconfig" + +  - name: Copy the admin client config(s) +    command: > +      cp {{ openshift_master_config_dir }}/admin.kubeconfig {{ openshift_hosted_kubeconfig }} +    changed_when: False + +  # TODO: Need to fix the origin and enterprise templates so that they both respect IMAGE_PREFIX +  - name: Deploy registry-console +    command: > +      {{ openshift.common.client_binary }} new-app --template=registry-console +      {% if openshift_cockpit_deployer_prefix is defined  %}-p IMAGE_PREFIX="{{ openshift_cockpit_deployer_prefix }}"{% endif %} +      {% if openshift_cockpit_deployer_version is defined  %}-p IMAGE_VERSION="{{ openshift_cockpit_deployer_version }}"{% endif %} +      -p OPENSHIFT_OAUTH_PROVIDER_URL="{{ openshift.master.public_api_url }}" +      -p REGISTRY_HOST="{{ docker_registry_route.results.results[0].spec.host }}" +      -p COCKPIT_KUBE_URL="https://{{ registry_console_cockpit_kube.results.results[0].spec.host }}" +      --config={{ openshift_hosted_kubeconfig }} +      -n default +    register: deploy_registry_console +    changed_when: "'already exists' not in deploy_registry_console.stderr" +    failed_when: "'already exists' not in deploy_registry_console.stderr and deploy_registry_console.rc != 0" + +  - name: Delete temp directory +    file: +      name: "{{ mktemp.stdout }}" +      state: absent +    changed_when: False +    # XXX: End required for items still using command +  run_once: true diff --git a/roles/openshift_hosted/tasks/registry/secure.yml b/roles/openshift_hosted/tasks/registry/secure.yml index 216a40874..fc3248eb9 100644 --- a/roles/openshift_hosted/tasks/registry/secure.yml +++ b/roles/openshift_hosted/tasks/registry/secure.yml @@ -1,13 +1,13 @@  ---  - name: Create passthrough route for docker-registry -  command: > -    {{ openshift.common.client_binary }} create route passthrough -    --service docker-registry -    --config={{ openshift_hosted_kubeconfig }} -    -n default -  register: create_docker_registry_route -  changed_when: "'already exists' not in create_docker_registry_route.stderr" -  failed_when: "'already exists' not in create_docker_registry_route.stderr and create_docker_registry_route.rc != 0" +  oc_route: +    kubeconfig: "{{ openshift_hosted_kubeconfig }}" +    name: docker-registry +    namespace: default +    service_name: docker-registry +    state: present +    tls_termination: passthrough +  run_once: true  - name: Determine if registry certificate must be created    stat: | 
