Домой Без рубрики Ansible: Как удалить / создать файл при запуске Ansible Playbook?

Ansible: Как удалить / создать файл при запуске Ansible Playbook?

1017
0

Ansible, без сомнения, лучший инструмент автоматизации инфраструктуры, который используется ведущими 500 компаниями по всему миру.

На Crunchify мы опубликовали множество учебных пособий по Ansible. Пожалуйста, взгляните на Ansible Archive для всех подробных уроков. Вот лучшие 3 урока.

  1. Как скопировать файл, каталог или скрипт с локального хоста на удаленный хост?
  2. Как порождать виртуальные машины Amazon EC2 с помощью Ansible?
  3. Как выполнить команды на удаленных хостах и получить результат команды (log) обратно ?

В этом уроке мы рассмотрим 3 разных совета, которые я использую в повседневной жизни.

Как удалить и заново создать файл с помощью Ansible?

Шаг 1

Убедитесь, что вы правильно настроили Ansible на Mac или Linux .

Шаг 2

Создать файл crunchify-delete-recreate-ansible.yml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
имя : Удалить и ReСоздать crunchify . TXT- файл из текущего каталога .
   хосты : местный
   соединение : местный
   collect_facts : Правда
   задачи :
     имя : удалить файл
       ignore_errors : да
       файл :
         состояние : нет на месте
         путь : crunchify. текст
     имя : Возможно создать файл, если Безразлично существующий пример
       ignore_errors : да
       файл :
         путь : crunchify.txt
         состояние : потрогать

Шаг 3

открыто hosts файл и положить ниже содержание:

1
2
[ местный ]
localhost ansible_connection = local ansible_python_interpreter = python

Шаг 4

Бежать Ansible playbook ,

1
ansibleplaybook ввв я , / hosts crunchifydeleteпересоздатьansible . YML

