Cloud Code for IntelliJ utilizza i file di configurazione `skaffold.yaml` per fornire un'esperienza di sviluppo senza interruzioni per le applicazioni Kubernetes, automatizzando molte delle attività coinvolte nella creazione e nel deployment delle applicazioni Kubernetes. In questo modo, Cloud Code gestisce il workflow per la creazione, il push e il deployment dell'applicazione e fornisce i blocchi predefiniti per la creazione di pipeline CI/CD.
I progetti di solito iniziano a utilizzare una singola configurazione skaffold.yaml
per descrivere come creare e implementare l'applicazione. Man mano che un progetto cresce, può essere utile suddividere la pipeline dell'applicazione in parti separate.
Cloud Code supporta la definizione di più
dipendenze di configurazione,
inserite insieme nello stesso file skaffold.yaml e separate utilizzando i separatori di documenti YAML (---) oppure inserite in file skaffold.yaml separati a cui viene fatto riferimento da un file skaffold.yaml di livello superiore. Una
configurazione può essere trasformata in un modulo assegnandole un nome utilizzando il
campo .metadata.name.
L'utilizzo dei moduli consente di sviluppare ed eseguire il debug di parti dell'applicazione in modo indipendente. Le dipendenze possono essere definite tra i file di configurazione e per moduli specifici.
Eseguire il debug delle applicazioni con moduli
Puoi sviluppare ed eseguire il debug in modo iterativo dell'intera applicazione o di un insieme di moduli definiti. Cloud Code gestisce le dipendenze dei moduli e il loro ordine di deployment.
Iniziare a utilizzare un esempio di moduli
Per selezionare i moduli per la tua applicazione, vedi Sviluppo indipendente di parti di un'applicazione.
Se non hai utilizzato i moduli e vuoi testare la funzionalità con un esempio, consulta l'esempio di guestbook, che è suddiviso in moduli frontend e backend.
Per un esempio di applicazione aziendale di grandi dimensioni, sviluppato utilizzando varie tecnologie e linguaggi e utilizzando moduli, consulta l'esempio di Bank of Anthos.
Casi d'uso comuni
Questa sezione descrive alcuni esempi di casi d'uso comuni che mostrano diversi scenari di quando e come puoi utilizzare i moduli nel tuo IDE.
Sviluppo di microservizi
Sei uno sviluppatore frontend che lavora principalmente sul modulo frontend. In quanto microservizio, frontend non ha una dipendenza esplicita da codice o libreria dal repository backend, ma richiede che backend sia implementato e in esecuzione nel cluster.
Utilizzi il progetto che contiene una definizione del modulo frontend per eseguire il deployment e il debug da un IDE Cloud Code a un cluster di sviluppo condiviso in cui anche il team di backend esegue il deployment del proprio servizio. Il team DevOps gestisce questo cluster condiviso.
La maggior parte delle volte non lavori con il codice backend, non esegui il debug e non aggiorni le configurazioni di Kubernetes. Cloud Code crea ed esegue il deployment di altre configurazioni
richieste da frontend. Configura la configurazione di deployment di Cloud Code
in modo da eseguire l'iterazione solo sul modulo frontend.
Puoi anche eseguire il deployment sia di frontend che di backend in un cluster locale per un'esperienza iterativa più rapida.
Sviluppo e debug di microservizi cross-boundary
Quando è necessario eseguire il debug di più microservizi insieme, puoi:
- Apri la directory principale in cui si trovano tutte le sottodirectory con il codice sorgente dei moduli l'una rispetto all'altra
- Seleziona il file
skaffold.yamlprincipale per il deployment (configurazioni) - Configura la configurazione di deployment di Cloud Code in modo da eseguire l'iterazione solo sui moduli
frontendebackenddisponibili localmente (e sul rispettivo modulo di configurazione Kubernetes in caso di modifiche).
Potresti anche avere un file skaffold.yaml radice separato per lo sviluppo locale che includa un server di dati statici.
Modifica YAML del modulo smart
Sei un ingegnere DevOps che crea un repository di modelli per il team di sviluppatori di microservizi che utilizza i moduli. Vuoi assicurarti che non ci siano errori nelle definizioni dei moduli. Utilizzi gli IDE Cloud Code per modificare i file di configurazione skaffold.yaml.