Andrey
или например если у тебя нельзя свой ноут юзать на работе и приходится синхрить настройки ноута и рабочего окружения
Andrey
охуенно удобно это руками делать
Pit
Andrey
Gleb
Александр
Gleb
https://github.com/viasite-ansible/ansible-role-zsh да даже вот такие банальные штуки руками не делать
Pit
Pit
Andrey
ха! а меж тем стоило заглянуть в доку: есть модуль dconf https://docs.ansible.com/ansible/latest/modules/dconf_module.html
и модуль gconftool2 для легаси: https://docs.ansible.com/ansible/latest/modules/gconftool2_module.html
GithubReleases
ansible/ansible tagged: v2.7.16
Link: https://github.com/ansible/ansible/releases/tag/v2.7.16
Release notes:
New release v2.7.16
GithubReleases
ansible/ansible tagged: v2.8.8
Link: https://github.com/ansible/ansible/releases/tag/v2.8.8
Release notes:
New release v2.8.8
GithubReleases
ansible/ansible tagged: v2.9.3
Link: https://github.com/ansible/ansible/releases/tag/v2.9.3
Release notes:
New release v2.9.3
Anonymous
При выполнении этого таска меняются права у некоторых папок в /
- name: Recursively change ownership of a directory
file:
path: "/home/{{ username }}"
state: directory
recurse: yes
owner: dmitry
group: dmitry
Я видимо где-то ошибся, но не пойму где.
Если его убрать то такого не происходит, так что дело точно в нем.
Aleksandr
UglyKoyote
Anonymous
UglyKoyote
то что оно "тут" работает а "там" не работает
UglyKoyote
дебаг/логи/пошагово таски делать
Aleksandr
-vvv в студию
UglyKoyote
и смотреть на каком именно моменте "что-то" идет не так
Alexander
Скажите пожалуйста, можно ли параметризовать плейбук? То есть передать argv[1]
Alexander
О, забыл про экстра, спасибо
[IPT] Dmitry
Кто-нибудь ставил weblogic через ansible? Как у вас дела с идемпотентностью? 😁
Pavél
𝚔𝚟𝚊𝚙𝚜
никто ansible с nsenter не пробоавл использовать, какой плагин посоветуете?
𝚔𝚟𝚊𝚙𝚜
хочу из докер контейнера хост конфигурить, а плейбуки конфигмапом отдавать
Отделение Bereke Bank
мсье знает толк в извращениях
𝚔𝚟𝚊𝚙𝚜
[IPT] Dmitry
https://github.com/lean-delivery/ansible-role-weblogic
да, интересно. у меня всё тупо сводится к
- name: get installed weblogic version to variable
shell: su -c - {{ wls_linux_user }} 'java -cp {{ wls_oracle_home }}/wlserver/server/lib/weblogic.jar weblogic.version | grep "WebLogic Server"' 2>/dev/null || echo false
args:
warn: no
register: wls_is_installed
- include_tasks: weblogic.yml
when: "wls_is_installed.stdout == 'false'"
но этого вполне достаточно для одной версии. гораздо более интересный вопрос: а как собственно конфигурировать кучу разных параметров? как быть с чувствительными переменными?
ответы я пока нашёл несколько странные: нужные параметры выписать в отдельный конфиг, чекать изменения и конфигурить. для чувствительных - создать функцию в jython для дешифрования в памяти и сравнения изменений. но как-то хотелось посмотреть и на другие варианты
Руслан
привет. Кто-нибудь знает, как это отключить?
*/usr/lib/python2.7/site-packages/urllib3/connectionpool.py:858: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
что-то нагуглить не удалось
Alexey
Руслан
Alexey
а куда это нужно вписать?
Пойдем другим путем. Можете на целевом хосте переменную окружения задать?
os.environ['PYTHONWARNINGS']="ignore:Unverified HTTPS request"
Alexey
Если поможет, то потом сообразим куда правильно ее добавить!-)
Alexey
а куда это нужно вписать?
Можно в задачу, которая вызывает варнинг, добавить:
environment:
PYTHONWARNINGS: "ignore:Unverified HTTPS request"
Руслан
не сработало
Руслан
Эта ошибка появляется для windows хостов при выставленных параметрах:
ansible_connection: winrm
ansible_winrm_server_cert_validation: ignore
Max
Коллеги, подскажите как лучше сделать. У меня роль для установки постгреса, должен ставить любую версию. Версия задается через переменную, а потом везде подставляется где надо - в именах пакетов, в путях и т.д. Версия задается в виде:
MAJOR_POSTGRESQL_VERSION: 11
или
MAJOR_POSTGRESQL_VERSION: 95
Но есть нюанс, если версия выше девятой то сервис называется виде:
postgresql-{{ MAJOR_POSTGRESQL_VERSION }}
а если 9я версия то, например так (с точкой):
postgresql-9.4
то есть просто переменная в виде```MAJOR_POSTGRESQL_VERSION: 95``` не подходит, тут нужна с точкой.
Как это реализовать?
Sergey
Dmitry
Руслан
мне нужно просто скрыть эту ошибку)
Sergey
стоп, откуда корявый серт?
Руслан
это неважно, ибо не прод
Maksim
Привет. Подскажите плз, что не так, не могу никак понять
{"changed": false, "gid": 995, "group": "wildfly", "mode": "0700", "msg": "refusing to convert from directory to symlink for /opt/wildfly", "owner": "wildfly", "path": "/opt/wildfly", "secontext": "unconfined_u:object_r:usr_t:s0", "size": 62, "state": "directory", "uid": 997}
Maksim
- name: unpacking wildfly
unarchive:
remote_src: yes
src: {{ wildfly_version }}.Final/wildfly-{{ wildfly_version }}.Final.tar.gz
dest: /opt
- name: create wildfly system group
group:
name: wildfly
state: present
system: yes
- name: create wildfly system user
user:
system: yes
state: present
shell: /sbin/nologin
name: wildfly
group: wildfly
- name: change permissions for wildfly dir
file:
path: /opt/wildfly-{{ wildfly_version }}.Final
state: directory
owner: wildfly
group: wildfly
recurse: yes
- name: create wildfly symlink
file:
src: /opt/wildfly-{{ wildfly_version }}.Final
dest: /opt/wildfly
state: link
Maksim
Валится именно на создании симлинка
Николай
Приветствую. Знает ли кто-нибудь способ устанавливать значения переменных по-умолчанию в зависимости от условий (например, версии ОС)? Ну, кроме
- name: Set default if 7
set_fact:
var: a
when:
- var is not defined
- ansible_distribution_major_version|int == 7
Николай
А то каталог defaults/ есть, а кроме main.yml в него ничего не засунешь
Sergey
Timur
Timur
- name: Load a variable file based on the OS type, or a default if not found
include_vars: '{{ platform_vars }}'
with_first_found:
- '{{ ansible_os_family }}.yml'
- '{{ ansible_distribution }}.yml'
- default.yml
loop_control:
loop_var: platform_vars
Timur
Здорово, конечно, но разве include_vars не перетрёт уже существующие значения переменных (речь о последнем примере, как понимаю)? Речь именно о том, чтобы задавать значения по-умолчанию
Вот тут что-то похожее обсуждали, но, видимо, ни к чему не пришли https://github.com/ansible/ansible/issues/14248
Делаете набор дефолтных переменных, которые подключаются через include_vars, а в defaults задаёте уже другие параметры, которым присваиваете значения подключаемых переменных
Artem
'jт
Николай
𝚔𝚟𝚊𝚙𝚜
А можно задать ansible_host через переменные окружения?
Dmitrii
Возможно ли использовать https://docs.ansible.com/ansible/latest/modules/replace_module.html в https://docs.ansible.com/ansible/latest/user_guide/playbooks_tests.html?highlight=selectattr ?
Или есть другой вариант ?
Пример:
"{{ (elb_envs.subject_alt_name | selectattr('zone', 'defined') | selectattr('record','search', (item.key|replace('_acme-challenge','')) )| map(attribute='zone') | list ) }}"
upd. https://docs.ansible.com/ansible/latest/dev_guide/testing/sanity/no-tests-as-filters.html
Maverick
Коллеги посоветуйте чтиво про lxc на русском может есть у кого ссылки
NM
Хорошая тема, но на русском нету толковых статей
Ждун
https://linuxcontainers.org/ru/#LXC
NM
А толку то ? Я их давно спрашивал когда перевод будет по lxde ? Canonical молчит, только бери почту и сочиня книгу по мотивам ответов
Maverick
Maverick
Думал может что есть поновее ну ладно
𝚔𝚟𝚊𝚙𝚜
Timur
А в чем, собственно, проблема?
Timur
Что именно не соответствует?
Timur
При no качает?
Aleksey
Всем привет, подскажите как исправить проблему
я прописал ansible_ssh_pass: "{{ vault_ansible_ssh_pass }}"
в group_vars/all.yml и свой пароль вынес в отдельный файл и зашрифовал
запускаю вот так ansible-playbook -vvv --vault-password-file pass_vl.txt -i hosts start_adsFacebook.yml
при подключении к серверу ansible подвисает на
SSH: EXEC sshpass -d9 ssh -C -o ControlMaster=auto -o ControlPersist=60s -o StrictHostKeyChecking=no -o 'IdentityFile="runner"' -o 'User="runner"' -o ConnectTimeout=10 -o ControlPath=/home/gitlab-runner/.ansible/cp/05f5bb768a 178.132.205.173 '/bin/sh -c '"'"'echo ~runner && sleep 0'"'"''
если убрать пароль с ssh ключа то таска выполнится
это все через gitlab ci запускается в runner
Stan
Как прописать переменную чтоб она не брала только 0 значение но и 1,2,3 ? : {{hostvars[groups.servers.0].inventory_hostname}} ?