Привет! Иногда мне правда очень хочется, чтобы в веб-интерфейсе были настраиваемые пользователем кнопки. Я много пишу скрипты для автоматизации своего PVE-сервера, но запускать все эти скрипты через консоль – довольно мучительно. Было бы гораздо комфортнее, если бы я мог запускать эти скрипты одним нажатием кнопки в веб-интерфейсе. У нас уже есть хук-скрипты, которые можно разместить в хранилище сниппетов, а задачи PVE могут использовать хуки для автоматизации. Моя идея заключается в том, чтобы мы могли размещать скрипты в хранилище сниппетов и называть их, например, "userscript_SomeName.bash" или "userscript_SomeOtherName.sh". PVE затем мог бы сканировать хранилище сниппетов на наличие файлов, начинающихся с "userscript_", чтобы узнать, есть ли пользователискрипты, и если они есть, PVE мог бы отображать некоторые кнопки в веб-интерфейсе, чтобы сделать эти скрипты исполняемыми. В заголовке веб-интерфейса много пустого пространства. Было бы очень здорово, если бы они отображались там вот так:
Я знаю, что реализовать это не так просто, так как вам, вероятно, также придется проверять разрешения, добавлять новые привилегии, чтобы можно было ограничить, какие пользователи имеют право запускать какие скрипты и так далее. Возможно, разбор скриптов для получения метаданных, чтобы скрипт мог указывать имя, которое должно отображаться в веб-интерфейсе, необходимую привилегию и т.п. Может быть, разные состояния скриптов или скрипты, которые позволяют передавать аргументы, чтобы запуск скрипта для узла передавал имя узла скрипту и т.п... Но я бы действительно хотел это увидеть. У меня так много задач, для которых мне нужно запускать скрипты: монтирование файловых систем, разблокировка зашифрованных пулов/разделов, массовый запуск/остановка гостей в определенном порядке, отключение/включение нескольких хранилищ одновременно, загрузка/остановка других серверов через IPMI, разблокировка шифрования удаленного сервера, массовое ручное резервное копирование, переключение между режимами производительности (снижение частоты процессора и изменение режима управления процессором для экономии электроэнергии, когда работающие ВМ на самом деле не нуждаются в такой большой мощности) ... Было бы гораздо удобнее. Существует ли такая заявка на функцию в трекере ошибок или мне следует создать новую? Другие люди считают это полезным или я единственный здесь, кто активно настраивает свои узлы PVE?
Я знаю, что реализовать это не так просто, так как вам, вероятно, также придется проверять разрешения, добавлять новые привилегии, чтобы можно было ограничить, какие пользователи имеют право запускать какие скрипты и так далее. Возможно, разбор скриптов для получения метаданных, чтобы скрипт мог указывать имя, которое должно отображаться в веб-интерфейсе, необходимую привилегию и т.п. Может быть, разные состояния скриптов или скрипты, которые позволяют передавать аргументы, чтобы запуск скрипта для узла передавал имя узла скрипту и т.п... Но я бы действительно хотел это увидеть. У меня так много задач, для которых мне нужно запускать скрипты: монтирование файловых систем, разблокировка зашифрованных пулов/разделов, массовый запуск/остановка гостей в определенном порядке, отключение/включение нескольких хранилищ одновременно, загрузка/остановка других серверов через IPMI, разблокировка шифрования удаленного сервера, массовое ручное резервное копирование, переключение между режимами производительности (снижение частоты процессора и изменение режима управления процессором для экономии электроэнергии, когда работающие ВМ на самом деле не нуждаются в такой большой мощности) ... Было бы гораздо удобнее. Существует ли такая заявка на функцию в трекере ошибок или мне следует создать новую? Другие люди считают это полезным или я единственный здесь, кто активно настраивает свои узлы PVE?