Evgenii
yo yo всем )
Evgenii
чуваки, подскажите, как не перетирать вложенные переменные в дефолте ?
Roman
не объявлять их в vars'ах
Evgenii
ну смотри, у меня в дефолте есть
mailserver_container_options:
env: {}
image: ""
log_driver: "json-file"
ports: []
restart: "no"
restart_policy: "on-failure"
volumes: []
log_options:
tag: "{{mailserver_container_name}}"
Ivan
ребят, chef или puppet для нового проекта выбрать?
Evgenii
в плейбуке пишу:
- name: mailserver
include_role:
name: mailserver
vars:
mailserver_container_options:
env:
OVERRIDE_HOSTNAME: "mon.localhost"
Ждун
Ivan
а тут есть кто использует ansible для ДЦ? или больших объёмов машин?
Pavel
"большие" понятие относительное....
для кого-то и 20 уже много,а кому и 1000 немного
Ivan
ну около сотни, а лучше >1000
Evgenii
ну смотри, у меня в дефолте есть
mailserver_container_options:
env: {}
image: ""
log_driver: "json-file"
ports: []
restart: "no"
restart_policy: "on-failure"
volumes: []
log_options:
tag: "{{mailserver_container_name}}"
в итоге перетирается вся верхняя переменная
TASK [mailserver : debug] *******************************************************************************************************************************************************************************************************************
ok: [192.168.56.101] => {
"msg": {
"env": {},
"image": "tvial/docker-mailserver:release-v5.8.0",
"log_driver": "json-file",
"log_options": {
"tag": "mailserver"
},
"ports": [],
"restart": "no",
"restart_policy": "on-failure",
"volumes": []
}
}
PLAY RECAP **********************************************************************************************************************************************************************************************************************************
192.168.56.101 : ok=2 changed=0 unreachable=0 failed=0
[emedvedev@emedvedev-pc mon]$ ansible-playbook -i inventory.ini test.yml
PLAY [serv] *********************************************************************************************************************************************************************************************************************************
TASK [Gathering Facts] **********************************************************************************************************************************************************************************************************************
ok: [192.168.56.101]
TASK [mailserver] ***************************************************************************************************************************************************************************************************************************
TASK [mailserver : debug] *******************************************************************************************************************************************************************************************************************
ok: [192.168.56.101] => {
"msg": {
"env": {
"OVERRIDE_HOSTNAME": "mon.localhost"
}
}
}
PLAY RECAP **********************************************************************************************************************************************************************************************************************************
192.168.56.101 : ok=2 changed=0 unreachable=0 failed=0
Evgenii
Evgenii
> 10 даже ансибл уже не вар
Ivan
ну я думаю, тут есть люди с позитивным опытом
Gleb
Aleksey
Evgenii
Aleksey
понятно.
Ivan
Evgenii
ну знаешь, люди вон и за путина голосуют )
Gleb
отдал нафиг, пусть другие страдают
Ivan
ыы
Evgenii
Ну так, что подскажет кто, как не перетирать вложенные переменные ??
Vadim
Combine
Aleksey
Tadeusz
кроме того что ansible тормоз - ниче, я считаю)
Aleksey
эк надо по другому спрашивать.
Vadim
Vadim
Если каштомер юзает терраформ чи шо, то просто читает эти скрипты чтобы подпилить самому
bebebe
Vegas
Привет, подскажите как правильно сделать что-то типа хендлера, но выполняющегося перед тасками с определенным тегом?
Например, есть несколько тасок, в каждой из которых ставятся пакеты, с тегом packages. Хотелось бы делать update_cache: yes только один, первый раз за playbook, а не для каждой таски. Или я хочу странного?
Aleksey
Bogdan (SirEdvin)
Bogdan (SirEdvin)
Ну или да, вариант выше круче)
Aleksey
- name: xxxxx
apt:
name: "{{item}}"
state: present
update_cache: "True"
cache_valid_time: "{{ apt_cache_valid_time | default (3600) }}"
with_items:
- aaa
Vegas
спасибо, кажется, то, что нужно
Aleksey
быть может, не уверен, надо убрать update_cache
Evgenii
Evgenii
http://docs.ansible.com/ansible/latest/reference_appendices/config.html?highlight=hash_behaviour#envvar-ANSIBLE_HASH_BEHAVIOUR
bebebe
Славик
Привет. Есть тут кто-нибудь кто пользуется AWX?
Развернут с помощью Docker-Compose, пытаюсь обновить с 1.0.5 до 1.0.6, просто обновляя контейнеры до последней версии. Контейнеры обновляются, но потом висит бесконечно AWX is currently upgrading... и в общем все :( В логах какихто ошибок не видно, просто какието таски постоянно выполняются.
Славик
Вдруг кто сталкивался?
manefesto
квест с обновлением awx
manefesto
я так и засел на 1.0.1
manefesto
смотрю в сторону jenkins
manefesto
кто нибудь пользуется packer ?
Aleksey
конечно
Aleksey
но тут врятли топик оный
Aleksey
@ru_hashicorp
manefesto
у хашиков тишина
manefesto
я там был
manefesto
хочу собирать кастомные lxc контейнеры
manefesto
то есть собрать через packer проблем нет, а для провижена можно использовать ansible
manefesto
правильно ?
Stas
ребят подскажите
Stas
есть роль, там есть в качестве дефолтов используется переменная словарь
Stas
application[install_dir] = "/path"
Stas
возникла потребность вызвать эту роль много раз
Stas
сделал таску в которую include_role делаю
Stas
и цикл
Stas
сделал список в котором все пути
Stas
не совсем понимаю как каждый раз подставлять в application[install_dir] нужный путь
manefesto
покажи таску
Stas
она претерпела кучу изменений)))
---
- hosts: all
vars:
install_dirs: ["/test1", "/test2"]
name: Start services
tasks:
- name: "Test"
debug:
msg: "{% for item in install_dirs %}{{ item }}{% endfor %}"
#with_items: "{{ install_dirs }}"
- include_role:
name: app/start
with_items: "{{ apps }}"
Stas
пытался в дебаге вывести нужный мне дикт
manefesto
ну и что не работает ?
Stas
я даже не понимаю как сделать
manefesto
- hosts: all
vars:
install_dirs: ["/test1", "/test2"]
name: Start services
tasks:
- name: "Test"
debug:
msg: "{{ item }}"
with_items: "{{ install_dirs }}"
Stas
пробовал и через {% set %}
Stas
это прекрасно
Stas
но роль ждет
Stas
что ей придет дикт