1
0
mirror of https://github.com/ansible/awx.git synced 2024-11-01 08:21:15 +03:00
awx/installer/roles/local_docker/tasks/standalone.yml

157 lines
5.5 KiB
YAML
Raw Normal View History

---
- name: Activate postgres container
docker_container:
name: postgres
state: started
restart_policy: unless-stopped
image: "{{ postgresql_image }}"
volumes:
- "{{ postgres_data_dir }}:/var/lib/postgresql/data:Z"
env:
POSTGRES_USER: "{{ pg_username }}"
POSTGRES_PASSWORD: "{{ pg_password }}"
POSTGRES_DB: "{{ pg_database }}"
PGDATA: "/var/lib/postgresql/data/pgdata"
when: pg_hostname is not defined or pg_hostname == ''
register: postgres_container_activate
- name: Activate rabbitmq container
docker_container:
name: rabbitmq
state: started
restart_policy: unless-stopped
image: "{{ rabbitmq_image }}"
env:
RABBITMQ_DEFAULT_VHOST: "{{ rabbitmq_default_vhost }}"
RABBITMQ_ERLANG_COOKIE: "{{ rabbitmq_erlang_cookie }}"
RABBITMQ_DEFAULT_USER: "{{ rabbitmq_default_username }}"
RABBITMQ_DEFAULT_PASS: "{{ rabbitmq_default_password }}"
register: rabbitmq_container_activate
- name: Activate memcached container
docker_container:
name: memcached
state: started
restart_policy: unless-stopped
image: memcached:alpine
- name: Wait for postgres and rabbitmq to activate
pause:
seconds: 15
when: postgres_container_activate.changed or rabbitmq_container_activate.changed
- name: Set properties without postgres for awx_web
set_fact:
pg_hostname_actual: "{{ pg_hostname }}"
awx_web_container_links:
- rabbitmq
- memcached
when: pg_hostname is defined
- name: Set properties with postgres for awx_web
set_fact:
pg_hostname_actual: postgres
awx_web_container_links:
- rabbitmq
- memcached
- postgres
when: pg_hostname is not defined or pg_hostname == ''
- name: Set properties without postgres for awx_task
set_fact:
pg_hostname_actual: "{{ pg_hostname }}"
awx_task_container_links:
- rabbitmq
- memcached
- awx_web:awxweb
when: pg_hostname is defined
- name: Set properties with postgres for awx_task
set_fact:
pg_hostname_actual: postgres
awx_task_container_links:
- rabbitmq
- memcached
- awx_web:awxweb
- postgres
when: pg_hostname is not defined or pg_hostname == ''
- name: Activate AWX Web Container
docker_container:
name: awx_web
state: started
restart_policy: unless-stopped
image: "{{ awx_web_docker_actual_image }}"
volumes: >
{{
([project_data_dir + ':/var/lib/awx/projects:z'] if project_data_dir is defined else [])
+ ([ca_trust_dir + ':/etc/pki/ca-trust/source/anchors:ro'] if ca_trust_dir is defined else [])
}}
user: root
ports:
- "{{ host_port }}:8052"
links: "{{ awx_web_container_links|list }}"
hostname: "{{ awx_web_hostname }}"
dns_search_domains: "{{ awx_container_search_domains.split(',') if awx_container_search_domains is defined else omit }}"
dns_servers: "{{ awx_alternate_dns_servers.split(',') if awx_alternate_dns_servers is defined else omit }}"
env:
http_proxy: "{{ http_proxy | default('') }}"
https_proxy: "{{ https_proxy | default('') }}"
no_proxy: "{{ no_proxy | default('') }}"
SECRET_KEY: "{{ secret_key }}"
DATABASE_NAME: "{{ pg_database }}"
DATABASE_USER: "{{ pg_username }}"
DATABASE_PASSWORD: "{{ pg_password }}"
DATABASE_PORT: "{{ pg_port }}"
DATABASE_HOST: "{{ pg_hostname_actual }}"
RABBITMQ_USER: "{{ rabbitmq_default_username }}"
RABBITMQ_PASSWORD: "{{ rabbitmq_default_password }}"
RABBITMQ_HOST: "rabbitmq"
RABBITMQ_PORT: "{{ rabbitmq_port }}"
RABBITMQ_VHOST: "{{ rabbitmq_default_vhost }}"
MEMCACHED_HOST: "memcached"
MEMCACHED_PORT: "11211"
AWX_ADMIN_USER: "{{ admin_user|default('admin') }}"
AWX_ADMIN_PASSWORD: "{{ admin_password|default('password') }}"
2018-10-12 12:13:42 +03:00
register: awx_web_container
- name: Update CA trust in awx_web container
command: docker exec awx_web '/usr/bin/update-ca-trust'
when: awx_web_container.changed
- name: Activate AWX Task Container
docker_container:
name: awx_task
state: started
restart_policy: unless-stopped
image: "{{ awx_task_docker_actual_image }}"
volumes: >
{{
([project_data_dir + ':/var/lib/awx/projects:z'] if project_data_dir is defined else [])
+ ([ca_trust_dir + ':/etc/pki/ca-trust/source/anchors:ro'] if ca_trust_dir is defined else [])
}}
links: "{{ awx_task_container_links|list }}"
user: root
hostname: "{{ awx_task_hostname }}"
dns_search_domains: "{{ awx_container_search_domains.split(',') if awx_container_search_domains is defined else omit }}"
dns_servers: "{{ awx_alternate_dns_servers.split(',') if awx_alternate_dns_servers is defined else omit }}"
env:
http_proxy: "{{ http_proxy | default('') }}"
https_proxy: "{{ https_proxy | default('') }}"
no_proxy: "{{ no_proxy | default('') }}"
SECRET_KEY: "{{ secret_key }}"
DATABASE_NAME: "{{ pg_database }}"
DATABASE_USER: "{{ pg_username }}"
DATABASE_PASSWORD: "{{ pg_password }}"
DATABASE_HOST: "{{ pg_hostname_actual }}"
DATABASE_PORT: "{{ pg_port }}"
RABBITMQ_USER: "{{ rabbitmq_default_username }}"
RABBITMQ_PASSWORD: "{{ rabbitmq_default_password }}"
RABBITMQ_HOST: "rabbitmq"
RABBITMQ_PORT: "{{ rabbitmq_port }}"
RABBITMQ_VHOST: "{{ rabbitmq_default_vhost }}"
MEMCACHED_HOST: "memcached"
MEMCACHED_PORT: "11211"
AWX_ADMIN_USER: "{{ admin_user|default('admin') }}"
AWX_ADMIN_PASSWORD: "{{ admin_password|default('password') }}"