Estoy tratando de acceder al archivo de flujo de trabajo de Argo a través de la API REST. La documentación indica que necesito crear un rol y un token, así que eso es lo que hice. Se puede crear un rol con permisos mínimos así:
kubectl create role jenkins --verb=list,update --resource=workflows.argoproj.io Y, de hecho, esto funciona, ahora puedo acceder al servidor argo con un comando como curl http://localhost:2746/api/v1/workflows/argo -H "Authorization: $ARGO_TOKEN" . Sin embargo, parece que se necesitan más permisos para acceder a puntos finales como /api/v1/archived-workflows , porque todo lo que obtengo es esto:
{ "code": 7, "message": "permission denied" } Presumiblemente necesito especificar otros verbos y/o recursos en el kubectl create role , pero no sé cuáles y no puedo encontrar la documentación relevante. ¿Alguna pista?
Parece que el rol/cuenta de servicio/vinculación de roles creado de acuerdo con los documentos solo otorga permisos para enumerar flujos de trabajo en el espacio de nombres argo (ya sea que estén archivados o no).
El espacio de nombres se puede especificar para el Archivo así:
curl http://localhost:2746/api/v1/archived-workflows?listOptions.fieldSelector=metadata.namespace=argo -H "Authorization: $ARGO_TOKEN"