Вот результат:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
ВНИМАНИЕ : проведение скрипт , который загрузка libcrypto в небезопасный способ. это потерпит неудачу в будущая версия MacOS. Установите значение LIBRESSL_REDIRECT_STUB_ABORT = 1 в окружающей среды в заставить это в ошибку.
ansibleplaybook 2.7.8
   файл конфигурации знак равно Никто
   настроенный путь поиска модуля знак равно [ u '/Users/crunchify/.ansible/plugins/modules' , u '/ usr / share / ansible / plugins / modules' ]
   расположение модуля ansible python знак равно / Библиотека / Python / 2.7 / сайтпакеты / ansible
   исполняемое местоположение знак равно / usr / local / bin / ansibleplaybook
   версия на питоне знак равно 2.7.16 (по умолчанию , июль 14 2019 , 03 : 47 : 49 ) [ GCC 4.2.1 Совместимый Apple LLVM 11.0.0 ( лязг1100.0.32.4 ) (macos10 . 15objcs
Нет конфигурационный файл не найден; используя значения по умолчанию
/ Пользователи / crunchify / Документы / анзибль / хозяева не соответствовать требованиям host_list , проверьте документацию плагина, если этот является неожиданный
/ Пользователи / crunchify / Документы / анзибль / хозяева не соответствовать требованиям сценария , проверьте документацию плагина, если этот является неожиданный
Успешно разобран / Users / crunchify / Documents / ansible / хост инвентаризации источника с плагином ini
PLAYBOOK : crunchifydeleteвоссоздатьansible . yml * ******************************************************* ************************************************** *************
1 играет в crunchifydeleteвоссоздатьansible . YML
ИГРАТЬ [ Удалить и ReСоздать crunchify . TXT- файл из текущего каталога . ] ************************************************** ***************************************
ЗАДАЧА [ Сбор фактов ] ************************************************** ************************************************** *************************************
путь к задаче : / Users / crunchify / Документы / анзибль / crunchifyудалитьвоссоздатьанзибль. yml : 2
< localhost > УСТАНОВИТЬ МЕСТНОЕ СОЕДИНЕНИЕ ДЛЯ ПОЛЬЗОВАТЕЛЬ : crunchify
< localhost > EXEC / bin / sh с 'echo ~ crunchify && sleep 0'
< localhost > EXEC / bin / sh с '(umask 77 && mkdir -p ` echo /Users/crunchify/.ansible/tmp/ansible-tmp-1567010309.76-127517206399779 ` && echo ansible-tmp-1567010309.76-127517206399779 = ` echo /Users/crunchify /tmp/ansible-tmp-1567010309.76-127517206399779 `) && sleep 0 '
Использование файла модуля / Библиотека / Python / 2.7 / siteпакеты / ansible / modules / system / setup . ру
< localhost > ПОЛОЖИЛ / Пользователи / crunchify / . ansible / tmp / ansiblelocal36562FsxMwP / tmp5SGRSa TO / Пользователи / crunchify / . ansible / tmp / ansibletmp1567010309.76127517206399779 / AnsiballZ_setup . ру
< localhost > EXEC / bin / sh с 'chmod u + x /Users/crunchify/.ansible/tmp/ansible-tmp-1567010309.76-127517206399779/ /Users/crunchify/.ansible/tmp/ansible-tmp-1567010309.76-127517206399779/AnsiballZ_setup.py && 0'
< localhost > EXEC / bin / sh с 'python /Users/crunchify/.ansible/tmp/ansible-tmp-1567010309.76-127517206399779/AnsiballZ_setup.py && sleep 0'
< localhost > EXEC / bin / sh с 'rm -f -r /Users/crunchify/.ansible/tmp/ansible-tmp-1567010309.76-127517206399779/> / dev / null 2> & 1 && sleep 0'
оК: [ localhost ]
МЕТА : побежал обработчики
ЗАДАЧА [ удалить файл ] ************************************************** ************************************************** *****************************************
путь к задаче : / Users / crunchify / Документы / анзибль / crunchifyудалитьвоссоздатьанзибль. yml : 8
< localhost > УСТАНОВИТЬ МЕСТНОЕ СОЕДИНЕНИЕ ДЛЯ ПОЛЬЗОВАТЕЛЬ : crunchify
< localhost > EXEC / bin / sh с 'echo ~ crunchify && sleep 0'
< localhost > EXEC / bin / sh с '(umask 77 && mkdir -p ` echo /Users/crunchify/.ansible/tmp/ansible-tmp-1567010310.35-144146434104750 ` && echo ansible-tmp-1567010310.35-144146434104750 = ` echo /Users/crunchify/ /tmp/ansible-tmp-1567010310.35-144146434104750 `) && sleep 0 '
Использование файла модуля / Библиотека / Python / 2.7 / siteпакеты / ansible / modules / files / file . ру
< localhost > ПОЛОЖИЛ / Пользователи / crunchify / . ansible / tmp / ansiblelocal36562FsxMwP / tmpvL0NpJ TO / Пользователи / crunchify / . ansible / tmp / ansibletmp1567010310.35144146434104750 / AnsiballZ_file . ру
< localhost > EXEC / bin / sh с 'chmod u + x /Users/crunchify/.ansible/tmp/ansible-tmp-1567010310.35-144146434104750/ /Users/crunchify/.ansible/tmp/ansible-tmp-1567010310.35-144146434104750/AnsiballZ_file.py && sleep 0'
< localhost > EXEC / bin / sh с 'python /Users/crunchify/.ansible/tmp/ansible-tmp-1567010310.35-144146434104750/AnsiballZ_file.py && sleep 0'
< localhost > EXEC / bin / sh с 'rm -f -r /Users/crunchify/.ansible/tmp/ansible-tmp-1567010310.35-144146434104750/> / dev / null 2> & 1 && sleep 0'
изменилось : [ localhost ] = > {
     изменилось : правда ,
     diff : {
         после : {
             «путь» : crunchify.txt ,
             «состояние» : нет на месте
         } ,
         «до» : {
             «путь» : crunchify.txt ,
             «состояние» : файл
         }
     } ,
     вызов : {
         module_args : {
             _diff_peek : ноль ,
             _original_basename : ноль ,
             access_time : ноль ,
             access_time_format : «% Y% m% d% H% M.% S» ,
             атрибуты : ноль ,
             «резервное копирование» : ноль ,
             «контент» : ноль ,
             «разделитель» : ноль ,
             directory_mode : ноль ,
             «следовать» : правда ,
             «сила» : ложь ,
             группа : ноль ,
             «режим» : ноль ,
             «Время_ модификации» : ноль ,
             ification_time_format : «% Y% m% d% H% M.% S» ,
             владелец : ноль ,
             «путь» : crunchify.txt ,
             recurse : ложь ,
             регулярное выражение : ноль ,
             remote_src : ноль ,
             Selevel : ноль ,
             Сероль : ноль ,
             setype : ноль ,
             seuser : ноль ,
             SRC : ноль ,
             «состояние» : отсутствует ,
             unsafe_writes : ноль
         }
     } ,
     «путь» : crunchify.txt ,
     «состояние» : нет на месте
}
ЗАДАЧА [ Возможно создать файл, если его не существует, например] ************************************************** ************
путь к задаче: /Users/crunchify/Documents/ansible/crunchify-delete-recreate-ansible.yml:14
УСТАНОВИТЕ МЕСТНОЕ СОЕДИНЕНИЕ ДЛЯ ПОЛЬЗОВАТЕЛЯ: crunchify
EXEC / bin / sh -c ' echo ~ crunchify && спать 0 '
EXEC / bin / sh -c ' ( Umask 77 && MkDir р ` echo /Users/crunchify/.ansible/tmp/ansible-tmp-1567010310.67-150889598387355 ` && echo ansibletmp1567010310.67150889598387355 = ` echo /Users/crunchify/.ansible/tmp/ansible-tmp-1567010310.67-150889598387355 ` ) && спать 0 '
Использование файла модуля /Library/Python/2.7/site-packages/ansible/modules/files/file.py
PUT /Users/crunchify/.ansible/tmp/ansible-local-36562FsxMwP/tmpim0wPm TO /Users/crunchify/.ansible/tmp/ansible-tmp-1567010310.67-150889598387355/AnsiballZ_file.py
EXEC / bin / sh -c ' chmod ты + х / Пользователи / crunchify / . ansible / tmp / ansibletmp1567010310.67150889598387355 / / Пользователи / crunchify / . ansible / tmp / ansibletmp1567010310.67150889598387355 / AnsiballZ_file . ру && спать 0 '
EXEC / bin / sh -c ' python / Пользователи / crunchify / . ansible / tmp / ansibletmp1567010310.67150889598387355 / AnsiballZ_file . ру && спать 0 '
EXEC / bin / sh -c ' rm ф р / Пользователи / crunchify / . ansible / tmp / ansibletmp1567010310.67150889598387355 / > / dev / null 2 > & 1 && спать 0 '
изменилось : [ localhost ] = > {
     изменилось : правда ,
     Dest : crunchify.txt ,
     diff : {
         после : {
             atime : 1567010310,795358 ,
             mtime : 1567010310,795358 ,
             «путь» : crunchify.txt ,
             «состояние» : «потрогать»
         } ,
         «до» : {
             atime : 1567010310,795286 ,
             mtime : 1567010310,795286 ,
             «путь» : crunchify.txt ,
             «состояние» : нет на месте
         }
     } ,
     Гид : 20 ,
     группа : персонал ,
     вызов : {
         module_args : {
             _diff_peek : ноль ,
             _original_basename : ноль ,
             access_time : ноль ,
             access_time_format : «% Y% m% d% H% M.% S» ,
             атрибуты : ноль ,
             «резервное копирование» : ноль ,
             «контент» : ноль ,
             «разделитель» : ноль ,
             directory_mode : ноль ,
             «следовать» : правда ,
             «сила» : ложь ,
             группа : ноль ,
             «режим» : ноль ,
             «Время_ модификации» : ноль ,
             ification_time_format : «% Y% m% d% H% M.% S» ,
             владелец : ноль ,
             «путь» : crunchify.txt ,
             recurse : ложь ,
             регулярное выражение : ноль ,
             remote_src : ноль ,
             Selevel : ноль ,
             Сероль : ноль ,
             setype : ноль ,
             seuser : ноль ,
             SRC : ноль ,
             «состояние» : «потрогать»,
             unsafe_writes : ноль
         }
     } ,
     «режим» : «0644» ,
     владелец : crunchify ,
     размер : 0 ,
     «состояние» : файл ,
     UID : 502
}
МЕТА : побежал обработчики
МЕТА : побежал обработчики
ИГРАТЬ РЕКАП ************************************************** ************************************************** *
локальный                    : хорошо = 3      изменилось = 2      недоступен = 0      не удалось = 0

И это все. Выше Ansible playbook удалит существующий файл с именем crunchify.txt и создаст новый с пустым содержимым .

Как обычно, дайте нам знать по любому запросу или любой проблеме, работающей выше Ansible Playbook.

Ansible: Как удалить / создать файл при запуске Ansible Playbook?

0.00 (0%) 0 votes

ЧИТАТЬ ТАКЖЕ:  Лучшие расширения Google Chrome для поисковой оптимизации (SEO) [издание 2019 г.]

ОСТАВЬТЕ ОТВЕТ

Пожалуйста, введите ваш комментарий!
пожалуйста, введите ваше имя здесь