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

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

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

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

7 ответов

27 просмотров

{{ ["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 Правда не тестил

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

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

Добрый вечер, Пока не совсем понимаю как наладить общение между телеграм ботом и ПО для работы с сим боксом. По самому боту так понял: - Нужен некий баланс, который можно поп...
Magic
6
сделал сайт, прикрутил в боте сайт, и виджет логина. как автоматически логинить пользователя в аккаунт(телеграм), при входе с бота?
Александра Чернивецкая
5
Объясните, пожалуйста, почему компилятор ругается на использование в условии неинициализированной переменной: int x; Task.Run(async () => { x = await somefunc(); }).Wait...
Александр
5
Всем привет. Ребята, подскажите, пожалуйста. у ботов есть ограничение на отправку сообщений - 30 сообщений в секунду, эти ограничения накладываются на все сообщения? или на со...
Artem Stormageddon
4
Блин, ребята, сори за тупые вопросы. А можно ли как-то открыть вебапку по нажатию на кнопку в меню(которое появляется слева, команды)?
Artem Stormageddon
3
а плаксы из-под питона умеют только в комфортных условиях что-то выдавить из себя?)
Lencore
9
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
13
Коллеги, может знает кто, можно ли цвет бейджа счётчика в BackendMenu менять без бубнов?
Alex Blaze
3
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Привет!) Кто как юзает переменные в строках?) Чисто ради интереса Вот так: echo "У меня {$bananasAmount} бананов"; Или вот так: echo "У меня ${bananasAmount} бананов";
Виталий
3
Карта сайта