Skip to main content
Devin supporta Windows come piattaforma per build e sessioni. Per impostazione predefinita, gli ambienti Windows utilizzano la stessa shell bash (Git Bash) di Linux, quindi la maggior parte dei comandi dei blueprint funziona su entrambe le piattaforme senza modifiche. I blueprint possono anche eseguire i passaggi di configurazione per Windows in PowerShell.
Il supporto per Windows è attualmente disponibile su base limitata. Se vuoi provare Windows con Devin, contattaci per saperne di più e ottenere l’accesso.

Come funziona

Il supporto per Windows si basa sullo stesso sistema di configurazione dichiarativa usato da Linux. La differenza principale è il campo runs-on nel blueprint, che indica a Devin su quale piattaforma eseguire build e run. Il campo facoltativo shell consente a un blocco Windows di eseguire i relativi passaggi run in Windows PowerShell anziché in Git Bash. Poiché entrambe le piattaforme usano bash per impostazione predefinita, puoi scrivere gli stessi comandi shell sia su Linux sia su Windows. Le principali differenze riguardano il layout del file system e i gestori di pacchetti disponibili:

Scrivere blueprint per Windows

Blueprint per una sola piattaforma

Se il repository è destinato solo a Windows, usa runs-on: windows al livello superiore:

Blueprint multipiattaforma

Per eseguire la build dello stesso repository sia su Linux sia su Windows, scrivi ogni piattaforma come un documento YAML separato da ---. Ogni documento dichiara la propria label runs-on. Per un approfondimento su questo formato, consulta il riquadro Multi-document YAML nella guida ai blueprint.
Ogni documento produce una snapshot build separata per la relativa piattaforma. Le sessioni si avviano dallo snapshot specifico della piattaforma.
Lo YAML di primo livello deve essere una mappatura, non una sequenza. Se l’esempio sopra viene scritto come un’unica lista (- runs-on: default / - runs-on: windows), il backend lo rifiuta con Invalid YAML: each YAML document must be a mapping, not a sequence; use '---' to separate multiple blocks. Usa il separatore --- mostrato sopra.

Il campo runs-on

Il campo runs-on fa riferimento a una configurazione di macchina registrata nel tuo account: Puoi specificare runs-on come stringa o come elenco:
Quando un blocco elenca più piattaforme, il sistema di build crea uno snapshot per ciascuna piattaforma utilizzando gli stessi comandi.
La sintassi con elenco esegue gli stessi comandi su ogni piattaforma dell’elenco. Usala solo quando i comandi sono davvero multipiattaforma (ad es. npm install, uv sync). Per i comandi specifici di una piattaforma (come apt-get su Linux o choco su Windows), usa invece il formato multi-documento: un documento per ogni piattaforma, separato da ---.

Il campo shell

Per impostazione predefinita, su Windows i passaggi run di un blocco vengono eseguiti in Git Bash. Per scrivere invece i passaggi di setup usando cmdlet, sintassi e percorsi Windows nativi di PowerShell, imposta su powershell il campo facoltativo di primo livello shell:
L’impostazione vale per singolo blocco. In un blueprint multipiattaforma, imposta shell: powershell solo nel documento runs-on: windows, così il documento Linux continuerà a usare bash. L’impostazione si applica solo ai passaggi di build: le sessioni Windows continuano a usare Git Bash come shell predefinita. Per i valori accettati, per il modo in cui segreti e variabili d’ambiente vengono passati ai passaggi PowerShell e per la gestione degli errori, consulta shell nel riferimento del blueprint.

Utilizzo e costi

Le sessioni Windows comportano un utilizzo (ACU o quota) circa del 9% superiore rispetto a sessioni Linux equivalenti. Per maggiori dettagli su come viene misurato l’utilizzo, vedi Utilizzo.

Comportamento della sessione in Windows

Shell

Le sessioni Windows usano Git Bash come shell predefinita, la stessa shell bash usata su Linux. A meno che un blocco non imposti shell: powershell, anche i passaggi run del blueprint vengono eseguiti in Git Bash, quindi la sintassi bash standard funziona su entrambe le piattaforme:

Percorsi

Git Bash usa percorsi in stile POSIX (/c/... invece di C:\...):
I passaggi in un blocco shell: powershell usano invece i percorsi nativi di Windows:

Segreti

I segreti sono disponibili come variabili d’ambiente durante le sessioni, utilizzando la sintassi bash standard ($SECRET_NAME):

File allegati

Su Windows, i file caricati vengono salvati in /c/Users/Administrator/.files/ anziché in /home/ubuntu/.files/.

Computer Use

Computer Use è pienamente supportato nelle sessioni Windows. Devin dispone di un ambiente desktop Windows con accesso a Chrome, mouse e tastiera, quindi può testare app web e applicazioni desktop native di Windows (ad es. app WPF e WinForms) e registrare le proprie sessioni di testing.

Suggerimenti su Blueprint per Windows

Installazione dei tool

Usa choco (Chocolatey) o script di download diretto:

Pattern comuni

Progetto .NET:
Progetto Visual Studio / C++: