yopp
правда гонять под ним какой-то шеф конечно не самое приятное, потому что jruby раскрывается на длинных задачах, когда начинает ебашить jit
Denis 災 nobody
yopp
yopp
http://www.redmine.org/projects/redmine/wiki/redmineinstall
yopp
Redmine does not support JRuby because some gems do not support Rails 4.2.
yopp
штооооо
Denis 災 nobody
гг
yopp
ой, loofah
yopp
господи
yopp
когда nokogiri уже сдохнет
Anonymous
за что — непонятно
yopp
у меня травма детская с нокогири связана. это говно сожрало почти две недели моей жизни
yopp
потому что абсолютно рандомно сегфолтило руби
yopp
вобщем не пробуйте nokogiri для многопоточного разбора
Dmitry
А я тебя за руби-эксперта считал!
Olsen
yopp
я не фанат с gdb сидеть
Aleksey
господа, хочу странного, можно как то сделать —diff только для некоторых заданий ? например только для template
Aleksey
ага нашел свое хотение в открытых тасках в трекере.
Aleksey
open
akamit
привет этому чату
akamit
подскажите пожалуйста, как в jinja2 присвоить значение существующему хешу?
{% set host['name'] = '123' %} - так не прокатывает - ansible ругается AnsibleError: template error while templating string: expected token 'end of statement block'
Dmitry
мимими, ПрограммированиеНаКонфигах(tm), люблю такое :)
Dmitry
ответ для этого говна нужен или нормально переделаешь? :)
akamit
нужен
Dmitry
в общем, идешь в ansible.cfg, включаешь там
jinja2_extensions = jinja2.ext.do
потом в шаблоне
{% do host.update({'name':'123'}) %}
Dmitry
и больше насилия над шаблонами, больше! всю логику в них! :)
akamit
Dmitry
а ты задачу не сформулировал :)
Ivan
Как для группы хостов задать переменную в виде списка значений?
Ivan
сложна
akamit
а ты задачу не сформулировал :)
распространяю правила iptables - в переменной host.dest_ip - ip адрес или имя. если существует переменная что-то вроде servers[host.dest_ip] подставлять в правило ip адрес из этой переменной
akamit
{% do host.update({'name':'123'}) %} так я пробовал, но не знал, что это надо включать в конфиге, спасибо
Dmitriy
Dmitry
Dmitriy
ну хорошее решение предложил
Dmitriy
несмотря на то, что за програмирование на шаблонизаторе убивать надо
Dmitry
ну решение так себе, но сработает
akamit
в тоге сделал так
{% if host.dest_ip is defined and servers.__getitem__(host.dest_ip) is defined %}{% do host.update({'dest_ip':servers.__getitem__(host.dest_ip)}) %}{%endif%}
akamit
если это можно убрать из шаблона, подскажите пожалуйста как?
Prime
Всем привет!
Проблема с выполнением таски на хостах с одинаковыми именами-алиасами - выполняется только одна группа, хотя заявлены на выполнение обе\
Prime
[db]
...
[web]
...
[back]
host1
host2
[back:vars]
server_app=back-app
[front]
host1
host2
[front:vars]
server_app=front-app
[app:children]
back
front
[prod:children]
db
web
app
Сама таска:
- hosts: all
tasks:
- block:
- file: dest=/opt/{{ server_app }} state=directory
Команда: ansible-playbook -i hosts ./main.yml —limit "app"
Prime
Срабатывает только одна группа back
Prime
Собственно почему?) Группы же разные. Или в инвентори все хосты должны быть уникальны?
Mihail
А зачем ему по два раза на одном и том же хосте выполнять?
Prime
Эта мысль была, но там же разные группы, с разными переменными. Не зря же я их разделял 😊
Prime
Вопрос: Определил переменную в inventory. Но в таске она не определяется 😞
skipping vars_file '../vars/"{{ var_file }}"' due to an undefined variable
[all:vars]
var_file=prod.yml
таска:
---
- hosts: echo
serial: '{{ serial_num }}'
gather_facts: no
vars_files:
- ../vars/{{ var_file }}
vars:
serial_num: 1
tasks:
- block:
blablabla
Prime
ЧЯДНТ?
Dmitry
тебе точно не include_vars нужно?
Prime
ctr? gjxbnf.
Prime
сек, почитаю
Dmitry
http://docs.ansible.com/ansible/include_vars_module.html
Ivan
И всё-таки, минуя все религиозные споры. Как мне изменить X в var.stdout с содержимым
pkgX
pkgX-stuff
на
pkgXY
pkgXY-stuff
внутри playbook'a?
Ivan
- name: "Step 0"
shell: "command to get stdout_lines"
register: pkgs
- name: "Step 1"
debug:
msg: "{{ pkgs.stdout_lines | map('regex_replace', 'pkgX(.*)', 'pkgXY\\1') | list}}"
Ivan
так сказать, камингаут
Aleksey
два антипаттерана в одном таске! круто!
nvkv
Слушайте, а docker_image при каких условиях начинает клать болт на идемпотентность? В смысле, что должно произойти, чтобы он заново собрал образ?
Ivan
больше не смог
Aleksey
в питоне решили что map антипаттерн, а в ансибле что пакеты надо ставить через пакеты
Ivan
map - антипаттерн?
Aleksey
да
Ivan
это где такое пишут?
Ivan
про это надо почитать
Aleksey
google (python map deprecated)
nvkv
Ivan
пакеты кстати, ставятся через пакеты, просто имена в разных репах разные
Olsen
Aleksey
так что я был не прав
Aleksey
три анти паттерна
Ivan
Aleksey
дак кто тебе мешает
Aleksey
ставь
Aleksey
просто тербуй версию конкретную
Dmitry
Ivan
дык переменные не помогут, списки пакетов разные для каждого хоста