Files
vagrant-docker-swarm/ansible/roles/common/tasks/main.yml
2025-10-17 14:11:52 +01:00

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