91 lines
2.3 KiB
YAML
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 |