- name: "Wait until Greenlight is reachable via Nginx" uri: url: "{{ domains | get_url(application_id, WEB_PROTOCOL) }}" validate_certs: true status_code: 200 return_content: true register: greenlight_http until: - greenlight_http.status == 200 - "'Greenlight' in greenlight_http.content or 'Sign in' in greenlight_http.content" retries: 30 delay: 5 changed_when: false - block: - name: "Create default admin" command: cmd: > docker compose exec greenlight bundle exec rake admin:create['{{ users.administrator.username | upper }}','{{ users.administrator.email }}','{{ users.administrator.password }}'] chdir: "{{ docker_compose.directories.instance }}" register: admin_creation_result # Treat exit codes 0 (created) and 2 (already exists) as success failed_when: admin_creation_result.rc not in [0,2] rescue: - name: "Make existing user administrator" command: cmd: > docker compose exec greenlight bundle exec rake user:set_admin_role['{{ users.administrator.email }}'] chdir: "{{ docker_compose.directories.instance }}"