Trabajar con archivos YAML de Google Cloud y Kubernetes en Cloud Code para IntelliJ

Cloud Code se ha diseñado para ayudarte a editar Google Cloud y archivos de configuración relacionados con Kubernetes, como la validación basada en esquemas, los diagnósticos y la documentación rápida.

.

Archivos de configuración YAML admitidos

Cloud Code también admite CRDs de Kubernetes populares, como Kubeflow, de forma predeterminada.

Habilitar o inhabilitar la compatibilidad con YAML

Para habilitar o inhabilitar la compatibilidad con YAML, ve a Archivo > Configuración > Herramientas > Gemini + Google Cloud Code > Kubernetes (en Windows y Linux) o IntelliJ IDEA > Configuración > Herramientas > Gemini + Google Cloud Code > Kubernetes (en macOS) y marca o desmarca la casilla Habilitar compatibilidad con YAML para habilitar o inhabilitar la función.

Usar un esquema personalizado

Con Cloud Code, puedes proporcionar tu propio esquema de CRD con los ajustes de IntelliJ. Para ello, ve a File > Settings > Tools > Gemini + Google Cloud Code > Kubernetes (en Windows y Linux) o IntelliJ IDEA > Settings > Tools > Gemini + Google Cloud Code > Kubernetes (en macOS) y, a continuación, consulta la sección Ubicaciones del esquema de CRD.

Puedes indicar un archivo local o una URL. Las URLs que apuntan a github.com se convierten automáticamente en raw.githubusercontent.com.

Extraer el esquema de un clúster

Cuando cambias a un clúster que ejecuta Kubernetes v1.16+ en el Explorador de Kubernetes, Cloud Code extrae automáticamente el esquema de todos los CRDs instalados.

Compatibilidad adicional con Skaffold

Skaffold es el motor subyacente que impulsa Cloud Code y te ayuda a compilar, enviar e implementar tu aplicación, así como a crear flujos de procesamiento de CI/CD.

Cloud Code incluye asistencia adicional para gestionar archivos de configuración de Skaffold. Cuando abres un proyecto, Cloud Code detecta esquemas de Skaffold que no están actualizados y te avisa (a través del registro de eventos) cuando hay disponible una versión actualizada de un esquema de Skaffold para tus archivos de configuración YAML de Skaffold.

Notificación en el registro de eventos que pide al usuario que actualice su versión del esquema de Skaffold porque sus archivos YAML de Skaffold no son de la versión más reciente

También puedes ir a Herramientas > Gemini + Cloud Code > Kubernetes > Buscar actualizaciones de esquemas de Skaffold para comprobar si hay actualizaciones de esquemas disponibles.

Configurar con fragmentos

Los fragmentos de código predefinidos para esquemas YAML comunes (usa Ctrl+Espacio para ver las opciones) te permiten iniciar un nuevo archivo YAML o añadir contenido a uno ya creado sin errores, al tiempo que sigues las prácticas recomendadas. Además, es más fácil trabajar con campos repetitivos: rellena uno y Cloud Code completará las instancias restantes.

Usar fragmentos con campos repetitivos

Cloud Code ofrece los siguientes fragmentos:

  • Cloud Build - Cloud Run deployment
  • Cloud Build - Docker container build
  • Cloud Build - GKE deployment
  • Cloud Build - GKE Skaffold deployment
  • Cloud Build - Go build
  • Cloud Build - Terraform plan + apply
  • Config Connector - BigQueryDataset
  • Config Connector - BigQueryTable
  • Config Connector - BigtableCluster
  • Config Connector - BigtableInstance
  • Config Connector - PubSubSubscription
  • Config Connector - PubSubTopic
  • Config Connector - RedisInstance
  • Config Connector - SpannerInstance
  • Kubernetes - ConfigMap
  • Kubernetes - Deployment
  • Kubernetes - Ingress
  • Kubernetes - Pod
  • Kubernetes - Service
  • Migrate to Containers - Export
  • Migrate to Containers - PersistentVolumeClaim
  • Migrate to Containers - StatefulSet
  • Skaffold - Bazel
  • Skaffold - Getting-started
  • Skaffold - Helm deployment
  • Skaffold - Kaniko

Completar con contexto

Según el esquema actual, Cloud Code ofrece finalizaciones contextuales para ayudarte a elegir la opción adecuada.

Completaciones de contexto para el esquema de Kubernetes

Validar el esquema YAML

Cloud Code ofrece compatibilidad con la validación de esquemas. Para ello, marca las etiquetas y los valores no válidos de los archivos YAML y sugiere correcciones cuando es posible.

Valor del campo de nombre subrayado en rojo para destacar un valor no válido de 1234. El texto al colocar el cursor indica: Tipo incorrecto. Se esperaba una cadena.

Validar archivos YAML de Skaffold

Cloud Code ofrece asistencia adicional para editar archivos de configuración de Skaffold y plantillas inteligentes que te permiten validar tus archivos skaffold.yaml. Consulta esta guía sobre cómo usar una aplicación con Cloud Code.

Plantillas YAML de Skaffold

Completar archivos de configuración de Skaffold con contexto

En función del esquema actual, Cloud Code proporciona finalizaciones contextuales y documentación pertinente para ayudarte a elegir la opción adecuada.

Autocompletado de Skaffold

Descubrir definiciones con la documentación rápida

Cloud Code muestra la documentación pertinente de un recurso cuando destacas una línea en tu archivo de configuración y vas a Ver > Documentación rápida.

Documentación rápida

Analiza el archivo YAML para detectar problemas estructurales y de validez

Cloud Code ofrece compatibilidad con linting para problemas de esquemas habituales y proporciona errores descriptivos.

Linting de archivos YAML

Aplicar un archivo YAML

Para ejecutar kubectl apply -f y aplicar un cambio de configuración con el archivo actual, puedes usar el icono de acciones de kubectl Icono de acciones de kubectl, disponible en el margen de tu IDE, y seleccionar Aplicar. Se mostrará una vista de diferencias para que puedas revisar los cambios antes de hacer clic en Aplicar.

Opción Aplicar resaltada en la lista de acciones de kubectl

Diferencia entre archivos YAML

Para ver las diferencias entre un archivo YAML en el control de código fuente y un archivo YAML desplegado, puedes usar el icono de acciones de kubectl Icono de acciones de kubectl disponible en el margen de tu editor. Selecciona la opción Diff para ver una vista de diferencias que te permita comparar dos archivos de esquema.

Opción de diferencias resaltada en la lista de acciones de kubectl

Hacer una prueba de un archivo YAML

Para hacer una prueba de tu archivo y comprobar su validez, puedes usar el icono de acciones de kubectl Icono de acciones de kubectl, disponible en el margen de tu IDE, para seleccionar Prueba en el servidor o Prueba en el cliente. Se ejecuta kubectl apply -f dry-run=server (o kubectl apply -f dry-run=client, en el caso de la opción Cliente) y te avisa si el archivo se puede crear correctamente en la ventana Terminal.

Opción de prueba en el servidor destacada en la lista de acciones de kubectl

Siguientes pasos

Obtener asistencia

Para enviar comentarios o informar de un problema en tu IDE de IntelliJ, ve a Herramientas > Cloud Code > Ayuda o información > Enviar comentarios o informar de un problema para informar de un problema en GitHub.