feat(cli): support custom CA certificates and default KinD configurations for local environments
Los mantenedores suelen responder en 2 días
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Necesita aclaración
- Estado de actividad
- Activo
- Stack tecnológico
- go, kubernetes
- Área
- cli, developer-experience, devops
Línea de trabajo
No se mencionan archivos del repositorio ni pruebas. Empieza por rastrear el ciclo de vida local/init de la CLI y cómo gestiona KinD y el Crossplane Package Manager; después, revisa las interfaces propuestas ~/.crossplane/config.yaml, --ca-cert-path y --kind-config. El trabajo estará terminado cuando la configuración seleccionada sea compatible de forma nativa con los entornos locales y la CA personalizada sea de confianza para las descargas de paquetes.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
What problem are you facing?
When using the Crossplane CLI in corporate environments, we often have to interact with private OCI registries secured by a custom Enterprise Certificate Authority (CA) to pull or push Crossplane Packages (.xpkg).
When bootstrapping local development environments (especially when tools wrap KinD under the hood using container runtimes like Colima or Podman), the Crossplane Package Manager pod fails to pull packages because it does not trust the private registry's CA.
Currently, there is no native way to pass a custom CA or a default KinD configuration through the Crossplane CLI. Users are forced to rely on brittle post-installation workarounds, such as shell wrappers or running automated scripts (kubectl create secret + kubectl patch deployment crossplane to mount the CA) right after the local cluster "pops". This creates friction and hurts the local Developer Experience (DX), especially when dealing with the specific file-sharing and permission constraints of Colima and Podman.
How could Crossplane help solve your problem?
Crossplane could solve this by allowing users to inject custom CAs and local environment configurations natively through the CLI. We envision two possible approaches:
- A Global CLI Configuration File: Support a global file (e.g.,
~/.crossplane/config.yaml) where users can define a default path for custom CAs or a default KinD configuration override. This would be automatically applied whenever a local environment lifecycle is managed by the CLI. - Dedicated CLI Flags: Add explicit flags to local/init commands, such as:
--ca-cert-path=/path/to/enterprise-ca.crt: This would automatically handle creating the Kubernetes Secret and patching the Crossplane deployment to mount the CA in the appropriate trust store path.--kind-config=/path/to/custom-kind.yaml: This would allow users to pass advanced mounting options, which is crucial for mapping local certificate directories when using Colima or Podman.
- Lenguaje dominante
- Go
- Estrellas
- 19
- Forks
- 33
- Merge medio
- 3 d 4 h
- PR fusionados (30 d)
- 40
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de crossplane/cli
-
`credsStore` in docker config causes unit test failuresPosiblemente ocupada @sujeito-operator la tomó hace 47 días. Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
crossplane/cli#282 ·
Los mantenedores suelen responder en 2 días
-
render: label the Docker containers and networks render createsPosiblemente ocupada @jcogilvie la tomó hace 4 días. Abiertoenhancement
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
crossplane/cli#401 ·
Los mantenedores suelen responder en 2 días
-
render: interrupting with Ctrl+C (SIGINT/SIGTERM) leaks Function containers, the render container, and the networkPosiblemente ocupada @jcogilvie la tomó hace 4 días. Abiertobug
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
crossplane/cli#400 ·
Los mantenedores suelen responder en 2 días
-
render: Function cleanup failures are invisible without --verbosePosiblemente ocupada @jcogilvie la tomó hace 4 días. Abiertobug
Dificultad 3/5 1-2 días Aptitud para principiantes 70/100
crossplane/cli#399 ·
Los mantenedores suelen responder en 2 días
-
render: docker engine discards the network-removal error, so crossplane-render-* networks leak silentlyPosiblemente ocupada @jcogilvie la tomó hace 4 días. Abiertobug
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
crossplane/cli#398 ·
Los mantenedores suelen responder en 2 días
Todos los issues de crossplane/cli
Issues similares
-
area/tests theme/ci-dx
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
bug needs triage pkg/translator/faro
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
open-telemetry/opentelemetry-collector-contrib#51759 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
appbaseio/reactivesearch-api#402 ·
-
GET /api/v1/system/api_keys returns the full API token in plaintextPosiblemente ocupada @Harsh23Kashyap la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
infiniflow/ragflow#20555 · 1 reacción ·
Los mantenedores suelen responder en 1 día