es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Tekton Pipelines: Habilita las características alfa utilizando yaml de pipelines publicados sin la necesidad de almacenar (y mantener) un ConfigMap de indicadores de función.

Nos gustaría usar las características experimentales de Tekton, como la característica de Pipelines dentro de Pipelines. Ya hemos instalado la característica según se describe en el README a través de “kubectl apply”, pero nos encontramos con un error como este:

No se puede ejecutar el Pipeline default/buildpacks-test-pipeline; contiene Tareas que no existen: No se pudo recuperar la Tarea “generic-gitlab-set-status”: tarea.tekton.dev “generic-gitlab-set-status” no encontrada.

En este problema se indica que debemos habilitar las características alfa de Tekton en nuestra implementación. En la documentación de Tekton en “Personalización del comportamiento del controlador de Pipelines” se describen todas las banderas de características, incluyendo las características alfa. La documentación indica que debemos cambiar el campo “enable-api-fields:” de “estable” a “alfa” si queremos usar esas características.

La forma recomendada de instalar Tekton Pipelines es mediante “kubectl apply” aprovechando un archivo yaml servido de forma remota:

kubectl apply –filename https://storage.googleapis.com/tekton-releases/pipeline/latest/release.yaml

Dentro de ese archivo vemos el ConfigMap “feature-flags” (abreviado):

apiVersion: v1
kind: ConfigMap
metadata:
name: feature-flags
namespace: tekton-pipelines
labels:
app.kubernetes.io/instance: default
app.kubernetes.io/part-of: tekton-pipelines
data:

# Al establecer esta bandera se determinarán qué características habilitadas están protegidas.
# Los valores aceptables son “estable” o “alfa”.
enable-api-fields: “estable”

¿Hay alguna forma de cambiar el campo “enable-api-fields” a “alfa” de alguna manera sobre la marcha, sin necesidad de almacenar (y a largo plazo mantener) el archivo yaml oficial de Tekton Pipeline?

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Sí, es posible cambiar el campo enable-api-fields a alpha al momento usando el comando kubectl patch. Primero, necesitas recuperar el ConfigMap actual usando el siguiente comando:

    kubectl get configmap feature-flags -n tekton-pipelines -o yaml > feature-flags.yaml
    

    Esto creará un archivo local feature-flags.yaml con el contenido del ConfigMap. Luego, puedes editar el archivo y cambiar el valor de enable-api-fields a alpha. Finalmente, puedes aplicar los cambios al ConfigMap usando el comando kubectl patch:

    kubectl patch configmap feature-flags -n tekton-pipelines --patch "$(cat feature-flags.yaml)"
    

    Esto actualizará el ConfigMap en su lugar con el nuevo valor de enable-api-fields. Este enfoque te permite realizar los cambios necesarios sin tener que almacenar una versión modificada del archivo yaml oficial de Tekton pipeline.

Comments are closed.