Общаемся на темы, посвященныe Jenkins Видео с митапов: http://youtube.com/jenkinsru Место активного общения разработчиков https://gitter.im/jenkinsci-ru/publiс Самые свежие новости https://twitter.com/jenkins_ru
всё именно так, даже более того — вроде пока ноды нет, то и объекта env нет...)
(хотя возможно это только раньше так было)
Код пайплайна исполняется на мастере. Степы - в основном на агентах.
Читать полностью…можно конечно извернуться через что-то наподобие currentBuild.rawBuild.executor.owner.node.nodeName
, или даже через какой-нибудь условный CpsThread.current()...
— но уже где-то на уровне getExecutor()
дженкинс пожалуется, что этого метода нет в вайт-листе
но зачем? env.NODE_NAME
есть и в декларативном пипелине, в крайнем случае — через script { ... }
, а если речь идёт про job dsl — то там от этого имени ноды толку чуть, его надо до разворачивания дсл получать...
Через синглтон jenkins.model.Jenkins, вероятно, нужно вытащить. Но там большинство полезных методов сразу на вход имя ноды требуют. А в замыкании this никаких полезных пропертей в отладчике не торчит?
Читать полностью…а зачем тут gitlab action?
просто дергать jenkins вебхуком
stash()
если артефакт не большой и нужно просто передать его между этапами билда, в пределах одного джобаarchiveArtifacts()
если артефакт маленький, и нужно либо его показывать тем, кто будет заглядывать в историю билдов, либо скачать из джоба который запустится сразу после нас — но артефакт не жалко продолбать если билд в дженкинсе будет удалён
заливать на фтп / нексус / артифактори / куда угодно во всех остальных случаях
Ну можно сделать линку на воркпспейс и местоположение артифакта
Читать полностью…Мы пушим артефакт в нексус и ссылку на артифакт кладём в дескрипшн джобы
Читать полностью…подскажите как из/через configFileProvider вынуть все переменные?
Читать полностью…читаем best practices. там прям с порога
Making sure to use Groovy code in Pipelines as glueЧитать полностью…
Use Groovy code to connect a set of actions rather than as the main functionality of your Pipeline. In other words, instead of relying on Pipeline functionality (Groovy or Pipeline steps) to drive the build process forward, use single steps (such as sh) to accomplish multiple parts of the build. Pipelines, as their complexity increases (the amount of Groovy code, number of steps used, etc.), require more resources (CPU, memory, storage) on the controller. Think of Pipeline as a tool to accomplish a build rather than the core of a build.
Всем привет, хочу начать использовать ansible playbooks и заменить в дальнейшем глобальные функции как global library на playbooks ansible, которые у меня есть. Кто нибудь юзает такой подход и может поделиться опытом, где сохранять плайбуке , то и то. Спасибо за ранее
Читать полностью…Подскажите, а есть ли какие-либо best practices по настройкам win10/lin нод в плане производительности? Сейчас ноды крутятся в VMках на SSD NVMe, в Proxmox.
Что-то гуглом не нашёл инфу об этом по зарубежным сайтам.
srv-jenkins-1 | realpath: /usr/share/jenkins/ref/plugins: No such file or directory
srv-jenkins-1 exited with code 1
гайз как задебажить такую ситуацию
и как предположение - код исполняется на мастере, а вот процессы - на ноде, для этого и прокидывается NODE_NAME)
Читать полностью…стало интересно "где именно" исполняется groovy код и зачем нужно было вводить переменную окружения NODE_NAME для пайплайнов. Вот и решил узнать есть ли другие способы получения имени ноды кроме env.NODE_NAME
Читать полностью…Можно лейблы, ассоциированные, но не наоборот
Смысла мало
всё хорошо, хочу узнать, существуют ли альтернативы получения имени ноды для pipeline (dsl)
Читать полностью…В менеджере ключей, или как его назвать создаёшь credential и у него появитс id
Читать полностью…Привет народ
Дано : Jenkins в VPN сети и Github repository
Нуна: Создать github webhook или githubaction который позволит запускать jenkins job при внесении изменений в бранче
вот пример от gpt
name: Run Jenkins Job
on:
push:
branches:
- main
jobs:
run-jenkins-job:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v2
- name: Run Jenkins Job
uses: jenkins/actions/jenkins@v2
with:
jenkins-url: 'http://your-jenkins-server-url/'
credentials-id: your-credentials-id
job: 'your-job-name'
wait-for-result: true
только чтото он у меня не работает и я не догоняю где брать credantials ID
ловлю вот эту ошибку !!!
Error: Unable to resolve action jenkinsci/github-action, repository not found
Зайди в ui дженкинса в воркпспейс джобы, посмотри урл, присобачь к нему в джобе путь до своего артифакта
Читать полностью…Сборка выполняется на одних воркерах, а пушь на других, т.е. есть разделение доступа
Читать полностью…Всем, привет. Подскажи плиз как артифакт(файл архив) прикрепить к результату джобы?
Читать полностью…General error during class generation: Method too large: WorkflowScript.___cps___1284 ()Lcom/cloudbees/groovy/cps/impl/CpsFunction;
Подскажите пожалуйста, есть нормальное решение? или смотреть в сторону других продуктов?
Да появляется когда пайплайн разбухает, нет выносить в отдельные либы желания куски пайплайна нет.
Трям всем.
Посоветуйте с чего начать. Интересует такой кейс.
jenkins сервер. К нему сервер агент, на котором сборка должна проходить в docker контейнере. Из веселого - мне на время сборки надо поднимать vpn сесию и закрывать ее после завершения сборки. Docker образ для поднятия vpn сесии - у меня есть. Но нет понимания всего остального (
До этого дело имел только с drone.io
Пока есть мысль приобрести машину уровня i9-13th/128gb mem и из части ОЗУ сделать RAM-диск, в который размещать каталог со сборкой
Читать полностью…дядь напомни где этот лог внутри контейнера искать, прошлый раз вроде помогло
Читать полностью…