Merge pull request 'fix: correct forward stdout / stderr from script executor' (#71) from Maks1mS/ALR:issue-70 into master
Reviewed-on: #71
This commit is contained in:
@ -115,7 +115,7 @@ func InstallCmd() *cli.Command {
|
|||||||
args.Slice(),
|
args.Slice(),
|
||||||
)
|
)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return cliutils.FormatCliExit(gotext.Get("Error parsing os release"), err)
|
return cliutils.FormatCliExit(gotext.Get("Error when installing the package"), err)
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
|
@ -159,7 +159,7 @@ msgid "Command install expected at least 1 argument, got %d"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: install.go:118
|
#: install.go:118
|
||||||
msgid "Error parsing os release"
|
msgid "Error when installing the package"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: install.go:163
|
#: install.go:163
|
||||||
@ -190,6 +190,10 @@ msgstr ""
|
|||||||
msgid "Error pulling repositories"
|
msgid "Error pulling repositories"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: internal/cliutils/app_builder/builder.go:152
|
||||||
|
msgid "Error parsing os release"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: internal/cliutils/app_builder/builder.go:165
|
#: internal/cliutils/app_builder/builder.go:165
|
||||||
msgid "Unable to detect a supported package manager on the system"
|
msgid "Unable to detect a supported package manager on the system"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
@ -5,15 +5,15 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: unnamed project\n"
|
"Project-Id-Version: unnamed project\n"
|
||||||
"PO-Revision-Date: 2025-04-18 07:38+0300\n"
|
"PO-Revision-Date: 2025-04-27 18:27+0300\n"
|
||||||
"Last-Translator: Maxim Slipenko <maks1ms@alt-gnome.ru>\n"
|
"Last-Translator: Maxim Slipenko <maks1ms@alt-gnome.ru>\n"
|
||||||
"Language-Team: Russian\n"
|
"Language-Team: Russian\n"
|
||||||
"Language: ru\n"
|
"Language: ru\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
|
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
|
||||||
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
||||||
"X-Generator: Gtranslator 48.0\n"
|
"X-Generator: Gtranslator 48.0\n"
|
||||||
|
|
||||||
#: build.go:42
|
#: build.go:42
|
||||||
@ -166,8 +166,8 @@ msgid "Command install expected at least 1 argument, got %d"
|
|||||||
msgstr "Для команды install ожидался хотя бы 1 аргумент, получено %d"
|
msgstr "Для команды install ожидался хотя бы 1 аргумент, получено %d"
|
||||||
|
|
||||||
#: install.go:118
|
#: install.go:118
|
||||||
msgid "Error parsing os release"
|
msgid "Error when installing the package"
|
||||||
msgstr "Ошибка при разборе файла выпуска операционной системы"
|
msgstr "Ошибка при установке пакета"
|
||||||
|
|
||||||
#: install.go:163
|
#: install.go:163
|
||||||
msgid "Remove an installed package"
|
msgid "Remove an installed package"
|
||||||
@ -197,6 +197,10 @@ msgstr "Ошибка инициализации базы данных"
|
|||||||
msgid "Error pulling repositories"
|
msgid "Error pulling repositories"
|
||||||
msgstr "Ошибка при извлечении репозиториев"
|
msgstr "Ошибка при извлечении репозиториев"
|
||||||
|
|
||||||
|
#: internal/cliutils/app_builder/builder.go:152
|
||||||
|
msgid "Error parsing os release"
|
||||||
|
msgstr "Ошибка при разборе файла выпуска операционной системы"
|
||||||
|
|
||||||
#: internal/cliutils/app_builder/builder.go:165
|
#: internal/cliutils/app_builder/builder.go:165
|
||||||
msgid "Unable to detect a supported package manager on the system"
|
msgid "Unable to detect a supported package manager on the system"
|
||||||
msgstr "Не удалось обнаружить поддерживаемый менеджер пакетов в системе"
|
msgstr "Не удалось обнаружить поддерживаемый менеджер пакетов в системе"
|
||||||
@ -576,9 +580,6 @@ msgstr "Здесь нечего делать."
|
|||||||
#~ msgid "Error installing native packages"
|
#~ msgid "Error installing native packages"
|
||||||
#~ msgstr "Ошибка при установке нативных пакетов"
|
#~ msgstr "Ошибка при установке нативных пакетов"
|
||||||
|
|
||||||
#~ msgid "Error installing package"
|
|
||||||
#~ msgstr "Ошибка при установке пакета"
|
|
||||||
|
|
||||||
#~ msgid "Error opening config file, using defaults"
|
#~ msgid "Error opening config file, using defaults"
|
||||||
#~ msgstr ""
|
#~ msgstr ""
|
||||||
#~ "Ошибка при открытии конфигурационного файла, используются значения по "
|
#~ "Ошибка при открытии конфигурационного файла, используются значения по "
|
||||||
|
@ -237,6 +237,7 @@ func GetSafeScriptExecutor() (ScriptExecutor, func(), error) {
|
|||||||
UnixSocketConfig: &plugin.UnixSocketConfig{
|
UnixSocketConfig: &plugin.UnixSocketConfig{
|
||||||
Group: "alr",
|
Group: "alr",
|
||||||
},
|
},
|
||||||
|
SyncStderr: os.Stderr,
|
||||||
})
|
})
|
||||||
rpcClient, err := client.Client()
|
rpcClient, err := client.Client()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -73,7 +73,7 @@ func (e *LocalScriptExecutor) ExecuteFirstPass(ctx context.Context, input *Build
|
|||||||
|
|
||||||
runner, err := interp.New(
|
runner, err := interp.New(
|
||||||
interp.Env(expand.ListEnviron(env...)), // Устанавливаем окружение
|
interp.Env(expand.ListEnviron(env...)), // Устанавливаем окружение
|
||||||
interp.StdIO(os.Stdin, os.Stdout, os.Stderr), // Устанавливаем стандартный ввод-вывод
|
interp.StdIO(os.Stdin, os.Stderr, os.Stderr), // Устанавливаем стандартный ввод-вывод
|
||||||
interp.ExecHandler(helpers.Restricted.ExecHandler(handlers.NopExec)), // Ограничиваем выполнение
|
interp.ExecHandler(helpers.Restricted.ExecHandler(handlers.NopExec)), // Ограничиваем выполнение
|
||||||
interp.ReadDirHandler2(handlers.RestrictedReadDir(scriptDir)), // Ограничиваем чтение директорий
|
interp.ReadDirHandler2(handlers.RestrictedReadDir(scriptDir)), // Ограничиваем чтение директорий
|
||||||
interp.StatHandler(handlers.RestrictedStat(scriptDir)), // Ограничиваем доступ к статистике файлов
|
interp.StatHandler(handlers.RestrictedStat(scriptDir)), // Ограничиваем доступ к статистике файлов
|
||||||
@ -193,7 +193,7 @@ func (e *LocalScriptExecutor) ExecuteSecondPass(
|
|||||||
fakeroot := handlers.FakerootExecHandler(2 * time.Second)
|
fakeroot := handlers.FakerootExecHandler(2 * time.Second)
|
||||||
runner, err := interp.New(
|
runner, err := interp.New(
|
||||||
interp.Env(expand.ListEnviron(env...)), // Устанавливаем окружение
|
interp.Env(expand.ListEnviron(env...)), // Устанавливаем окружение
|
||||||
interp.StdIO(os.Stdin, os.Stdout, os.Stderr), // Устанавливаем стандартный ввод-вывод
|
interp.StdIO(os.Stdin, os.Stderr, os.Stderr), // Устанавливаем стандартный ввод-вывод
|
||||||
interp.ExecHandlers(func(next interp.ExecHandlerFunc) interp.ExecHandlerFunc {
|
interp.ExecHandlers(func(next interp.ExecHandlerFunc) interp.ExecHandlerFunc {
|
||||||
return helpers.Helpers.ExecHandler(fakeroot)
|
return helpers.Helpers.ExecHandler(fakeroot)
|
||||||
}), // Обрабатываем выполнение через fakeroot
|
}), // Обрабатываем выполнение через fakeroot
|
||||||
|
Reference in New Issue
Block a user