diff --git a/foremanctl b/foremanctl index 4955bc999..936cb0017 100755 --- a/foremanctl +++ b/foremanctl @@ -4,7 +4,7 @@ OBSAH_NAME=foremanctl OBSAH_BASE=. OBSAH_DATA=${OBSAH_BASE}/src OBSAH_INVENTORY=${OBSAH_BASE}/inventories -OBSAH_STATE=.var/lib/foremanctl +OBSAH_STATE=$(dirname $(readlink -f foremanctl))/.var/lib/foremanctl OBSAH_PERSIST_PARAMS=true export OBSAH_NAME OBSAH_DATA OBSAH_INVENTORY OBSAH_STATE OBSAH_PERSIST_PARAMS diff --git a/src/playbooks/deploy/deploy.yaml b/src/playbooks/deploy/deploy.yaml index 2fafd8e44..d3b71cacd 100644 --- a/src/playbooks/deploy/deploy.yaml +++ b/src/playbooks/deploy/deploy.yaml @@ -29,6 +29,7 @@ foreman_client_certificate: "{{ client_certificate }}" foreman_oauth_consumer_key: abcdefghijklmnopqrstuvwxyz123456 foreman_oauth_consumer_secret: abcdefghijklmnopqrstuvwxyz123456 + foreman_url: "https://{{ ansible_fqdn }}" httpd_server_ca_certificate: "{{ server_ca_certificate }}" httpd_client_ca_certificate: "{{ client_ca_certificate }}" httpd_server_certificate: "{{ server_certificate }}" @@ -68,7 +69,4 @@ - httpd - pulp - foreman - post_tasks: - - name: Admin credentials - ansible.builtin.debug: - msg: "Admin credentials: {{ foreman_initial_admin_username }}:{{ foreman_initial_admin_password }}" + - post_install diff --git a/src/roles/foreman/defaults/main.yaml b/src/roles/foreman/defaults/main.yaml index dbfffd82a..d4b87bd37 100644 --- a/src/roles/foreman/defaults/main.yaml +++ b/src/roles/foreman/defaults/main.yaml @@ -9,3 +9,5 @@ foreman_database_port: 5432 foreman_database_pool: 9 foreman_database_sslmode: disable foreman_database_sslrootcert: + +foreman_url: "http://{{ ansible_fqdn }}:3000" diff --git a/src/roles/foreman/tasks/main.yaml b/src/roles/foreman/tasks/main.yaml index 0f0103c18..31afa9eaa 100644 --- a/src/roles/foreman/tasks/main.yaml +++ b/src/roles/foreman/tasks/main.yaml @@ -120,7 +120,8 @@ - name: Wait for Foreman service to be accessible ansible.builtin.uri: - url: 'http://{{ ansible_fqdn }}:3000/api/v2/ping' + url: '{{ foreman_url }}/api/v2/ping' + validate_certs: false until: foreman_status.status == 200 retries: 60 delay: 5 @@ -138,7 +139,8 @@ - name: Wait for Foreman tasks to be ready ansible.builtin.uri: - url: 'http://{{ ansible_fqdn }}:3000/api/v2/ping' + url: '{{ foreman_url }}/api/v2/ping' + validate_certs: false until: - foreman_tasks_status.status == 200 - foreman_tasks_status.json['results']['katello']['services']['foreman_tasks']['status'] == 'ok' @@ -152,6 +154,7 @@ theforeman.foreman.smart_proxy: name: "{{ ansible_fqdn }}-pulp" url: "https://{{ ansible_fqdn }}/pulp/api/v3/smart_proxy" - server_url: "http://{{ ansible_fqdn }}:3000" + server_url: "{{ foreman_url }}" username: "{{ foreman_initial_admin_username }}" password: "{{ foreman_initial_admin_password }}" + validate_certs: false diff --git a/src/roles/post_install/defaults/main.yml b/src/roles/post_install/defaults/main.yml new file mode 100644 index 000000000..373f28562 --- /dev/null +++ b/src/roles/post_install/defaults/main.yml @@ -0,0 +1 @@ +post_install_done_flag: "{{ obsah_state_path }}/.installed" diff --git a/src/roles/post_install/tasks/main.yaml b/src/roles/post_install/tasks/main.yaml new file mode 100644 index 000000000..e7ea0a2e0 --- /dev/null +++ b/src/roles/post_install/tasks/main.yaml @@ -0,0 +1,15 @@ +--- +- name: Admin credentials + ansible.builtin.debug: + msg: + - "{{ _post_install_url_msg }}" + - "{{ _post_install_cred_msg if (post_install_done_flag is not exists) else '' }}" + vars: + _post_install_url_msg: "Foreman is running at {{ foreman_url }}" + _post_install_cred_msg: "Admin credentials: {{ foreman_initial_admin_username }}:{{ foreman_initial_admin_password }}" +- name: Mark installation as complete + ansible.builtin.copy: + dest: "{{ post_install_done_flag }}" + content: '' + mode: '0640' + delegate_to: localhost