Задать вопрос
  • Как в контейнере opensuse/tumbleweed добавить локаль 866?

    amk4
    @amk4 Автор вопроса
    Фуф, это я тормознул...
    У меня же Moba не поддерживает 866, конечно кракозябы.

    Зашел спец-putty с поддержкой 866 - все ок:

    e858f0d6b474:~ # export LC_ALL=ru_RU.IBM866
    
    e858f0d6b474:~ # locale
    LANG=POSIX
    LC_CTYPE="ru_RU.IBM866"
    LC_NUMERIC="ru_RU.IBM866"
    LC_TIME="ru_RU.IBM866"
    LC_COLLATE="ru_RU.IBM866"
    LC_MONETARY="ru_RU.IBM866"
    LC_MESSAGES="ru_RU.IBM866"
    LC_PAPER="ru_RU.IBM866"
    LC_NAME="ru_RU.IBM866"
    LC_ADDRESS="ru_RU.IBM866"
    LC_TELEPHONE="ru_RU.IBM866"
    LC_MEASUREMENT="ru_RU.IBM866"
    LC_IDENTIFICATION="ru_RU.IBM866"
    LC_ALL=ru_RU.IBM866
    
    e858f0d6b474:~ # ll /usr
    total 52
    dr-xr-xr-x  1 root root 4096 фев  5 14:09 bin
    drwxr-xr-x  1 root root 4096 фев  5 14:09 etc
    dr-xr-xr-x  3 root root 4096 янв 21 23:27 include
    dr-xr-xr-x  1 root root 4096 фев  5 14:09 lib
    dr-xr-xr-x  1 root root 4096 фев  5 14:09 lib64
    drwxr-xr-x  1 root root 4096 фев  5 14:09 libexec
    drwxr-xr-x 11 root root 4096 янв 21 23:27 local
    dr-xr-xr-x  1 root root 4096 фев  5 14:09 sbin
    dr-xr-xr-x  1 root root 4096 фев  5 06:29 share
    drwxr-xr-x  3 root root 4096 янв 21 23:27 src
    drwxr-xr-x  5 root root 4096 янв 21 23:27 x86_64-suse-linux


    Пока буду считать вариант с IBM866 рабочим... пошел пересобирать полный образ.
    Шашечки вторичны, главное - ехать.

    Спасибо за помощь!!
    Написано
  • Как в контейнере opensuse/tumbleweed добавить локаль 866?

    amk4
    @amk4 Автор вопроса
    причем в локали в locale path выглядит корректно

    74f9580e5b7a:/ # cat /usr/share/i18n/locales/ru_RU
    ...
    LC_TIME
    ...
    ab_alt_mon "янв";/
            "фев";/
            "мар";/
            "апр";/
            "май";/
            "июн";/
            "июл";/
            "авг";/
            "сен";/
            "окт";/
            "ноя";/
            "дек"
    abmon   "янв";/
            "фев";/
            "мар";/
            "апр";/
            "мая";/
            "июн";/
            "июл";/
            "авг";/
            "сен";/
            "окт";/
            "ноя";/
            "дек"
    d_t_fmt   "%a %d %b %Y %T"
    date_fmt  "%a %d %b %Y %T %Z"
    d_fmt     "%d.%m.%Y"
    t_fmt     "%T"
    am_pm     "";""
    t_fmt_ampm ""
    week 7;19971130;1
    first_weekday 2
    END LC_TIME
    ...


    и неожиданно grep перестал работать - видимо, какие-то параметры переносов слетают

    74f9580e5b7a:/ # ll /usr/share/i18n/locales | grep ru
    grep: (standard input): binary file matches
    
    74f9580e5b7a:/ # export LC_ALL=en_US.UTF-8
    
    74f9580e5b7a:/ # ll /usr/share/i18n/locales | grep ru
    -rw-r--r-- 1 root root    4589 Jan 20 13:33 ru_RU
    -rw-r--r-- 1 root root    2534 Jan 20 13:33 ru_UA
    Написано
  • Как в контейнере opensuse/tumbleweed добавить локаль 866?

    amk4
    @amk4 Автор вопроса
    Думал так и оставить, с использованием IBM866, но тут тоже беда...
    Ошибки (No such file or directory) ушли, но, как минимум сразу видно, что слетело в LC_TIME отображение дат ab_alt_mon.

    Вроде бы все ок:

    # docker build -t test-lc .
    Sending build context to Docker daemon   25.6kB
    Step 1/3 : FROM opensuse/tumbleweed
     ---> d62b2d354086
    Step 2/3 : RUN zypper in -y glibc-i18ndata && localedef -i ru_RU -f IBM866 ru_RU.IBM866
     ---> Using cache
     ---> e65ebb71a044
    Step 3/3 : ENV LC_ALL=ru_RU.IBM866
     ---> Using cache
     ---> c2002c4edf81
    Successfully built c2002c4edf81
    Successfully tagged test-lc:latest
    
    # docker run -d test-lc:latest bash -c "tail -f /etc/hosts"
    74f9580e5b7a2dbfe7b69922b5f36a4661abef65885df543c8f5aefc22ccd11c
    
     docker exec -it 74f9580e5b7a2 bash
    
    74f9580e5b7a:/ # env | grep LC
    LC_ALL=ru_RU.IBM866
    
    74f9580e5b7a:/ # locale
    LANG=
    LC_CTYPE="ru_RU.IBM866"
    LC_NUMERIC="ru_RU.IBM866"
    LC_TIME="ru_RU.IBM866"
    LC_COLLATE="ru_RU.IBM866"
    LC_MONETARY="ru_RU.IBM866"
    LC_MESSAGES="ru_RU.IBM866"
    LC_PAPER="ru_RU.IBM866"
    LC_NAME="ru_RU.IBM866"
    LC_ADDRESS="ru_RU.IBM866"
    LC_TELEPHONE="ru_RU.IBM866"
    LC_MEASUREMENT="ru_RU.IBM866"
    LC_IDENTIFICATION="ru_RU.IBM866"
    LC_ALL=ru_RU.IBM866
    
    74f9580e5b7a:/ # locale -a
    C
    C.utf8
    en_US.utf8
    POSIX
    ru_RU.ibm866


    А вот короткие месяцы из ab_alt_mon отображаются некорректно.

    74f9580e5b7a:/ # ll /usr
    total 60
    dr-xr-xr-x  2 root root 12288 ﭢ 21 23:27 bin
    drwxr-xr-x  9 root root  4096 ﭢ 21 23:27 etc
    dr-xr-xr-x  3 root root  4096 ﭢ 21 23:27 include
    dr-xr-xr-x  1 root root  4096 ﭢ 21 23:27 lib
    dr-xr-xr-x 12 root root 12288 ﭢ 21 23:27 lib64
    drwxr-xr-x  5 root root  4096 ﭢ 21 23:27 libexec
    drwxr-xr-x 11 root root  4096 ﭢ 21 23:27 local
    dr-xr-xr-x  2 root root  4096 ﭢ 21 23:27 sbin
    dr-xr-xr-x  1 root root  4096 䥢  5 06:29 share
    drwxr-xr-x  3 root root  4096 ﭢ 21 23:27 src
    drwxr-xr-x  5 root root  4096 ﭢ 21 23:27 x86_64-suse-linux
    Написано
  • Как в контейнере opensuse/tumbleweed добавить локаль 866?

    amk4
    @amk4 Автор вопроса
    тогда ничего не понимаю...

    Вот весь файл:

    FROM opensuse/tumbleweed
    
    RUN zypper in -y glibc-i18ndata && localedef -i ru_RU -f IBM866 ru_RU.CP866
    ENV LC_ALL=ru_RU.CP866


    На двух разных хостах его проверил:

    s2:/data1/dockerfile/testlc # docker build -t test-lc .
    [+] Building 27.0s (6/6) FINISHED                                                                                                                                                                                        docker:default
     => [internal] load build definition from Dockerfile                                                                                                                                                                               0.2s
     => => transferring dockerfile: 162B                                                                                                                                                                                               0.0s
     => [internal] load metadata for docker.io/opensuse/tumbleweed:latest                                                                                                                                                              1.9s
     => [internal] load .dockerignore                                                                                                                                                                                                  0.0s
     => => transferring context: 2B                                                                                                                                                                                                    0.0s
     => [1/2] FROM docker.io/opensuse/tumbleweed:latest@sha256:102b3f9bffb8829564c6280d443deab22d37bb1e5c84499b4cd0e41bacd1091f                                                                                                        6.1s
     => => resolve docker.io/opensuse/tumbleweed:latest@sha256:102b3f9bffb8829564c6280d443deab22d37bb1e5c84499b4cd0e41bacd1091f                                                                                                        0.0s
     => => sha256:166b96007410266dd6b0302af2bff8796d4ed26ab8da7ab67a4f1dc9b98c8d09 2.17kB / 2.17kB                                                                                                                                     0.0s
     => => sha256:d8a0f94327b38ad9369f6d48981697ee65ae327f18705a30ab40843bfa17657a 38.09MB / 38.09MB                                                                                                                                   3.7s
     => => sha256:102b3f9bffb8829564c6280d443deab22d37bb1e5c84499b4cd0e41bacd1091f 2.37kB / 2.37kB                                                                                                                                     0.0s
     => => sha256:036a2b12be7b61dcefd10f76762ccdcd4bd4244d40d74abd1bc982dd43dca5c2 634B / 634B                                                                                                                                         0.0s
     => => extracting sha256:d8a0f94327b38ad9369f6d48981697ee65ae327f18705a30ab40843bfa17657a                                                                                                                                          2.0s
     => [2/2] RUN zypper in -y glibc-i18ndata && localedef -i ru_RU -f IBM866 ru_RU.CP866                                                                                                                                             18.0s
     => exporting to image                                                                                                                                                                                                             0.8s
     => => exporting layers                                                                                                                                                                                                            0.7s
     => => writing image sha256:930affe9414189a97f1b81df9449aeea9fd1dd426f3ce133d9958db5a61c8082                                                                                                                                       0.0s
     => => naming to docker.io/library/test-lc                                                                                                                                                                                         0.0s
    
    s2:/data1/dockerfile/testlc # docker run -d test-lc:latest bash -c "tail -f /etc/hosts"
    450456c9675b8b5d605df154a8dfe8d9469c50dcc8417efd6da1ec17872b5542
    
    s2:/data1/dockerfile/testlc # docker exec -it 450456c9675b8b5d605df154a8dfe8d9469c50dcc8417efd6da1ec17872b5542 bash
    bash: warning: setlocale: LC_ALL: cannot change locale (ru_RU.CP866): No such file or directory
    
    450456c9675b:/ # locale -a
    locale: Cannot set LC_CTYPE to default locale: No such file or directory
    locale: Cannot set LC_MESSAGES to default locale: No such file or directory
    locale: Cannot set LC_COLLATE to default locale: No such file or directory
    C
    C.utf8
    POSIX
    en_US.utf8
    ru_RU.cp866
    450456c9675b:/ #
    Написано
  • Как в контейнере opensuse/tumbleweed добавить локаль 866?

    amk4
    @amk4 Автор вопроса
    забавно, попробовал сменить в IBM866.gz название с IBM866 на CP866XXX

    скомпилировал, вроде бы перестал ругаться на export LC_ALL=ru_RU.CPX866XXX

    хм, чего-то в сокращенном контейнере не хватает, что позволяло именовать локали как угодно?
    похоже, понимает только по
    Написано
  • Как в контейнере opensuse/tumbleweed добавить локаль 866?

    amk4
    @amk4 Автор вопроса
    хм. интересно...
    сперва так и поступал, все в общем Dockerfile указал, только последовательными RUN, без операторов &&...

    ...
    RUN zypper install -y glibc-i18ndata
    RUN localedef -i ru_RU -f CP1251 ru_RU.CP1251
    RUN localedef -i ru_RU -f IBM866 ru_RU.CP866
    ...


    После того как не взлетело - стал разбирать на новом контейнере.

    Оказалось, что ru_RU.IBM866 отрабатывает, а ru_RU.CP866 - нет.

    Посмотрел, может убрали алиасы, но нет, в IBM866.gz все есть:

    <code_set_name> IBM866
    <comment_char> %
    <escape_char> /
    % automatically generated from the charDB
    
    % alias CP866
    % alias 866
    CHARMAP
    <U0000>     /x00         NULL
    <U0001>     /x01         START OF HEADING
    ...
    Написано
  • Можно ли динамически формировать перечень jobs?

    amk4
    @amk4 Автор вопроса
    VoidVolker, снова спасибо.
    Попробовал через апи - частично получилось.

    Только перебором через апи у меня формируется не набор задач, а набор отдельных пайплайнов.
    И вместо красивого итога - один пайплайн с N джобов получается: основной пайплайн + N _пайплайнов_

    А есть ли вариант все-таки в рамках _одного_ пайплайна формировать перечень джобов динамически?
    Чтобы их junit репорты в одной кучке были.

    Сейчас проектов пять - можно, конечно, ручками просто повторить пять раз один джоб, меняя только его входную переменную - имя проекта. Но некрасиво...

    PS Сейчас у меня получилось вот так:

    launch_job:
      stage: tests
      variables:
        PROJECT_LIST: project1.xml project.xml2 ... projectN.xml
      script:
        - |
          for PROJECT in $PROJECT_LIST
          do
            curl -X POST --fail -F token=TOKEN -F ref=job-branch variables[PROJECT]=$PROJECT http://...
          done
      only:
         - launch-branch
    
    routine_job:
      stage: tests
      script:
        - testrunner.sh $PROJECT 
      only:
         - job-branch
    Написано
  • Можно ли динамически формировать перечень jobs?

    amk4
    @amk4 Автор вопроса
    Спасибо, только, похоже, не совсем правильно я сформулировал...

    Есть объекты, по количеству которых хочется сформировать однотипные джобы...
    Если три объекта - три джоба, добавили четвертый объект - такой же типичный джоб выполнился и для него.

    Т.е. не подготовить заранее N джобов в одной стадии и запускать их выборочно по событиям, а сделать цикл и повторять _один_ джоб для каждого объекта.
    Написано
  • Как добавить jar с требуемым классом при ошибке ClassNotFoundException?

    amk4
    @amk4 Автор вопроса
    Dmitry Roo, спасибо
    начал с этого - получил
    java.lang.UnsupportedClassVersionError: org/apache/logging/log4j/core/LoggerContext has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 60.0

    но вообще, оказалось, как всегда RTFM...

    а) Important: SoapUI 5.6 or later does not support HermesJMS.
    б) SoapUI Open Source 5.6.0 move to openjdk 12

    В старой SoapUI 5.5.0 (которая сама на 8й джаве) все заработало...
    Спасибо за помощь, буду искать замену JMS коннектору.
    Написано
  • Как добавить jar с требуемым классом при ошибке ClassNotFoundException?

    amk4
    @amk4 Автор вопроса
    Dmitry Roo, можно еще вопрос в продолжение?

    Проблема решилась, но поверхностно. Вопрос - можно ли подружить два разных приложения?

    Получилось-то запустить и настроить _отдельно_ SoapUI (SmartBear) и его (старый и брошенный) тул HermesJMS.

    В запускающий скрипт гермеса hermes.sh прописал путь к 8-й джаве - он нормально стартует, я в нем настроил сессию к JMS-серверу - все ок

    Но когда необходимо обращение к JMS-северу из проекта в SoapUI - дергается же напрямую hermes-1.14.jar, а не подправленный мной стартовый hermes.sh

    И пытается он запуститься, видимо, в окружении версии джавы Soap'а. Соответственно. получаю ошибку:

    2024-07-23 15:13:22,722 ERROR [errorlog] java.lang.NoClassDefFoundError: org/apache/log4j/Logger
    java.lang.NoClassDefFoundError: org/apache/log4j/Logger
    	at hermes.HermesInitialContextFactory.<clinit>(HermesInitialContextFactory.java:40) ~[hermes-1.14.jar:?]
    	at java.lang.Class.forName0(Native Method) ~[?:?]
    	at java.lang.Class.forName(Class.java:468) ~[?:?]
    	at com.sun.naming.internal.VersionHelper.loadClass(VersionHelper.java:123) ~[?:?]
    	at com.sun.naming.internal.VersionHelper.loadClass(VersionHelper.java:96) ~[?:?]
    	at javax.naming.spi.NamingManager.getFactory(NamingManager.java:746) ~[?:?]
    	at javax.naming.spi.NamingManager.lambda$getInitialContext$1(NamingManager.java:711) ~[?:?]
    	at jdk.internal.loader.AbstractClassLoaderValue$Memoizer.get(AbstractClassLoaderValue.java:329) ~[?:?]
    	at jdk.internal.loader.AbstractClassLoaderValue.computeIfAbsent(AbstractClassLoaderValue.java:205) ~[?:?]
    	at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:711) ~[?:?]
    	at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:305) ~[?:?]
    	at javax.naming.InitialContext.init(InitialContext.java:236) ~[?:?]
    	at javax.naming.InitialContext.<init>(InitialContext.java:208) ~[?:?]
    	at com.eviware.soapui.impl.wsdl.submit.transports.jms.util.HermesUtils.getHermes(HermesUtils.java:115) ~[soapui-5.6.1.jar:5.6.1]
    	at com.eviware.soapui.impl.wsdl.submit.transports.jms.util.HermesUtils.hermesContext(HermesUtils.java:84) ~[soapui-5.6.1.jar:5.6.1]
    	at com.eviware.soapui.impl.wsdl.submit.transports.jms.util.HermesUtils.getHermes(HermesUtils.java:225) ~[soapui-5.6.1.jar:5.6.1]
    	at com.eviware.soapui.impl.wsdl.submit.transports.jms.HermesJmsRequestTransport.getHermes(HermesJmsRequestTransport.java:182) ~[soapui-5.6.1.jar:5.6.1]
    	at com.eviware.soapui.impl.wsdl.submit.transports.jms.HermesJmsRequestTransport.init(HermesJmsRequestTransport.java:100) ~[soapui-5.6.1.jar:5.6.1]
    	at com.eviware.soapui.impl.wsdl.submit.transports.jms.HermesJmsRequestSendReceiveTransport.execute(HermesJmsRequestSendReceiveTransport.java:36) [soapui-5.6.1.jar:5.6.1]
    	at com.eviware.soapui.impl.wsdl.submit.transports.jms.HermesJmsRequestTransport.sendRequest(HermesJmsRequestTransport.java:95) [soapui-5.6.1.jar:5.6.1]
    	at com.eviware.soapui.impl.wsdl.WsdlSubmit.run(WsdlSubmit.java:120) [soapui-5.6.1.jar:5.6.1]
    	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?]
    	at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) [?:?]
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) [?:?]
    	at java.lang.Thread.run(Thread.java:832) [?:?]
    Caused by: java.lang.ClassNotFoundException: org.apache.log4j.Logger
    	at java.net.URLClassLoader.findClass(URLClassLoader.java:435) ~[?:?]
    	at java.lang.ClassLoader.loadClass(ClassLoader.java:589) ~[?:?]
    	at com.eviware.soapui.impl.wsdl.submit.transports.jms.util.HermesUtils$ReverseOrderClassLoader.innerLoadClass(HermesUtils.java:278) ~[soapui-5.6.1.jar:5.6.1]
    	at com.eviware.soapui.impl.wsdl.submit.transports.jms.util.HermesUtils$ReverseOrderClassLoader.loadClass(HermesUtils.java:263) ~[soapui-5.6.1.jar:5.6.1]
    	at java.lang.ClassLoader.loadClass(ClassLoader.java:522) ~[?:?]
    	... 26 more
    Написано
  • Как добавить jar с требуемым классом при ошибке ClassNotFoundException?

    amk4
    @amk4 Автор вопроса
    Спасибо за совет, заодно немного просветился по этому направлению.

    Впихнуть старую rt.jar в 9-ю джаву методом тыка так и не получилось )))

    Но, соответственно, вопрос решился применение домодульной джавы (8-й), как посоветовали в предыдущих комментариях.
    Написано
  • Как добавить jar с требуемым классом при ошибке ClassNotFoundException?

    amk4
    @amk4 Автор вопроса
    В целом, спасибо за направление.

    Проблема действительно решилась 8-й джавой.
    Насколько я понял из второго ответа по этому вопросу - в 9-й добавили модульность и это стало причиной несовместимости.

    А следующая ошибка, полученная уже на 8-й джаве интуитивно решилась заменой комплектной jar-ки xercesImpl.jar из /lib Гермеса на аналогичную из клиента целевого JMS-сервера (Aurea Sonic).
    Написано
  • Как добавить jar с требуемым классом при ошибке ClassNotFoundException?

    amk4
    @amk4 Автор вопроса
    Почитал, даже что-то понял, но легче пока не стало...
    с 9-й джавы, ее решили разбить на модули и rt.jar из отдельной джарки переехал( ли?) в modules

    Если я вижу ошибку NoClassDefFoundError: sun/reflect/Reflection - значит:
    либо все-таки rt.jar с этим классом не вошел в modules
    либо этот модуль(и) не подключены...

    Пробовал
    soap@amk175:~$ java --module-path /usr/java/jdk/jdk-9/lib/
    Error occurred during initialization of boot layer
    java.lang.LayerInstantiationException: Package jdk.internal.jimage in both module java.base and module jrt.fs

    Видимо, файл модулей конфликтует с остальными библиотеками (зачем тогда их в одной папке разместили?)

    Попробовал файл modules в отдельную папку вынести
    soap@amk175:~$ java --module-path /opt/modules9/
    В ответ вылетает хелп - что-то неверно я в синтаксисе

    Добавил -p с путями к modules в старт приложения - но ожидаемо ничего не изменилось
    Написано
  • Как добавить jar с требуемым классом при ошибке ClassNotFoundException?

    amk4
    @amk4 Автор вопроса
    Поведение изменилось, ошибка уже другая...
    soap@amk175:~$ java -version
    java version "1.8.0_261"
    Java(TM) SE Runtime Environment (build 1.8.0_261-b12)
    Java HotSpot(TM) 64-Bit Server VM (build 25.261-b12, mixed mode)
    
    soap@amk175:~$ /opt/HermesJMS/bin/hermes.sh
    Jul 18, 2024 11:11:58 PM com.sun.xml.internal.bind.v2.util.XmlFactory createParserFactory
    SEVERE: null
    org.xml.sax.SAXNotRecognizedException: Feature 'http://javax.xml.XMLConstants/feature/secure-processing' is not recognized.
            at org.apache.xerces.parsers.AbstractSAXParser.setFeature(Unknown Source)
            at org.apache.xerces.jaxp.SAXParserImpl.setFeatures(Unknown Source)
            at org.apache.xerces.jaxp.SAXParserImpl.<init>(Unknown Source)
            at org.apache.xerces.jaxp.SAXParserFactoryImpl.newSAXParserImpl(Unknown Source)
            at org.apache.xerces.jaxp.SAXParserFactoryImpl.setFeature(Unknown Source)
            at com.sun.xml.internal.bind.v2.util.XmlFactory.createParserFactory(XmlFactory.java:121)
            at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.getXMLReader(UnmarshallerImpl.java:139)
            at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:276)
            at hermes.JAXBHermesLoader.load(JAXBHermesLoader.java:302)
            at hermes.HermesContext.load(HermesContext.java:57)
            at hermes.HermesInitialContextFactory.getInitialContext(HermesInitialContextFactory.java:95)
    ...
    Написано
  • Как запустить gitlab triggered pipeline по референсу tag, а не branch?

    amk4
    @amk4 Автор вопроса
    Ну да, походу так и есть... По тегам не приходилось запускать, ожидалось немного иначе...
    Спасибо.
    Написано
  • Можно ли анализировать логи job самим gitlab-runner'ом?

    amk4
    @amk4 Автор вопроса
    Да, это я чего-то сморозил...
    Можно же только tee оставить, а перенаправление не выполнять ))
    Спасибо.
    Написано
  • Можно ли анализировать логи job самим gitlab-runner'ом?

    amk4
    @amk4 Автор вопроса
    хм, оказалось robocorp уже сам складывает копию stdout тестов в соответствующий файлик.
    Его разбор и сделал.

    Остался вопрос на будущее, можно ли и перенаправить stdout через >/>> и не потерять его вывод в логе джоба?
    Написано
  • Можно ли анализировать логи job самим gitlab-runner'ом?

    amk4
    @amk4 Автор вопроса
    Ну да, я и собирался перенаправлять stdout в файл, если не посоветуют более оптимального варианта.
    Из минусов - в логе джоба информации уже не будет, придется смотреть артефакты.
    Написано
  • Можно ли анализировать логи job самим gitlab-runner'ом?

    amk4
    @amk4 Автор вопроса
    Как раз так корректно, процедура тестирования проходит успешно.
    В ней много тестов и если один/несколько FAILED по прикладным причинам - это не повод прерывать джоб и считать весь джоб failed.
    Написано
  • Можно ли анализировать логи job самим gitlab-runner'ом?

    amk4
    @amk4 Автор вопроса
    А как раннером (который у себя на узле бежит) добавить логи, которые на самом гитлабе лежат?
    Написано