Nklya
Не совсем про дотфайлы, но про настройку макоси.
https://github.com/Nklya/macOS-setup
alexander
зато плюсы какие: очень легко настривать host specific вещи в dotfile'ах с помощью template'ов, можно использовать теги, чтобы устанавливать только часть (если хочется), можно даже на удаленную машину свои конфиги деплоить.
alexander
Victor
Anonymous
Не совсем в тему, но вот есть
https://github.com/Russell91/sshrc
Anonymous
Всё своё ношу с собой
Victor
Перефразирию свою позицию. У меня не столько много личных тачек и конфигов для него в дотфайлах
alexander
у меня всего две, и конфигов тоже среднее количестно (vim, emacs, bash, всякие мелкие утилиты). но подход с симлинками уже боль доставляет. некоторые утилиты симлинки перетирают, а еще нужно специфичные для каждого хоста настройки подправлять в конфигах или импортить внешний файл (которые тоже надо не забыть сделать).
alexander
но я понял, да, иногда это оверкилл.
Kirill
не въеду как сделать чтобы содержимое node1 копировалось в sre-k8s-4-1, node2 в sre-k8s-4-2 итд, по этому примеру: https://bpaste.net/show/ddb2c38c828d
alexander
Roman
Kirill
ого, как оказывается ansible не умеет работать с host-specific файлами, по типу file1 копируем на host1, file2 на host2, есть волшебный {{ inventory_hostname }} но для этого мне надо эти файлы или директории двигать в files/
Kirill
это прям какая-то боль, то что на шелле делается в пару строк ansible не умеет как оказывается
Victor
> host-specific файл
> в files/
Звучит логично, хотя и подозрительно.
Vadim
пути-то тут причем, интересно?
Kirill
почему подозрительно, если у тебя files/host1 files/host2 то таск будет src={{ inventory_hostname }}/ file1 итд
Victor
Victor
И почему боль с их организацией
Kirill
хмм, а бэкапы это не host-specific files?
Victor
бэкапы чего?
Kirill
да чего хочешь, как разница чего, того же smtp server, certificates etc
Kirill
потом эти все бэкапы как ресторить если они host-specific?
Victor
имхо host-specific конфигурация должна лежать в inventory, сертификат вообще проще новый поставить.
Kirill
ну если вообще всегда ставить новые сертификаты, то к чему тогда бэкапы, ну да, ну да
Victor
бекапить нужно дату, которая не является конфигурацией
Kirill
какую дату если у тебя сотни k8s нод, с сертификатами, и если одна нода вылетает тебе надо максимально быстро сделать рестор, включая сертификаты
Victor
Но зачем, если можно завести новую ноду?
Kirill
потому что kubeletом надо обновлять все k8s workers если упал мастер, а в случае рестора не надо
Vadim
хранить сертификаты для каждой ноды в ansible? Но зачем? Есть tls bootstrapping
Victor
Sergey
Victor
Sergey
зато для тестов самое оно(если ресурсов немного)
можно разрешить мастеру деплоить на себя
Victor
Kirill
ты удивишься но деплоев в мире с одним мастером пруд пруди
Victor
в продакшене?
Kirill
и мы не ограничиваемся одним kubernetes, при управлениями 10-20-30 DNS auth серверами мы делаем бэкапы DNSSEC DBs, и эти вещи нельзя просто взять и создать заново при ресторе ноды
Victor
Андрей
подскажите куда копать, чтобы понять, что за d,s,p
- name: Set the l_env
set_fact:
l_env: "{% if jm_env=='Develop' %}d{% elif jm_env=='Staging'%}s{% else %}p{% endif %}" это то, что будет если true первый if и то, что будет после else?
Kirill
Egor
Андрей
Victor
Victor
Хотя судя по контексту - p - Production
Victor
Artur
привет.
с чем может быть проблема.
есть хост в заббиксе. при выполнение плейбука есть такое
- name: Add link to backup template
local_action:
module: zabbix_host
state: present
status: enabled
server_url: https://{{ zabbix_server }}
login_user: "{{ zabbix_server_login }}"
login_password: "{{ zabbix_server_password }}"
host_name: "{{ ansible_hostname }}"
link_templates:
- Template Backup
become: no
линк на шаблон создаётся, но при этом затираются все остальные линки
tutunak
Так работает этот модуль, нужно перечислять все линки
Artur
This module allows you to create, modify and delete Zabbix host entries and associated group and template data
говорят модифицировать может. или это такое странное понятие модификации у них ?
Artur
да и пример есть обновления
tutunak
Нет нормальное, а как ты этим модулем уберешь лишние шаблоны с хоста? Ну и в общем ансибл хранит стейт, т.е. к этому стейту ты приводишь хост
Artur
убирать то и не требуется. я хочу добавить линк к существующим
tutunak
я про гипотетический случай)
tutunak
в общем с такой работой модуля сам столкнулся, если дойдут руки, попробую пулреквест на изменение этого поведения сделать
𝚔𝚟𝚊𝚙𝚜
Парни подскажите как можно извлечь n первых элементов из списка, есть метод какой?
𝚔𝚟𝚊𝚙𝚜
где n - это переменная
Womchik
https://stackoverflow.com/questions/46553820/get-first-n-elements-of-a-list-in-jinja2-template-in-ansible
𝚔𝚟𝚊𝚙𝚜
циклом можно, да
𝚔𝚟𝚊𝚙𝚜
в идеале, хочется как-нибудь range из переменной подставить, типа
my_list[range]
𝚔𝚟𝚊𝚙𝚜
где range="0:3"
Womchik
ты же про jinja таки спрашиваешь?
𝚔𝚟𝚊𝚙𝚜
ага
Womchik
ну так и делай фильтрами
𝚔𝚟𝚊𝚙𝚜
каким например?
Womchik
my_list[range]
𝚔𝚟𝚊𝚙𝚜
так range - это переменная, верент ошибку типа elment not found
𝚔𝚟𝚊𝚙𝚜
пока сделал так, но чет это говно какое то :-/
- hosts: localhost
tasks:
- debug:
var: myslice
vars:
my_list:
- a
- b
- c
- d
- e
elements: 3
myslice_str: "{% for i in range(elements | int) %}{{ my_list[i] }} {% endfor %}"
myslice: "{{ (myslice_str | trim).split(\" \") }}"
bebebe
𝚔𝚟𝚊𝚙𝚜
не канает, 2 - переменная
bebebe
не канает, 2 - переменная
---
- hosts: localhost
vars:
foobar:
- 1
- 2
- 3
- 42
n: 2
gather_facts: false
tasks:
- debug:
var: foobar[0:n]
𝚔𝚟𝚊𝚙𝚜
o__O
𝚔𝚟𝚊𝚙𝚜
странно, почему у меня не сработало
𝚔𝚟𝚊𝚙𝚜
bebebe спасибо, это было просто)
bebebe
обычно в этом месте уточняют версию ansible