Files
vagrant-docker-swarm/ansible/roles/common/tasks/main.yml
2025-10-12 19:03:12 +01:00

91 lines
2.3 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: Create Docker config directory for vagrant user
# file:
# path: /home/vagrant/.docker
# state: directory
# mode: '0700'
# owner: vagrant
# group: vagrant
- name: Login to Docker Hub as vagrant user
community.docker.docker_login:
username: "{{ docker_hub_username }}"
password: "{{ docker_hub_password }}"
# config_path: "/home/vagrant/.docker"
reauth: true
become_user: vagrant
when: docker_hub_username is defined and docker_hub_password is defined
register: docker_login_result
- name: Debug Docker Hub credentials
debug:
msg: |
Username: {{ docker_hub_username }}
Password: {{ docker_hub_password }}
- name: Debug Docker login result
debug:
msg: |
=== DOCKER LOGIN RESULT ===
Changed: {{ docker_login_result.changed }}
Failed: {{ docker_login_result.failed | default(false) }}
Message: {{ docker_login_result.msg | default('No message') }}
Login successful: {{ docker_login_result.login_successful | default('Unknown') }}
Full result: {{ docker_login_result }}
# when: docker_hub_username is defined and docker_hub_password is defined