GitHub Codespaces è una funzionalità molto utile e comoda che risolve un problema storico degli sviluppatori e che negli ultimi anni è diventato via via sempre più importante: il setup dell'ambiente di lavoro con tutte le dipendenze necessarie porta via tempo, soprattutto per i nuovi arrivati nel progetto possono volerci giorni prima che si diventi produttivi e si possa eseguire la prima build di Visual Studio. Allo stesso modo, il numero di dipendenze, soprattutto in ambito microservice, che viene richiesto è in costante aumento, oppure con le diverse versioni applicative è difficile tenere traccia delle configurazioni richieste o dei servizi necessari ad avviare il progetto/solution di riferimento. ù
Proprio per questo motivo, con Codespaces è possibile definire la configurazione di un ambiente come codice: nella pagina del repository, all'interno di GitHub, sarà possibile cliccare sul pulsante "Open Codespace" per iniziare a lavorare immediatamente su una VM hosted di Microsoft, già configurata con l'ambiente necessario ad eseguire il progetto, eliminando di fatto i lunghi tempi di attesa e di setup.
Questo strumento è molto comodo ma, al momento, è legato principalmente a GitHub. Per poterlo utilizzare anche in Azure DevOps, è necessario fare qualche workaround:
- Aprire un account di GitHub;
- Creare un nuovo repository;
- Aggiungere la configurazione nella cartella .devcontainer puntando al repository di Azure DevOps dove si trova il nostro codice sorgente.
La cartella .devcontainer è infatti una cartella speciale per GitHub. Questa deve contenere all'interno un file chiamato devcontainer.json con la configurazione seguente:
{ "workspaceFolder": "azdo", "postCreateCommand": "git clone <url> azdo" }
Una volta aperto Visual Studio e una volta effettuato il login tramite l'account di GitHub, sarà possibile visualizzare il repository "fake" che abbiamo creato per hostare la configurazione di Codespaces. Aprendo il repository come Codespace in Visual Studio, ci verrà richiesto di loggarci anche con l'account di Azure DevOps associato al repository vero e proprio, dove si trova il codice sorgente. Nel giro di qualche secondo la VM gestita con le dipendenze verrà creata e aperta in Visual Studio.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Creazione di plugin per Tailwind CSS: espandere le Funzionalità del Framework
Modificare i metadati nell'head dell'HTML di una Blazor Web App
Gestire undefined e partial nelle reactive forms di Angular
Autenticarsi in modo sicuro su Azure tramite GitHub Actions
Visualizzare le change sul plan di Terraform tramite le GitHub Actions
Eseguire le GitHub Actions offline
Eseguire query manipolando le liste contenute in un oggetto mappato verso una colonna JSON
Cancellare una run di un workflow di GitHub
Hosting di componenti WebAssembly in un'applicazione Blazor static
Creare un'applicazione React e configurare Tailwind CSS
Installare le Web App site extension tramite una pipeline di Azure DevOps
Utilizzare politiche di resiliency con Azure Container App