Ответы пользователя по тегу Jenkins
  • Почему служба Jenkins занимает порт, но не запускается?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    service jenkins start

    вот на этом моменте нужно найти старт-скрипт дженкинса или его unit файл, и посмотреть что внутри происходит.
    Подозреваю, что там тупо лажа с определением как найти запущенный дженкинс. МОжет связано с путаницей местоположения PID файла, или просто кривой скрипт.
    Ответ написан
  • Что лучше для Jenkins: использовать ECS в качестве слейвов или на мастере использовать docker image?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    На самом деле лучшего тут нет - надо всегда адаптироваться под ваши задачи и ваш проект.
    Поднимать дополнительные слейвы в ECS имеет смысл, если у вас много билдов, много тестов, и они стоят денег.

    В сложном проекте конфигурация может выглядеть так:
    Мастер крутится в своем более-менее стабильном контейнере и рулит исключительно задачами, воркеров не запускает.
    Есть несколько видов подготовленных контейнеров для слейвов - для сборки и для тестов, с разной конфигурацией. В некоторых случаях можно даже тут сделать разные контейнеры для сборки nodejs, сборки питона, тестов, и например контейнер для performance тестов.
    Во время пайплайна нужные шаги выполняются на нужном слейве, а слейвы динамически поднимаются, если очередь вырастает и также автоматически уничтожаются, когда они не нужны. Например если контейнер поднимается за 1-2 минуты, то при простое в 20-30 минут его можно тушить. Так вы и сократите время билдов, когда их много, и сэкономите деньги на ресурсах, когда они простаивают.

    А в простом проекте, где у вас все может собираться и тестироваться на одном и том же контейнере, а билды длятся не часы а десяток минут максимум, можно и не усложнять и не заниматься оверинженерингом, все клепать на нескольких мастер воркерах.
    Ответ написан
    Комментировать
  • Как обрезать строку по "/"?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    String mylist[]=url.split("/");
    var1=mylist[0];
    var2=mylist[1];

    так?
    Ответ написан
    5 комментариев
  • Как определить переменные в bash-скрипте запускаемом Jenkins?

    saboteur_kiev
    @saboteur_kiev Куратор тега bash
    software engineer
    сперва через дженкинс выполни просто
    /usr/bin/lsof -ti tcp:8080

    убедись что команда возвращает PID
    а потом уже решай это команда неработает или переменная не передается
    Ответ написан
    Комментировать
  • Как собрать все мерж реквесты с тегом в дженкинс?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Неправильный подход.
    Если это мерж-реквест в один и тот же релиз, то несвязанные друг с другом вещи и не должны вызывать никаких конфликтов в тестировании.
    Если же возникают, то они должны пилиться в одну и ту же фича-бренчу.

    То, что вы пытаетесь исправить - это баги интеграционного тестирования. Оно исправляется банально тем, что тот кто свой мерж реквест отправил вторым и словил багу - будет разбираться.
    Просто на практике, такая ситуация встречается крайне редко при нормальной архитектуре приложения, а поэтому менять весь CI процесс в угоду именно этой фичи и вопреки нормальному git-flow по фичам - это неправильно.
    Ответ написан
    Комментировать
  • Интеграция Jenkins и Mattermost?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    2) зачем плагин? Обычный curl и почитать апи маттермоста?
    Ответ написан
  • Как передать контекст, в котором есть двойные кавычки на remote хост?

    saboteur_kiev
    @saboteur_kiev Куратор тега bash
    software engineer
    Сложный пример, лень читать столько текста.
    Но как минимум, вы не экранируете кавычки вообще. Как я понял,шлете ${CONSUL_HCL_FILE_CONTEXT... как есть, без изменений, а внутри лежат обычные кавычки. Естественно echo с ними не подружится в таком виде.
    Разберитесь с экранированием ваших шаблонов.
    На крайняк можно вообще кодировать весь файл в base64, передавать как строку, а там декодировать ее в файл.
    Ответ написан
    Комментировать
  • Почему после деплоя нет изменений на тестовом серевере?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Эм.
    В первую очередь нужно смотреть логи.
    Если там недостаточно информации, ковыряешь скрипты деплоя и добавляешь там много echo на всех важных моментах, чтобы логи были полезными и понятными.
    Потом снова смотришь логи.
    Опять же в данном вопросе информации вообще нет. Jenkins может быть настроен очень гибко, по общим фразам никто не знает. Может у тебя независимые джобы для деплоя на разные енвайрнменты, может у тебя pipeline на груви, может еще что.
    Ответ написан
    Комментировать
  • Как загрузить только измененные файлы из Jenkins на сервер?

    saboteur_kiev
    @saboteur_kiev Куратор тега bash
    software engineer
    смотря что за сервер.
    Почему нельзя на сервере делать git pull в этой конкретной ветке?

    Ну или воспользуйтесь rsync для указанной папки, в которой предварительно git pull был сделан. rsync посмотрит что изменилось.
    Ответ написан
  • Не проходит авторизация в Nexus, как правильно где храняться логин и пароль для Nexus?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    В настройки Maven на ваших jenkins нодах.
    в maven/conf/settings.xml должна быть секция servers с паролями как-то так

    <servers>
      <server>
       <id>nexus</id>
       <username>user</username>
       <password>secret</password>
      </server>
    </servers>
    Ответ написан
    Комментировать
  • Из-за чего валится Jenkins job?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Ну а причем тут Дженкинс, у вас компиляция xcodebuild падает, Дженкинс его только запускает.

    Откомпилируйте вручную, добейтесь чтобы не было ошибки, потом уже можно в дженкинс.

    * Попробуйте добавить xcodebuild -verbose, может появится полезная инфа.
    * Или вообще обновите версию xcodebuild
    Ответ написан
    2 комментария
  • Как с помощью Jenkins доставлять переменные окружения?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Видимо нужно его в гит добавить.
    Либо на продакшене есть уже свой env файл, имеющий уникальные настройки для PROD - тогда можно добавить в гит оба варианта, и при деплое проверять какой деплоить.

    Также есть вероятность, что в этом файле может быть sensitive данные в открытом виде, тогда его в гит добавлять нельзя.

    Задачу для себя подробно составьте и от нее и отталкивайтесь.
    Ответ написан
    Комментировать
  • Как в задаче jenkins запустить подключение vpn?

    saboteur_kiev
    @saboteur_kiev Куратор тега Ubuntu
    software engineer
    Вам говорит, что "openconnect"

    не может найти ваш openconnect.
    Укажите например полный путь к файлу.
    Ответ написан
    Комментировать
  • Jenkins выдает ошибку?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    прямо же пишет, что pom.xml не найдет в вашем модуле geckodriverformozilla
    Ответ написан
    2 комментария
  • Как правлильно запускать jar на удаленной машине через jenkins?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    3. Дженкинс выполняет java -jar app.jar

    Запускайте приложение в фоне, с nohup
    nohup java -jar app.jar &

    4. Дженкинс закрывает соединение , тем самым закрывает запуск комманды java

    Закрытие команды java, запущенной через nohup не произойдет, но вам нужно будет добавить шаг, который сможет проверить, что приложение запустилось. и шаг, который впоследствии остановит приложение.

    Например проверить лог файлы на определенные слова (ERROR, FAIL).
    Либо добавить в ваше приложение некий API, который можно дернуть, а он в ответ "application version xxx is running"
    И добавить остановку вашего приложения - через kill или через тот же API.
    Ответ написан
    1 комментарий
  • Как настроить ssh для git?

    saboteur_kiev
    @saboteur_kiev Куратор тега Git
    software engineer
    А как команда выглядит?
    Но в принципе - у вас проблема с доступом по сети.
    Ответ написан
    4 комментария
  • Проблемы с Jenkins и ASP.NET Core?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Пути поправьте. В ваших кракозябрах про это и говорится:

    проект "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\ArchitectureTools\Microsoft.VisualStudio.TeamArchitect.ModelingProject.targets" не обнаружен.
    Проверьте путь в объявлении и наличие файла на диске.
    
    error MSB4019: импортированный проект "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\DotNet\Microsoft.DotNet.Props" не обнаружен.
    Проверьте путь в объявлении и наличие файла на диске.
    Ответ написан
    2 комментария
  • Jenkins CI есть видеоуроки?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    Jenkins - это посидеть день-недельку, настроить автоматическую джобу и забыть.
    Поэтому нет смысла в интерактивных уроках. Каждая настройка делается один раз и обычно уникальна для проекта.
    ПОсмотрите парочку видяшек на ютубе от индусов и задавайте конкретные вопросы, а не общую настройку. Jenkins очень прост
    Ответ написан
    Комментировать
  • Как отслеживать, что машина находится в процессе выполнения тестов на одной из джоб?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Дженкинс сам следит за этим и не запускает на одной ноде несколько парралельных задач. Посмотрите настройки джобы (там есть ограничение парралельных запусков конкретной джобы) и настройки ноды, там тоже можно ограничивать.

    p.s. Если же у вас на эту машину смотрят разные дженкинсы, это сложнее. Но помнится где-то есть плагин для такого, который ставится на оба дженкинса и они тогда проверяют. Сам им не пользовался.
    Ответ написан
    Комментировать