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
Disabilitare automaticamente un workflow di GitHub
Eseguire una query su SQL Azure tramite un workflow di GitHub
Eseguire query per recuperare il padre di un record che sfrutta il tipo HierarchyID in Entity Framework
Code scanning e advanced security con Azure DevOps
Utilizzare la versione generica di EntityTypeConfiguration in Entity Framework Core
Creare un webhook in Azure DevOps
Creare una custom property in GitHub
Gestione dell'annidamento delle regole dei layer in CSS
Evitare il flickering dei componenti nel prerender di Blazor 8
Modificare i metadati nell'head dell'HTML di una Blazor Web App
Generare HTML a runtime a partire da un componente Razor in ASP.NET Core
I più letti di oggi
- ASPItalia.com Future Web Conference: 15 gennaio 2008, L'Aquila
- Azure Mobile Services: costruire il back-end per le app
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Come faccio per inserire un nuovo record in un database?
- Aggiungere temi custom a Blazor
- Usare il RoleManager per gestire i ruoli con ASP.NET Identity
- Le novità di ASP.NET Core 7 e Blazor
- Stilizzare una tabella HTML usando le classi CSS di Bootstrap
- Cambiare tema Dark e Light a runtime nelle Universal App
- Spostare app service e service plan di Azure tra i resource group