Как в gitlab ci log скрыть вводимые команды (echo off)?
Сейчас в логах сборок вывод примерно такой (bash):
...
$ echo "Finish recompile objects"
Finish recompile objects
$ echo "BUILD - OK"
BUILD - OK
...
То есть при просмотре выводятся вводимые команды и их результат. Есть ли возможность скрыть команды и оставить только вывод?
...
Finish recompile objects
BUILD - OK
...
В cmd есть режим echo off, вот хотелось бы активировать такой же.
Буду благодарен за любые идеи :)
Ответы (1 шт):
Автор решения: Zempik
→ Ссылка
Как правильно направил aleksandr barakin в комментариях, решение заключается в многострочном скрипте с использованием | (literal)
myjob:
script:
- |
# printing the job information
echo --------------------------
echo Building ${CI_COMMIT_SHA}
echo --------------------------
На выводе в логе будет следующий результат:
(...)
$ # printing the job information # collapsed multi-line command
--------------------------
Building 629fcab9e39f8564cb2a0d1a7f104e2312a22288
--------------------------
(...)
В итоге, вводимые команды не отображаются, кроме первой, а вывод от них корректно отображается.
Больше вариантов решения можно увидеть в этом обсуждении - https://gitlab.com/gitlab-org/gitlab-runner/-/issues/4645