Como digo ao Jenkins para executar um projeto específico em um escravo específico?
Eu configurei um nó mestre Jenkins e um nó escravo que quero usar para preparar um aplicativo. Mas não consigo descobrir como configurar o projeto para executar no nó escravo que criei.
Respostas:
Defina a caixa de seleção "Restringir onde este trabalho pode ser executado" na configuração do seu trabalho e especifique o nome do seu escravo.
Se você adicionar mais escravos posteriormente, poderá definir rótulos para cada escravo e especificá-los nas configurações de seu trabalho.
Consulte esta documentação de referência:
fonte
Se você estiver executando um trabalho de Pipeline, primeiro adicione um rótulo (por exemplo, 'escravo') ao nó escravo (ou agente, como parece ser chamado agora).
Em seguida, no script de pipeline, você especifica o rótulo em que o trabalho é executado:
Pipeline declarativo:
Pipeline com script:
Este trabalho agora será executado em qualquer nó com o rótulo 'escravo'. Se você deseja que o trabalho seja executado apenas neste escravo específico, não reutilize a etiqueta. E é claro que o rótulo não precisa ser "escravo"; pode ser o que você quiser.
Atualizar:
No pipeline com script, se o seu nó se chama "Meu Nó", você também pode fazer isso:
Se você deseja apenas que o bloco de código seja executado nesse nó específico, isso é útil. No entanto, o uso de rótulos é mais flexível e pode facilitar a adição de nós para compartilhar a carga de trabalho.
fonte
Se você deseja usar Nó / Etiqueta como parâmetro, instale o Plug-in de Parâmetro NodeLabel
fonte
params += new org.jvnet.jenkins.plugins.nodelabelparameter.LabelParameterValue('testServer', testServerLabel);
(em vez do habitualStringParameterValue
).