Eu não quero usar a interface do usuário do Jenkins, em vez disso, gostaria de usar a linha de comando. Na linha de comando, desejo executar o Jenkinsfile no servidor Jenkins.
Isso é possível?
Digamos que eu tenho um arquivo Jenkins, se eu executar o arquivo Jenkins, ele deve executar o arquivo Jenkins no servidor Jenkins. Suponha que o trabalho ainda não esteja configurado através da interface do usuário do Jenkins.
jenkins-pipeline
jenkins-plugins
jenkinsfile
jenkins2
Buvanesh Kumar
fonte
fonte
Respostas:
Presumo que você gostaria de executar localmente para testar a lógica? Nesse caso, existe uma estrutura de teste de unidade para o pipeline declarativo / com script do Jenkins. Eu não o usei pessoalmente, mas isso me permitiria testar a lógica stubbed localmente.
Como alternativa, como você não é fã de GUIs, pode dar uma olhada no Jenkins X, que tem uma CLI muito poderosa e é mais orientado por gitops.
fonte
Eu já fiz isso antes. Essencialmente, você pode usar a CLI do Jenkins para importar / exportar trabalhos, o que permitirá criar e / ou atualizar um trabalho com a definição que você deseja executar. Seja JenkinsFile ou algum script groovy ou qualquer outra coisa. Confira este blog para obter detalhes.
Depois de (re) definir o trabalho, você o executará remotamente, usando a mesma CLI do Jenkins. Você pode verificar o progresso do trabalho na CLI e até ler os logs para ver o progresso. Não posso compartilhar o código, pois os direitos autorais pertencem a um dos meus empregadores anteriores, mas é fácil recriar.
fonte