У меня есть структура моего каталога, как это
└── digitalocean
├── README.md
├── play.yml
└── roles
├── bootstrap_server
│ └── tasks
│ └── main.yml
├── create_new_user
│ └── tasks
│ └── main.yml
├── update
│ └── tasks
│ └── main.yml
└── vimserver
├── files
│ └── vimrc_server
└── tasks
└── main.yml
Когда я создаю пользователя под ролью create_new_user
, я жестко кодировал имя пользователя как
---
- name: Creating a user named username on the specified web server.
user:
name: username
state: present
shell: /bin/bash
groups: admin
generate_ssh_key: yes
ssh_key_bits: 2048
ssh_key_file: .ssh/id_rsa
- name: Copy .ssh/id_rsa from host box to the remote box for user username
become: true
copy:
src: ~/.ssh/id_rsa.pub
dest: /home/usernmame/.ssh/authorized_keys
mode: 0600
owner: username
group: username
Одним из способов решения этой проблемы может быть создание var/main.yml
и размещение там имени пользователя. Но я хотел что-то, через которое я могу указать имя пользователя на уровне play.yml
. Поскольку я также использую имя пользователя в роли vimrcserver
.
Я вызываю роли с помощью play.yml
---
- hosts: testdroplets
roles:
- update
- bootstrap_server
- create_new_user
- vimserver
Будет ли шаблон работать здесь в этом случае? Не удалось найти много из этих SO вопросов