61 lines
1.4 KiB
YAML
61 lines
1.4 KiB
YAML
---
|
|
# Requires amazon-efs-utils; included, but should probably be split out?
|
|
#
|
|
- name: "Create directories"
|
|
ansible.builtin.file:
|
|
name: "{{ item.mount_point }}"
|
|
mode: '0755'
|
|
owner: root
|
|
group: root
|
|
state: directory
|
|
|
|
- name: "Install rocky-release-cloud"
|
|
become: true
|
|
become_user: root
|
|
ansible.builtin.dnf:
|
|
name: "rocky-release-cloud"
|
|
state: present
|
|
tags:
|
|
- amazon_efs_utils
|
|
- packages
|
|
- mounts
|
|
|
|
- name: "Installing amazon-efs-utils"
|
|
become: true
|
|
become_user: root
|
|
ansible.builtin.dnf:
|
|
name: "amazon-efs-utils"
|
|
state: present
|
|
tags:
|
|
- amazon_efs_utils
|
|
- packages
|
|
- mounts
|
|
|
|
- name: "Gathering ec2 facts"
|
|
amazon.aws.ec2_metadata_facts:
|
|
tags:
|
|
- mounts
|
|
|
|
# "you can use /etc/hosts" https://github.com/aws/efs-utils/issues/1
|
|
- name: "Install custom hosts file because fmlC-w amazon said so."
|
|
become: true
|
|
become_user: root
|
|
ansible.builtin.lineinfile:
|
|
path: /etc/hosts
|
|
line: "{{ item.ip_map[ansible_ec2_placement_availability_zone] }} {{ item.fsid }}.efs.{{ ansible_ec2_placement_region }}.amazonaws.com"
|
|
create: true
|
|
tags:
|
|
- mounts
|
|
|
|
- name: "Creating and mounting {{ item.fsid }} at {{ item.mount_point }}"
|
|
become: true
|
|
become_user: root
|
|
ansible.posix.mount:
|
|
path: "{{ item.mount_point }}"
|
|
src: "{{ item.fsid }}:/"
|
|
fstype: "{{ item.fstype }}"
|
|
opts: "{{ item.fsopts | join(',') }}"
|
|
state: "{{ item.state | default('mounted') }}"
|
|
tags:
|
|
- mounts
|
|
...
|