--- - name: Get a list of existing projects command: oc get projects -o name register: oc_get_projects changed_when: false - name: Create a new project for SSO command: oc new-project "{{ itix_sso_project }}" when: '"projects/" ~ itix_sso_project not in oc_get_projects.stdout_lines' - name: Query existing deploymentconfigs command: oc get dc -n "{{ itix_sso_project }}" -o name -l "application={{ itix_sso_application_name }}" register: oc_get_dc changed_when: false - name: Deploy app if needed set_fact: deploy_needed: "{{ 'deploymentconfigs/' ~ itix_sso_application_name not in oc_get_dc.stdout_lines }}" - name: Process the OpenShift Template and create the OpenShift objects command: oc new-app -n {{ itix_sso_project }} {{ itix_sso_template }} -p "SSO_HOSTNAME={{ itix_sso_hostname }}" -p "APPLICATION_NAME={{ itix_sso_application_name }}" when: deploy_needed - name: Wait for OpenShift to create all objects pause: seconds: '{{ itix_sso_delay }}' when: deploy_needed - include: common/wait_for.yml static: no vars: pod_to_wait: - sso - sso-postgresql delay: "{{ itix_sso_delay }}" retries: "{{ itix_sso_retries }}" project: "{{ itix_sso_project }}" tags: status - name: Get Admin Username command: oc get dc {{ itix_sso_application_name }} -n "{{ itix_sso_project }}" -o 'jsonpath={.spec.template.spec.containers[0].env[?(@.name=="SSO_ADMIN_USERNAME")].value}' register: username changed_when: false tags: status - name: Get Admin Password command: oc get dc {{ itix_sso_application_name }} -n "{{ itix_sso_project }}" -o 'jsonpath={.spec.template.spec.containers[0].env[?(@.name=="SSO_ADMIN_PASSWORD")].value}' register: password changed_when: false tags: status - name: Get Route URL command: oc get route {{ itix_sso_application_name }} -n "{{ itix_sso_project }}" -o 'jsonpath={.spec.host}' register: route changed_when: false tags: status - set_fact: sso_route_name: '{{ route.stdout }}' - name: SSO is ready ! debug: msg="Login on https://{{ sso_route_name }}/auth/admin with username = '{{ username.stdout }}' and password = '{{ password.stdout }}'" tags: status