Yusif
Спасибо, что навёл на мысль
Vlad
Lamobot
Читать документацию
Sergey
👍🏻 👍🏻 👍🏻 👍🏻 👍🏻
Aleksey
этот ваш редхет утомил в усмерть https://github.com/ansible-community/molecule/discussions/2942
Sergey
На одном из чатов меня зафукали что я использую docker-compose для прода лучше использовал ansible пихните в какую сторону смотреть
tutunak
Aleksey
Anonymous
Aleksey
докер хейтеры подтянулись
Lamobot
shell команда строку возвращает, скорее всего. И она не преобразуется в словарь вторым способом
Anonymous
Все на уиртуаоках?
Anonymous
А можно докер внутри докера?
Anonymous
А зачем
tutunak
Vlad
А зачем
Например у тебя разные команды собирают контейнеры и что-бы они не мешали друг-другу им выделяется для сборки отдельный dockerd. Вот и получается docker in docker.
Отделение Bereke Bank
Aleksey
Aleksey
Anonymous
И впн внутри впна..
Отделение Bereke Bank
И впн внутри впна..
Неприятные воспоминания когда у нас блочили vpn и пришлось гонять впн внутри stunnel
Отделение Bereke Bank
Vlad
безопасность запретила докер на пк вообще, а теперь крутись как можешь
Денис
git-a нема.. тырнета нет.
Отделение Bereke Bank
slurp + copy content
Lamobot
fetch + copy
G
Всем привет! Подскажите, что я делаю не так c defaults роли и lookup\default фильтрами в частности?
Вот мой defaults в роли:
---
docker_registry:
url: "{{ lookup('env', 'CI_REGISTRY') | default('registry.gitlab.com', true) }}"
user: "{{ lookup('env', 'CI_JOB_USER') | default('vagrant-molecule', true) }}"
password: "{{ lookup('env', 'CI_JOB_TOKEN') | default(lookup('env','VAGRANT_TOKEN', true)) }}"
project_name: "{{ lookup('env', 'CI_PROJECT_NAME') | default('lms', true) }}-{{ lookup('env', 'CI_COMMIT_REF_SLUG') | default('dev', true) }}"
Вызываю их в tasks:
- name: Print debug creds
debug:
msg:
- "{{ lookup('env', 'USER') }}"
- "{{ docker_registry.url }}"
- "{{ docker_registry.user }}"
- "{{ docker_registry.password }}"
и получаю ошибку:
TASK [vagrant-test-role : Print debug creds] ***********************************
fatal: [ubuntu-20.04]: FAILED! => {"msg": "An unhandled exception occurred while templating '{'url': \"{{ lookup('env', 'CI_REGISTRY') | default('registry.gitlab.com', true) }}\", 'user': \"{{ lookup('env', 'CI_JOB_USER') | default('vagrant-molecule', true) }}\", 'password': \"{{ lookup('env', 'CI_JOB_TOKEN') | default(lookup('env','VAGRANT_TOKEN', true)) }}\"}'. Error was a <class 'ansible.errors.AnsibleError'>, original message: An unhandled exception occurred while running the lookup plugin 'env'. Error was a <class 'AttributeError'>, original message: 'bool' object has no attribute 'split'"}
G
в документации написано https://docs.ansible.com/ansible/latest/user_guide/playbooks_filters.html#providing-default-values
If you want to use the default value when variables evaluate to false or an empty string you have to set the second parameter to true:
{{ lookup('env', 'MY_USER') | default('admin', true) }}
Lamobot
Elenhil
Всем привет! Подскажите, что я делаю не так c defaults роли и lookup\default фильтрами в частности?
Вот мой defaults в роли:
---
docker_registry:
url: "{{ lookup('env', 'CI_REGISTRY') | default('registry.gitlab.com', true) }}"
user: "{{ lookup('env', 'CI_JOB_USER') | default('vagrant-molecule', true) }}"
password: "{{ lookup('env', 'CI_JOB_TOKEN') | default(lookup('env','VAGRANT_TOKEN', true)) }}"
project_name: "{{ lookup('env', 'CI_PROJECT_NAME') | default('lms', true) }}-{{ lookup('env', 'CI_COMMIT_REF_SLUG') | default('dev', true) }}"
Вызываю их в tasks:
- name: Print debug creds
debug:
msg:
- "{{ lookup('env', 'USER') }}"
- "{{ docker_registry.url }}"
- "{{ docker_registry.user }}"
- "{{ docker_registry.password }}"
и получаю ошибку:
TASK [vagrant-test-role : Print debug creds] ***********************************
fatal: [ubuntu-20.04]: FAILED! => {"msg": "An unhandled exception occurred while templating '{'url': \"{{ lookup('env', 'CI_REGISTRY') | default('registry.gitlab.com', true) }}\", 'user': \"{{ lookup('env', 'CI_JOB_USER') | default('vagrant-molecule', true) }}\", 'password': \"{{ lookup('env', 'CI_JOB_TOKEN') | default(lookup('env','VAGRANT_TOKEN', true)) }}\"}'. Error was a <class 'ansible.errors.AnsibleError'>, original message: An unhandled exception occurred while running the lookup plugin 'env'. Error was a <class 'AttributeError'>, original message: 'bool' object has no attribute 'split'"}
А зачем вы дефолты переопределяете дефолтами?
Elenhil
Elenhil
Такая логика обычно идет в плейбук или групварсы
G
Ну это видимо речь про бестпрактис уже
G
Почему оно не работает пока я не понял
Aleksey
всякие ретроградные товарищи мешают прогрессу с тормозят с принятием pr. побрасайте плюсегов кому актуально https://github.com/TerryHowe/ansible-modules-hashivault/pull/263
Sergey
#LDAP ноябрь
Maksim
Молодой человек, это не для вас написано))
Vlad
tutunak
Elenhil
inqfen
Кто мешает свои образы запускать?
Anonymous
блин почему один и тот же плейбук вдруг стал выполнятся медленнее
Tadeusz
Щитон
Anonymous
а как сделать так чтобы вывод команды шелл выводился реальном времени?
Anonymous
(Еlenhil только ты не встревай со своей документацией опять)
inqfen
Grek 🇺🇦
какой команды?
Anonymous
Anonymous
- name: Install Plugin greenballs
shell: "java -jar /opt/jenkins-cli.jar -s http://127.0.0.1:8080/ -auth admin:admin install-plugin greenballs"
Grek 🇺🇦
и что ты хочешь увидеть реал тайм?
inqfen
Я не уверен что понял что ты хочешь, но callback plugin debug
Anonymous
ну вот этот этап что то долго идти стал
Grek 🇺🇦
запускай с -vvvv и смотри что там, но это не даст тебе ничего о понимании что не так
запускай команду с трейсом и выводом в файл, потом разбирайся
inqfen
Anonymous
inqfen
B и смотри stdout из переменной
Carlos Omar
Всем привет, какие материалы рекомендуете для изучения Ansible, ориентированный на автоматизацию сетей
tutunak
tutunak
tutunak
В общем в одном из них я видел
inqfen
inqfen
Хотя бы базово доки прочитать и best practices
inqfen
В них же
artb1sh
Я и твой кот
Roman