APython

Mar. 9th, 2021 01:38 pm
amarao: (Default)
[personal profile] amarao
troll mode:

Специальный интерпретатор питона, написанный на ансибле с помощью конечного автомата на хэндлерах. В начале делается set_fact для code с содержимым желаемого python-файла, а дальше он парсится с помощью набора when и рекурсивных include, потом исполняется посредством хэндлеров от include_role, которые делают notify/listen друг другу, разумеется, вместе с when. В некоторых случаях приходится делать в качестве таски для хэндлера include_role (так, например, всё IO делается).

В принципе, внутри кода можно написать import remote_pdb; remote_pdb.set_trace() и тогда ансибл в хэндлерах будет поллить сокеты и давать repr-шелл внутрь этого питона.

Enjoy your debugging.

Для слабых духом можно предложить транспайлер из питона в ансибл py2ansible - всё то же самое, но уже транспилированное в плейбуки. Вот тогда можно будет программировать на ансибле.

Profile

amarao: (Default)
amarao

April 2026

S M T W T F S
   1234
567 891011
12131415161718
19202122232425
2627282930  

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Apr. 12th, 2026 12:20 pm
Powered by Dreamwidth Studios