ansible/roles/ansiblehost/tasks/main.yml

47 lines
1.1 KiB
YAML

#!/usr/bin/ansible-playbook
# vim:ft=ansible:
---
- name: Set up system for Ansible
block:
- name: Install Ansible-required packages via apt
apt:
name: "{{ packages }}"
vars:
packages:
- python3-pip
- python3-boto
- python3-boto3
- python3-botocore
- name: Install Ansible-required packages via pip
pip:
name: "{{ packages }}"
state: latest
vars:
packages:
- ansible
- name: Create .aws directory for root
file:
path: ~/.aws
state: directory
- name: Copy AWS credentials
copy:
src: awscredentials
dest: ~/.aws/credentials
mode: 0600
- name: Copy Ansible private key
copy:
src: ansiblekey
dest: ~/.ssh/ansible
mode: 0600
- name: Create system copy of Ansible repo
git:
force: true
repo: https://gitlab.com/rehashedsalt/ansible
dest: /opt/ansible-repo
- name: Set up pull and run cronjob
cron:
hour: 0
name: ansible-pull
job: "cd /opt/ansible-repo && ansible-playbook ec2.yml"
become: true