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
Fornire parametri ad un Web component HTML
Configurare e gestire sidecar container in Azure App Service
Eliminare una project wiki di Azure DevOps
Implementare il throttle in JavaScript
Rendere i propri workflow e le GitHub Action utilizzate più sicure
Utilizzare WebJobs su Linux con Azure App Service
Managed deployment strategy in Azure DevOps
Creare una libreria CSS universale: Immagini
Creare agenti facilmente con Azure AI Agent Service
Definire il colore di una scrollbar HTML tramite CSS
Recuperare automaticamente un utente e aggiungerlo ad un gruppo di Azure DevOps
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub


