65 lines
1.4 KiB
YAML
65 lines
1.4 KiB
YAML
|
|
- name: Load environment variables from .env file
|
|
include_vars:
|
|
file: .env.yml
|
|
name: env_vars
|
|
|
|
- name: Set Docker Hub credentials from env vars
|
|
set_fact:
|
|
docker_hub_username: "{{ env_vars.DOCKER_HUB_USERNAME }}"
|
|
docker_hub_password: "{{ env_vars.DOCKER_HUB_PASSWORD }}"
|
|
|
|
- name: Check memory and swap usage
|
|
command: free -m
|
|
register: memory_info
|
|
changed_when: false
|
|
|
|
- name: apt update
|
|
ansible.builtin.apt:
|
|
update_cache: yes
|
|
|
|
- name: install packages
|
|
ansible.builtin.apt:
|
|
name:
|
|
- jq
|
|
- vim
|
|
- curl
|
|
state: present
|
|
|
|
- name: Ensure Python pip is installed
|
|
package:
|
|
name: python3-pip
|
|
state: present
|
|
|
|
- name: Ensure Docker SDK for Python is installed
|
|
pip:
|
|
name: docker>=5.0.0
|
|
executable: pip3
|
|
|
|
- name: Ensure Docker Compose is installed
|
|
pip:
|
|
name: docker-compose>=1.29.0
|
|
executable: pip3
|
|
|
|
- name: Install 'jsondiff' Python module
|
|
pip:
|
|
name: jsondiff
|
|
executable: pip3
|
|
|
|
- name: wait for docker service
|
|
service:
|
|
name: docker
|
|
state: started
|
|
register: docker_service
|
|
until: docker_service.status.ActiveState == "active"
|
|
retries: 10
|
|
delay: 20
|
|
|
|
- name: Login to Docker Hub as vagrant user
|
|
community.docker.docker_login:
|
|
username: "{{ docker_hub_username }}"
|
|
password: "{{ docker_hub_password }}"
|
|
reauth: true
|
|
when: docker_hub_username is defined and docker_hub_password is defined
|
|
register: docker_login_result
|