Skip to main content

Che cos’è l’ambiente di Devin?

L’ambiente di Devin è il workspace in cui Devin opera: una macchina virtuale basata su Linux con i tuoi repository clonati, gli strumenti installati, le dipendenze risolte, le variabili d’ambiente impostate e la configurazione applicata. È l’equivalente del laptop di uno sviluppatore: il sistema operativo, il terminale, la toolchain installata, le repo clonate, le credenziali e le Settings necessarie a tali strumenti. La configurazione del tuo ambiente viene salvata come snapshot: un’immagine congelata e avviabile da cui parte ogni sessione. Configurala una volta e ogni sessione si avvierà in quello stato noto e affidabile.

Perché la configurazione dell’ambiente è importante

Devin funziona come qualsiasi sviluppatore: clona repo, installa dipendenze, esegue il lint, compila il codice ed esegue i test. Per fare tutto questo, ha bisogno di un ambiente funzionante. Senza, Devin non può compilare il tuo progetto, non può eseguire i tuoi test e non può verificare il proprio lavoro. Sarebbe come assumere uno sviluppatore senza dargli un laptop. La configurazione dell’ambiente fornisce a Devin gli strumenti, i runtime, le credenziali, le variabili d’ambiente e la conoscenza del progetto di cui ha bisogno per essere produttivo fin dalla prima sessione. Inoltre, rende le sessioni più rapide: il tuo snapshot ha già le repo clonate e le dipendenze installate, quindi Devin si avvia subito ed è pronto a lavorare, invece di dover ripartire da zero ogni volta. Questa è in assoluto l’azione più efficace che puoi intraprendere per migliorare le prestazioni di Devin sulla tua codebase.

Come funzionano le sessioni

Ogni sessione si avvia da uno snapshot, un’immagine dell’ambiente congelata e avviabile.
  1. Snapshot: Un’immagine preconfigurata che contiene le tue repo, gli strumenti e le dipendenze. Viene preparata in anticipo tramite la configurazione.
  2. Sessione: Devin avvia una copia pulita dello snapshot. Ogni sessione parte dallo stesso stato iniziale pulito. Le modifiche apportate durante la sessione non vengono salvate nello snapshot.
Quando la configurazione cambia, viene creato automaticamente un nuovo snapshot. Ogni organizzazione ha esattamente uno snapshot attivo. Ogni sessione in quell’org si avvia dallo stesso snapshot.

Prima di iniziare

Prima di configurare l’ambiente di Devin, assicurati che Devin possa accedere ai tuoi repository:
  1. Collega il tuo provider SCM. Vai a Settings > Connections e collega GitHub, GitLab, Bitbucket o Azure DevOps. Durante la configurazione, seleziona a quali repository Devin può accedere. Consulta le guide alle integrazioni per istruzioni dettagliate.
Fatto. Una volta completata la connessione, puoi procedere con la configurazione dell’ambiente.
  1. Collega il tuo provider SCM (amministratore Enterprise). Vai a Enterprise Settings > Integrations e collega il tuo provider SCM. Consulta Git Integrations per le istruzioni di configurazione.
  2. Concedi a ogni org l’accesso alle proprie repo (amministratore Enterprise). Vai a Enterprise Settings > Repository Permissions e assegna i repository a ogni organizzazione. Le org non possono vedere né usare le repo finché non concedi esplicitamente l’accesso. Consulta Repository Permissions.
  3. Configura l’ambiente (amministratore dell’org). Una volta che un’org ha accesso alle repo, procedi con la configurazione dell’ambiente qui sotto.
Se salti questi passaggi, le repo non compariranno quando proverai ad aggiungerle al tuo ambiente. Devin deve avere accesso ai repository tramite l’integrazione Git prima di poterli clonare ed eseguire la build.

Configuralo chiedendo a Devin

È il modo più semplice per configurare l’ambiente di Devin e funziona per la maggior parte dei repository.
Avvia una sessione Devin e chiedi: “Configura il tuo ambiente per questo repo.”
1

Devin esplora il tuo repository

Devin analizza la codebase e identifica gli strumenti, i runtime e le dipendenze necessari.
2

Esamina i suggerimenti

Devin propone un blueprint sotto forma di schede nella timeline. Esamina la configurazione proposta e approva le schede che desideri utilizzare.
3

Una build crea lo snapshot

Devin esegue una build a partire dal blueprint approvato e genera lo snapshot da cui viene avviata ogni sessione.
Per la procedura completa, consulta Lascia fare a Devin.

Variabili d’ambiente e secrets

Le variabili d’ambiente fanno parte del tuo blueprint. Definisci i valori non sensibili nel campo env di un passaggio o scrivi i valori condivisi in $ENVRC; consulta gli environment template per i modelli $ENVRC e direnv. Devin può dedurre strumenti e dipendenze dal tuo repository, ma non può individuare le tue credenziali. Archivia i valori sensibili come Secrets crittografati nella scheda Secrets del blueprint editor, quindi fai riferimento a questi elementi come $VARIABLE_NAME. I secrets vengono inseriti come variabili d’ambiente durante le build e le sessioni; consulta la guida ai secrets dei blueprint e il riferimento alle variabili d’ambiente e ai secrets.

Scegli il tuo approccio

Chiedere a Devin è l’opzione predefinita. Se vuoi creare tu stesso la configurazione, usa la configurazione dichiarativa, il percorso manuale consigliato. I blueprint descrivono il tuo ambiente e le build generano automaticamente snapshot.

Configurazione dichiarativa

Percorso manuale consigliato. Esamina o modifica il file YAML generato da Devin per controllare cosa viene installato, come vengono configurate le dipendenze e cosa Devin deve sapere.
  • Sottoposta a controllo di versione
  • Aggiornamento automatico
  • Componibile tra livelli
  • Riproducibile

Riferimento dei blueprint

Specifica completa dei campi dei blueprint: sezioni, supporto per GitHub Actions, variabili d’ambiente e file allegati.

Libreria di template

Blueprint pronti da copiare e incollare per Python, Node.js, Go, Java, Ruby, Rust e pattern avanzati.

Gestione degli ambienti Enterprise

Gestione degli ambienti a livello Enterprise: gerarchia a 3 livelli, secrets e configurazione tra org.