Trabalhar com Google Cloud e o YAML do Kubernetes no Cloud Code para VS Code

O Cloud Code para VS Code foi projetado para facilitar a configuração do Kubernetes e do Cloud Build, fazendo a lintagem do esquema para estrutura e valores válidos e fornecendo erros descritivos. O Cloud Code também inclui soluções prontas para uso relacionadas a esquemas comuns, conclusões inteligentes e documentação ao passar o cursor do mouse.

Arquivos de configuração YAML compatíveis

O Cloud Code também oferece suporte a definições de recursos personalizados (CRDs) do Kubernetes, como o Kubeflow, sem necessidade de configuração.

Usar esquema personalizado

Com o Cloud Code, é possível fornecer seu próprio esquema de CRD com a configuração cloudcode.yaml.crdSchemaLocations no arquivo settings.json. É possível apontar para um arquivo local ou um URL. Os URLs que apontam para github.com são convertidos automaticamente para raw.githubusercontent.com.

Extrair esquema de um cluster

Ao mudar para um cluster que executa o Kubernetes v1.16 e versões mais recentes na visualização do Kubernetes, o Cloud Code extrai automaticamente o esquema de todas as CRDs instaladas.

Configurar com snippets

Os snippets prontos para uso no esquema YAML comum (usando Command/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. O Cloud Code facilita o trabalho com campos repetitivos preenchendo as instâncias restantes depois que você preenche o primeiro campo.

O Cloud Code oferece os seguintes snippets:

  • Anthos Config Management - Cluster
  • Anthos Config Management - Cluster Selector
  • Anthos Config Management - Config Management
  • Anthos Config Management - Namespace Selector
  • 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 - Secret
  • 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 com contexto

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

Conclusões contextuais do esquema do Kubernetes

Validar 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.

O valor do campo "nome" está sublinhado em vermelho para destacar um valor inválido de 1234. O texto ao passar o cursor diz: "Tipo incorreto". Era esperado uma string.

Descobrir a documentação ao passar o cursor

O Cloud Code mostra a documentação relevante quando você mantém o cursor do mouse sobre um valor no esquema.

Informações da documentação quando você mantém o ponteiro sobre um valor no esquema

Acessar definições de recursos

Para conferir as definições de um recurso, clique com o botão direito do mouse nele e escolha Ir para definição ou Espiar definição.

Aplicar um arquivo YAML

Para aplicar uma mudança de configuração usando o arquivo atual, abra a paleta de comandos (pressione Ctrl/Cmd+Shift+P ou clique em Visualizar > Paleta de comandos) e execute Cloud Code: aplicar o arquivo JSON/YAML atual ao recurso implantado do K8s.

Esse comando exibe uma visualização de diferença para você revisar as alterações. Clique em Aplicar quando solicitado a aplicar essa alteração. Isso executa kubectl apply -f.

Ver diferenças entre arquivos YAML

Para conferir as diferenças entre um arquivo YAML no controle de origem e um arquivo YAML implantado, abra a paleta de comandos (pressione Ctrl/Cmd+Shift+P ou clique em Visualizar > Paleta de comandos) e execute Cloud Code: comparar o arquivo JSON/YAML atual com o recurso implantado do K8s.

Executar uma simulação de um arquivo YAML

O Cloud Code faz simulações automaticamente enquanto você digita informações no arquivo YAML e sublinha os erros com uma linha amarela ondulada.

Linhas amarelas onduladas aparecem quando o servidor considera uma parte do seu código um erro com base no resultado de um teste simulado. Isso pode incluir violações da política, nomes duplicados ou validações que o Cloud Code não realiza no lado do cliente (como números máximos de porta).

Para ver a descrição do erro no arquivo YAML, passe o cursor sobre o código com um sublinhado amarelo.

A validação de simulação no servidor falha em "hello.deployment.yaml" com uma mensagem de erro exibida como um aviso. Os detalhes do erro são encontrados no canal de saída. O namespace "random-namespace" não existe

Linhas vermelhas onduladas aparecem para erros detectados antes que o Cloud Code verifique com o servidor do Kubernetes. Por exemplo, colocar um número onde uma string é esperada aciona uma linha vermelha ondulada.

trabalhar com secrets

Usar mapas de configuração e secrets é uma parte fundamental do trabalho com o Kubernetes. Para conferir o contexto de um segredo em base64 com o Cloud Code, mantenha o ponteiro sobre o segredo para decodificá-lo.

Decodificar o secret mantendo o ponteiro sobre ele

A seguir

Receber suporte

Para enviar feedback, faça uma pergunta no Stack Overflow. Se você for um cliente do Google Cloud, poderá registrar tíquetes pelos canais de suporte padrão do Google Cloud.