Preparación de artefactos de paso de pipeline
Descubra cómo crear un artefacto de paso de pipeline para utilizarlo en pipelines y ejecuciones de pipeline.
Los pasos del pipeline son artefactos que incluyen el código que se va a ejecutar en cada paso. Este código contiene los scripts que se ejecutan durante la ejecución del paso de pipeline y se definen en el paso de pipeline como un solo artefacto.
Estos son los tipos de artefactos de pipeline que puede utilizar:
Archivos Python
El artefacto puede ser un archivo Python simple y único que contiene código para ejecutar un pipeline como este ejemplo de archivo Python:
# simple pipeline step
import time
print(" This is a step in a pipeline.")
time.sleep(3)
print("Pipeline step done.")
Este paso del pipeline imprime dos mensajes con un tiempo de espera de tres segundos entre ambos. Puede guardar el código en un único archivo simple_pipeline_step.py
y, a continuación, incluirlo como paso en un pipeline. Las ejecuciones de pipeline ya proporcionan Python preinstalado y pueden ejecutar el código con todas las bibliotecas del sistema Python.
En este ejemplo, no se utilizan bibliotecas Python de terceros. Puede controlar las bibliotecas y los entornos Python instalados utilizando su pipeline en un entorno conda.
Scripts de shell o bash
Puede utilizar un único archivo de script como en este ejemplo o uno más complejo:
#!/bin/bash
var=$1
if [ -z "$var" ]
then
echo "no argument provided"
exit 100
else
while [ "$1" != "" ]; do
echo "Received: ${1}" && shift;
done
fi
Solo se admite Bash en Oracle Linux.
Archivos zip o Tar comprimidos
A menudo, los proyectos son más complejos y requieren más código del que es posible incluir en un solo archivo. Si tiene scripts complejos de shell y proyecto de Python, puede archivar todos los archivos en un único archivo zip y utilizarlo como artefacto de paso. Mediante un archivo Fat JAR, puede ejecutar código Java como un paso de pipeline.
No hay requisitos especiales sobre cómo escribir el código Python o el script de shell para ejecutarlo como un pipeline. Puede apuntar al archivo principal mediante el parámetro PIPELINE_STEP_RUN_ENTRYPOINT
después de cargar el artefacto tar comprimido o el zip.
Consideraciones sobre el archivo de almacenamiento:
-
Archive todo el código en un solo directorio.
-
El nombre de archivo debe coincidir con el nombre del directorio raíz definido con
PIPELINE_STEP_RUN_ENTRYPOINT
.STEP_RUN_ENTRYPOINT
aparece en la página Detalles de ejecuciones de pipeline cuando está en uso.
Para comenzar con el ejemplo, descargue, descomprima y examine el archivo zipped_python_job.zip
.
"environmentVariables": {
"PIPELINE_STEP_RUN_ENTRYPOINT": "zipped_python_pipeline/entry.py"
}
Tenga en cuenta que el punto de entrada es diferente para el pipeline complejo.
Utilice estos pasos para crear un archivo de artefacto de pipeline:
-
Una vez que haya preparado el código Java, cree un archivo Fat JAR del proyecto que incluya un script de shell que ejecute el método principal de Java.
-
Cree un directorio raíz para el código del proyecto.
Todo el proyecto debe estar en un directorio raíz para comprimirlo en un archivo de almacenamiento.
-
Cree el código de pipeline en el directorio raíz.
El código de pipeline en su totalidad debe estar en el directorio raíz.
-
comprimir el directorio raíz en un archivo tar o zip.
Ahora, puede cargar el archivo de almacenamiento como artefacto de pipeline al crear un pipeline. Al crear el pipeline, agregue PIPELINE_STEP_RUN_ENTRYPOINT
como variable de entorno personalizada en la configuración del pipeline.