Товарищи, помогите, пожалуйста с таким вопросом. Хочу сформировать список по следующим

правилам:
1. Строка символов- abcde....
2. Для нужного количества символов из строки нужно составить список
3. К каждому элементу списка надо добавить определенную строку

num: 2
litters: abcde
names: "{{ letters[:num] | list }}"

^ вот так я получу ["a", "b"]
Нужно же получить ["host-a", "host-b"]
Какой мне нужно фильтр применить после list?

7 ответов

8 просмотров

{{ ["host"] | product(letters[:num | int] | list) | map("join", "-")}} $ ansible -m debug -a 'msg={{ ["host"] | product(letters[:num | int] | list) | map("join", "-")}}' -e 'letters=abc num=2' localhost localhost | SUCCESS => { "msg": [ "host-a", "host-b" ] }

Alexander-Khatsayuk Автор вопроса
Michael (Joom) Erdman
{{ ["host"] | product(letters[:num | int] | list) ...

Да, отлично, большое спасибо. Сложно, правда. =)

- name: Test debug: msg="host-{{ letters[item] }}" loop: "{{ range(0, num | int, 1) | flatten(1) }}"

Alexander-Khatsayuk Автор вопроса

Застрял ещё в одном месте в продолжение этой задачи. Я нагенерил имён, они нужны для создания юнитов systemd на хосте. Получается, что ролью я создаю, допустим, три сервиса: - hostname-a.service - hostname-b.service - hostname-c.service Настраиваю их и при изменениях требуется выполнить их перезапуск. Когда сервис один и его имя статично, я использую handlers, но тут наверное не получится? Можно ли передать хэндлеру имя сервиса для перезапуска при указании его в notify?

Alexander Khatsayuk
Застрял ещё в одном месте в продолжение этой задач...

В хэндлеры муторно передавать переменные, но можно сделать финт ушами и обрабатывать сервисы как хосты в инвентори, тогда у каждого будет свой хэндлер

Alexander-Khatsayuk Автор вопроса
Michael (Joom) Erdman
В хэндлеры муторно передавать переменные, но можно...

Они динамически создаются во время выполнения роли. Идея в том, что в инвентаре на хосте/группе хостов висит переменная, указывающая сколько экземпляров софта должно работать. Оно в принципе сделалось, но вот с перезапуском пока не соображу как лучше поступить.

Alexander Khatsayuk
Застрял ещё в одном месте в продолжение этой задач...

А что если к примеру что то подобное -> https://pastebin.com/B48jswG6 Правда не тестил

Похожие вопросы

Обсуждают сегодня

Всем привет, Добавил в плагин определение user agent public function registerMarkupTags() { return [ 'filters' => [ 'staticPage' => ['RainLab\Pages\Cl...
John Norton Kruger
3
Я колись ставив гуглу антиспам 3.0, може і норм, але мені не дуже зайшло. Теж думав тиждень, що його і куди. Зупинився на трех варіантах відразу всі три і включив 1. Перевір...
𝓔𝓾𝓰𝓮𝓷𝓮𝓥 J
2
Кастомные эмодзи для ботов доступны только элите, верно?
山 | Bobby | 山
3
Всем привет, может кто знает нормальных иностранных хостинг провайдеров. Что бы по качеству аналогичные netangels, beget, timeweb?
Black Cat
4
Добрый день , слышали про то что XML схемы https://schemas.xmlsoap.org/soap/envelope/ перестали работать со поза-вчера. А домен https://schemas.xmlsoap.org/ , отвечает 404 оши...
Max Dubovsky
3
Второй вопрос: снимаются ли эти ограничения при покупке на fragment хрени за кучу денег? (до 4096 / 2048)
Артем Уколов
3
Портфолио: Зовут меня Александр, мне 36 лет. Город Пушкино. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github....
Magic
10
где собака, админ группы? нычкуется и боится проявить волю, в толерантность еще не наигрался? @yelizariev
Ognezar
61
не хочешь MVP стать?
Andrii Kurdiumov
2
а как становяться ?
АДИЛЬБЕК
2
Карта сайта