Size: a a a

2021 April 08

KP

Kirill Proskurin in Saltstack
ну надеюсь принесут с доками - там запутано
источник

OM

Omega M in Saltstack
источник

GG

George Gaál in Saltstack
Круто! Банки все наши
источник
2021 April 09

KN

Konstantin Nikolaev in Saltstack
О_о, это как?
М. Б. Ты имел ввиду вызов обычных стейтов из самописного runner стейта?
источник

VS

Vladimir Skubriev in Saltstack
Скорее всего имел в виду что когда пишешь свой стейт модуль можно вызывать в нём другой стейт модуль.

Но в документации об этом только упоминается. Первым делом думаешь именно таким образом и сделать - ну чтобы не писать свой велосипед по управлению файлом из шаблона. Но потом выясняется, что вызвать стейт модуль не так уж и тривиально. Так как ему на вход надо подовать что-то что не задокументировано. Что то вроде среды выполнения - я в глубь не вникал. Понял только что придётся разбираться. Но после выясняется (прямо по документации)  что как бы стейт модули как правило грех вызывать. Нужно вызввать модули исполнения (модули исполнения являются бэкендом стейт модулей). Взял и попробовал использовать функции модулей исполнения из своего стейт модуля. А конкретно управление файлом на основе шаблона. Получилось не сразу. Конечно отчасти в этом виновата отсутсвтующая документация - если можно так выразиться. Но и ещё то, что выглядит это не очень на практике. Т.е. чтобы использовать модули исполнения в своём стейте ни чего не остаётся как изучать их код и понимать что и как работает. Т.е. по сути изучать исходники. Документация к функциям модулей есть. Но она как выяснилось не очень то и спасает. Ко всему прочему мне на просторах инета не попалось ничего путного на тему как же эти модули писать и вообще всё только вскольз да скольз о них.

Раз два и готово со стейт модулями не согласуется. Наверное на то он и внутренний код, чтобы запрятать его.
источник

GG

George Gaál in Saltstack
Не совсем
источник

GG

George Gaál in Saltstack
модули имеют право на то, чтобы быть вызванными напрямую из стейт файлов
источник

GG

George Gaál in Saltstack
Это последнее средство - если у тебя нет подходящего стейта состояния
источник

GG

George Gaál in Saltstack
Касательно взаимосвязи - ты абсолютно прав - любой стейт вызывает под капотом модуль соответствующий. Ничего особо сложного там нет )
Исходники - действительно очень помогают. И мы, был кейс, с коллегой разбирались, почему тормозит один из стейтов - именно по исходникам и разбирались
источник

GG

George Gaál in Saltstack
А вот от чего бомбит - это от терминологии. Это стейт, и это стейт, и это стейт, но они все разные. У создателей явно была очень бедная фантазия )
источник

ЕС

Евгений Скоробогатый... in Saltstack
А вызывать через run? Или есть еще какой-то способ?
источник

GG

George Gaál in Saltstack
Ты модули вызывает - либо через run (если память не изменяет), либо в orch state (там кажется более нативный синтаксис). Больше чего-то на память не приходит
источник

YZ

Yerzhan Zhiyentayev in Saltstack
Подскажите, ктото пробовал апдейтиться с 3000/3001 сразу на 3003? Или лучше постепенно?
источник

KP

Kirill Proskurin in Saltstack
Мы прыгаем с 3001 на 3003 но пока что отложили из-за странной регрессии по перформансу. А так обычно это не важно - важно проверить все на лабах и CI
источник

YZ

Yerzhan Zhiyentayev in Saltstack
понял, спасибо
источник

KP

Kirill Proskurin in Saltstack
> Касательно взаимосвязи - ты абсолютно прав - любой стейт вызывает под капотом модуль соответствующий. Ничего особо сложного там нет )

archive.extracted передает привет... Но да так должно быть
источник

KP

Kirill Proskurin in Saltstack
> Скорее всего имел в виду что когда пишешь свой стейт модуль можно вызывать в нём другой стейт модуль.

Correct
источник

KP

Kirill Proskurin in Saltstack
> Но в документации об этом только упоминается. Первым делом думаешь именно таким образом и сделать - ну чтобы не писать свой велосипед по управлению файлом из шаблона. Но потом выясняется, что вызвать стейт модуль не так уж и тривиально. Так как ему на вход надо подовать что-то что не задокументировано.

Это не правда. На вход ему надо дать все тоже самое что дается на вход через sls например. И обычно это задокументировано. 😊

Основная проблема такого подхода это работа с ret словарем где тебе надо как-то возвращать и промежуточные чейнжи от других стейтов например. Тут приходится повозится
источник

VS

Vladimir Skubriev in Saltstack
Ну да. Худо бедно разобрался. У страха глаза велики.

Сейчас как раз вожусь с ретами и их обработкой. Так что возможны вопросы.
источник

GG

George Gaál in Saltstack
Ага
источник