Embora isso possa ser útil ao trabalhar com alguns comandos, ele pode rapidamente se tornar cansativo e desafiador de gerenciar ao trabalhar com vários comandos ou cópias do mesmo pipeline de Jenkins.
Neste tutorial, aprenderemos a eliminar esse problema adicionando nossos comandos em um script de shell, seja um script do PowerShell ou um script de basquete. Em seguida, discutiremos como podemos dizer a Jenkins para carregar o script do shell e executar os comandos que são definidos no arquivo.
Requisitos
Para este tutorial, usamos o seguinte:
Etapa 1: Prepare seu script de shell
O primeiro passo é garantir que você tenha seu script de shell pronto para o agente Jenkins. Em seguida, criamos um script de shell simples para este tutorial sobre o Debian 11 Agent.
Faça login no seu agente Jenkins:
$ ssh [email protected]
Depois de conectado, precisamos criar um script de shell que desejamos usar em nosso pipeline Jenkins.
$ CD /Home /Debian
$ toque myscript.sh
Edite o script do shell e adicione a função do seu script de shell. Para este tutorial, obtemos a lista de arquivos e diretórios usando o AWK.
$ vim myscript.sh
Podemos então adicionar o script como mostrado no seguinte:
#!/BIN/BASH
ls -la | awk 'print $ 9'
O script anterior é um script simples que chama o comando ls -la e passa a saída para a AWK. Awk então imprime o valor na posição especificada.
O próximo passo é garantir que o shell tenha permissões. Podemos fazer isso executando o seguinte comando chmod:
$ chmod +x myscript.sh
Antes de executar o script no pipeline Jenkins, você pode executar o script na máquina local para garantir que o script esteja funcionando como esperado.
Etapa 2: Configurando um trabalho de Jenkins
Depois de terminar, voltemos ao controlador Jenkins e configure um trabalho que usa o script definido.
Selecione “Novo item” no painel Jenkins para criar um novo trabalho. Dê um nome ao trabalho e selecione o tipo de trabalho como "pipeline".
Navegue até a seção do pipeline e adicione um script de pipeline, como mostrado no seguinte:
Pipeline
Agente Label 'Debian'
estágios
Stage ('Run Script')
passos
Sh '/Home/Debian/MyScript.sh '
Clique em "Salvar" para aplicar o script e selecione "Build Now" no painel esquerdo para permitir que Jenkins construa o trabalho.
No número de construção, selecione a saída do console para ver o processo de construção para o trabalho invocado.
Conclusão
Agora você aprendeu com sucesso a invocar um script de shell de um pipeline de Jenkins em alguns passos.