Preparando Artefatos da Etapa do Pipeline
Saiba como criar um artefato de etapa do pipeline a ser usado em pipelines e execuções de pipeline.
As etapas do pipeline são artefatos que incluem o código a ser executado em cada etapa. Este código contém os scripts executados durante a execução da etapa do pipeline e são definidos na etapa do pipeline como um único artefato.
Estes são os tipos de artefatos de pipeline que você pode usar:
Arquivos Python
O artefato pode ser um arquivo Python simples e único contendo o código para executar um pipeline, como este exemplo de arquivo Python:
# simple pipeline step
import time
print(" This is a step in a pipeline.")
time.sleep(3)
print("Pipeline step done.")
Esta etapa do pipeline imprime duas mensagens com um intervalo de três segundos entre elas. Você pode salvar o código em um único arquivo simple_pipeline_step.py
e incluí-lo como uma etapa em um pipeline. As execuções de pipeline já fornecem o Python pré-instalado e podem executar o código com todas as bibliotecas do sistema Python.
Esse exemplo não usa bibliotecas Python de terceiros. Você controla as bibliotecas e os ambientes Python instalados usando o pipeline em um ambiente conda.
Scripts Bash ou Shell
Você pode usar um único arquivo de script como neste exemplo ou um mais complexo:
#!/bin/bash
var=$1
if [ -z "$var" ]
then
echo "no argument provided"
exit 100
else
while [ "$1" != "" ]; do
echo "Received: ${1}" && shift;
done
fi
Somente o Bash no Oracle Linux é suportado.
Arquivos zip ou Tar compactados
Muitas vezes, os projetos são mais complexos e exigem mais código do que é viável em um único arquivo. Se você tiver scripts shell e projeto Python complexos, poderá arquivar todos os arquivos em um único arquivo zip e usá-lo como artefato de etapa. Usando um arquivo fat JAR, você pode executar o código Java como etapa do pipeline.
Não há requisitos especiais sobre como escrever código Python ou script shell para executá-lo como pipeline. Você pode apontar para o arquivo principal usando o parâmetro PIPELINE_STEP_RUN_ENTRYPOINT
após fazer upload do zip ou do artefato tar compactado.
Considerações sobre arquivos compactados:
-
Arquive todo o código em um único diretório.
-
O nome do arquivo deve corresponder ao nome do diretório raiz definido com
PIPELINE_STEP_RUN_ENTRYPOINT
.O
STEP_RUN_ENTRYPOINT
aparece na página Detalhes de Execuções do pipeline quando está em uso.
Comece a usar a amostra baixando, descompactando e examinando o arquivo zipped_python_job.zip
.
"environmentVariables": {
"PIPELINE_STEP_RUN_ENTRYPOINT": "zipped_python_pipeline/entry.py"
}
Observe que o ponto de entrada é diferente para o pipeline complexo.
Use estas etapas para criar um arquivo de artefato de pipeline:
-
Depois que o código Java estiver pronto, crie um arquivo fat JAR do projeto que inclua um script shell que execute o Java principal.
-
Crie um diretório raiz para o código do projeto.
Todo o projeto deve estar em um diretório raiz para compactá-lo em um arquivo compactado.
-
Crie o código do pipeline no diretório raiz.
Todo o código do pipeline deve estar no diretório raiz.
-
Compactar o diretório raiz em um arquivo zip ou tar compactado.
Agora, você pode fazer upload do arquivo compactado como um artefato de pipeline ao criar um pipeline. Ao criar o pipeline, adicione PIPELINE_STEP_RUN_ENTRYPOINT
como uma variável de ambiente personalizada na configuração do pipeline.