Trabalhar com arquivos YAML do Google Cloud e do Kubernetes no Cloud Code for IntelliJ

O Cloud Code foi projetado para ajudar na edição de arquivos de configuração relacionados ao Kubernetes e ao Google Cloud, incluindo validação baseada em esquema, diagnóstico e documentação rápida.

Arquivos de configuração YAML compatíveis

Além disso, o Cloud Code também é compatível com CRDs populares do Kubernetes, como o Kubeflow, pronto para uso.

Como usar esquema personalizado

Além disso, com o Cloud Code, é possível fornecer seu próprio esquema CRD com as configurações do IntelliJ (Arquivo > Configurações > Tools > Cloud Code (em inglês) > Kubernetes ou para Mac OS X, IntelliJ IDEA (em inglês) > Preferências > Tools > Cloud Code (em inglês) > Kubernetes e acesse Locais do esquema CRD).

É possível apontar para um arquivo local ou um URL. Os URLs que apontam para github.com são convertidos automaticamente em raw.githubusercontent.com.

Como extrair o esquema de um cluster

Quando você muda para um cluster que executa o Kubernetes v1.16 e versões posteriores no Kubernetes Explorer, o Cloud Code extrai automaticamente o esquema de todos os CRDs instalados.

Compatibilidade adicional com o Skaffold

O Skaffold é o mecanismo subjacente que capacita o Cloud Code, ajudando a criar, enviar e implantar o aplicativo, além de fornecer suporte para a criação de pipelines de CI/CD.

O Cloud Code é compatível com o gerenciamento de arquivos de configuração do Skaffold. Ao abrir um projeto, o Cloud Code detecta esquemas do Skaffold que não estão atualizados e solicita (por meio do log de eventos) quando uma atualização de versão do esquema do Skaffold está disponível para o YAML do Skaffold atual.

Notificação no log de eventos solicitando que o usuário faça upgrade da versão do esquema do Skaffold porque os arquivos YAML dele não são da versão mais recente

Outra opção é navegar até Ferramentas > Cloud Code > Kubernetes e selecionar Verificar atualizações de esquemas do Skaffold para conferir se há upgrades de esquema disponíveis.

Como configurar com snippets

Os snippets prontos para uso no esquema YAML comum (usando Ctrl+Space para visualizar opções) tornam mais fácil iniciar um novo arquivo YAML ou adicionar um arquivo existente sem erros, basta seguir as práticas recomendadas. Além disso, é mais fácil trabalhar com campos repetitivos. Basta preencher um, e o Cloud Code incluirá as instâncias restantes.

Como usar snippets com campos repetitivos

Atualmente, os seguintes snippets são oferecidos:

  • 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

Como concluir com contexto

Com base no esquema atual, o Cloud Code fornecerá conclusões contextuais para ajudar você a escolher a opção certa.

Conclusões contextuais do esquema do Kubernetes

Como validar o esquema YAML

O Cloud Code é compatível com a validação de esquema sinalizando tags e valores inválidos nos arquivos YAML e sugerindo correções, quando possível.

Valor do campo de nome sublinhado em vermelho para destacar um valor inválido de 1234. O texto mostrado ao passar o cursor mostra o texto "Tipo incorreto". String esperada.

Como validar arquivos YAML do Skaffold

O Cloud Code fornece suporte adicional de edição de arquivos de configuração do Skaffold e modelos inteligentes, permitindo validar facilmente seus arquivos skaffold.yaml. Consulte este guia sobre como usar um app com o Cloud Code.

Modelos yaml do Skaffold

Como concluir arquivos de configuração do Skaffold com contexto

Com base no esquema atual, o Cloud Code fornece conclusões contextuais e documentações relevantes para ajudar você a escolher a opção certa.

Conclusões do Skaffold

Como descobrir definições usando a documentação rápida

Ao destacar uma linha no arquivo de configuração e acessar Visualizar > Documentação rápida, o Cloud Code exibe os documentos relevante de um recurso.

Documentação rápida

Como inspecionar o YAML para problemas de estrutura e validação

O Cloud Code oferece suporte a inspeção de problemas comuns de esquema e fornece erros descritivos.

Como inspecionar arquivos YAML

Como aplicar um arquivo YAML

Para executar kubectl apply -f para aplicar uma alteração de configuração usando o arquivo atual, use o ícone de ações kubectl Ícone do kubectl actions, disponível no gutter do seu ambiente de desenvolvimento integrado, e selecione Apply. Isso levará a uma visualização de diferenças para você revisar as alterações antes de clicar em Aplicar.

Opção de aplicar destacada na lista de ações do kubectl

Como diferenciar arquivos YAML

Para ver as diferenças entre um arquivo YAML no controle de origem e um arquivo YAML implantado, use o ícone de ação do kubectl Ícone do kubectl actions disponível no gutter do seu editor. Escolha a opção Diff para abrir uma visualização de diferenças para comparar e comparar dois arquivos de esquema.

Opção de diferença destacada na lista de ações do kubectl

Como executar uma simulação de um arquivo YAML

Para executar uma simulação do arquivo e verificar a validade dele, use o ícone de ações do kubectlÍcone do kubectl actions , disponível no gutter do seu ambiente de desenvolvimento integrado, para selecionarSimulação no servidor ou Simulação no cliente de dados. Isso executa kubectl apply -f dry-run=server (ou kubectl apply -f dry-run=client, na opção "Cliente") e notifica se seu arquivo pode ser criado na janela de Terminal.

Opção de simulação no servidor destacada na lista de ações do kubectl

A seguir

Receba ajuda

Para enviar um feedback ou informar um problema no ambiente de desenvolvimento integrado do IntelliJ, acesse Tools > Cloud Code > Help / About > Envie feedback ou informe um problema para informar um problema no GitHub ou faça uma pergunta no Stack Overflow.