Marzyciel¶

Marian jest marzycielem i ciągle lata obłokach. Żeby, tego dokonać potrzeby jest mu klient do aws i azure.
Rola: Clouds¶
roles/
projects/
tasks/
main.yml
aws.yml
azure.yml
templates/
aws_cli_config.j2
aws_cli_credentials.j2
defaults/
main.yml
Templates¶
[default]
output = {{ aws_output_format }}
region = {{ aws_region }}
[default]
aws_access_key_id = {{ aws_access_key_id }}
aws_secret_access_key = {{ aws_secret_access_key }}
defaults¶
$ANSIBLE_VAULT;1.1;AES256
63373531646461306634396634643263323331333634333436326636326539363765636633616634
3637343365376334373765653162633033393837343161620a663534353832666234653738386661
37323965306262393864346434653566333862666164643839343433333031653261636562636335
3335366439336230650a656334633532306431366530343461623663373663613734373563346336
31396233353333616431616430643238613537393130363962393838643938663065303831346536
61343965303339383634386366393364623335623032376263643230653862376638643039396562
33356332336339313135613664646162656535643439653938333162383033633232636566346632
31383538666264353231646635646634313834613534626434363432393837366336383563313765
32343932396133323637666632366237393036363830383833393465383230613132333332643138
39366335643365613364333261666237336232393366633463626565326162666337666635623337
33633533636330313132653336383566353863353733656231623931383337633733643334336461
36313431363437666236
Tasks¶
- import_tasks: aws.yml
- import_tasks: azure.yml
- name: create config directory
file:
path: '{{ home_path }}/.aws'
state: directory
- name: install aws cli
pip:
name: awscli
state: present
- name: Copy AWS config
template:
src: aws_cli_config.j2
dest: '{{ home_path }}/.aws/config'
- name: Copy AWS CLI credentials
template:
src: aws_cli_credentials.j2
dest: '{{ home_path }}/.aws/credentials'
- name: download azure cli
pip:
name: azure-cli
state: present
Output¶
$ ansible-vault create playbooks/roles/clouds/defaults/main.yml
New Vault password:
Confirm New Vault password:
$ ansible-vault view playbooks/roles/clouds/defaults/main.yml
Vault password:
aws_output_format: 'table'
aws_region: 'eu-west-1'
aws_access_key_id: 'access_key_id'
aws_secret_access_key: 'secret_access_key'
$ ansible-playbook -i inv.yml playbooks/clouds.yml --ask-vault-pass
Vault password:
PLAY [install and configure clouds] ******************************************************************************************************************
TASK [Gathering Facts] *******************************************************************************************************************************
ok: [localhost]
TASK [clouds : install aws cli] **********************************************************************************************************************
ok: [localhost]
TASK [clouds : Copy AWS config] **********************************************************************************************************************
ok: [localhost]
TASK [clouds : Copy AWS CLI credentials] *************************************************************************************************************
ok: [localhost]
TASK [clouds : download azure cli] *******************************************************************************************************************
ok: [localhost]
PLAY RECAP *******************************************************************************************************************************************
localhost : ok=5 changed=0 unreachable=0 failed=0
Note
Vault pozwala na szyfrowanie plików ze zmiennymi. vault