Skip to main content
A configuração declarativa (blueprints) é a nova geração da configuração de ambiente: com controle de versão, modular e atualizada automaticamente. Este guia orienta você na migração a partir do assistente interativo clássico.

Por que migrar?

Com o assistente de configuração clássico, o ambiente do Devin é um snapshot configurado manualmente que pode ficar defasado com o tempo. As dependências ficam desatualizadas, alterações de configuração exigem executar o assistente novamente, e não há histórico de versões. A configuração declarativa resolve isso:
  • Atualizações automáticas: os blueprints são reconstruídos quando seu repositório muda, para que as dependências permaneçam atualizadas
  • Controle de versão: a configuração do seu ambiente fica junto com seu código, com histórico completo
  • Combinável: blueprints do Enterprise, da org e do repositório se combinam em camadas de forma organizada
  • Reproduzível: cada build produz o mesmo resultado a partir do mesmo blueprint
  • Sessões mais rápidas: snapshots são pré-construídos com repositórios clonados e dependências instaladas, para que as sessões já comecem prontas para uso
Recomendamos migrar para a configuração declarativa quando você estiver pronto. Enquanto isso, sua configuração clássica continua funcionando.

Antes de começar

Procure um banner na página Configuração da máquina (a página clássica de configuração) com o texto “Mudar para o novo ambiente v2 do Devin”. Se ele aparecer, sua organização está qualificada.Se você não vir o banner, a configuração declarativa ainda não foi ativada para sua organização. Ela está sendo liberada gradualmente. Entre em contato com o administrador do Enterprise ou acione o suporte.
A migração exige permissões de administrador da org (ManageOrgSettings). Se você não for um administrador da org, verá a mensagem “Acesso de administrador necessário” na página de migração.
Sim. Seu snapshot atual é totalmente preservado. Você pode reverter a qualquer momento, e sua organização voltará imediatamente ao snapshot anterior. Nada é perdido.

Etapas da migração

1. Acesse a página de migração

Navegue até Configurações > migração de ambiente ou clique em Começar no banner exibido na página de Configuração da máquina.

2. Ative a configuração declarativa

Clique em Ativar para a organização. Isso faz com que sua org use snapshots baseados em blueprints nas novas sessões.
Isso não afeta seu snapshot existente. Ele é preservado caso você precise reverter.

3. Deixe o Devin gerar seus blueprints

Devin faz o trabalho para você. Clique em Start migration e selecione os repositórios que você quer migrar primeiro. Você não precisa migrar tudo de uma vez. Comece pelos repos que você mais usa. Quando você inicia a migração, Devin cria duas sessões:
  • Uma sessão principal em execução no novo ambiente declarativo, que gera os blueprints
  • Uma sessão auxiliar em execução no seu snapshot existente, que Devin usa para inspecionar o que está instalado no momento (versões de linguagem, pacotes do sistema, serviços em execução etc.)
Devin examina seu snapshot existente, identifica quais ferramentas e dependências estão instaladas e gera a configuração de blueprint equivalente. Os resultados aparecem na sua página de Configuração do ambiente.
Seu snapshot existente é uma “caixa-preta” de tudo o que você configurou ao longo do tempo. Devin inspeciona esse snapshot, cataloga o que está instalado e registra tudo automaticamente em um blueprint reproduzível.

4. Revisar e ajustar

Depois que Devin gerar os blueprints:
  1. Vá para Configurações > Configuração do ambiente para revisar o que foi gerado
  2. Verifique o status do build. Procure por Success.
  3. Inicie uma sessão de teste para confirmar que tudo funciona:
    • Confirme se os repositórios foram clonados e se as dependências foram instaladas
    • Tente executar seus comandos de lint, teste e build
    • Verifique se as ferramentas ou runtimes personalizados estão disponíveis
Se algo estiver faltando, edite o blueprint diretamente. Você pode adicionar etapas de initialize, comandos de maintenance ou entradas de knowledge.

Reversão

Se algo não estiver funcionando, você pode reverter a qualquer momento:
  1. Acesse Configurações > Migração de ambiente
  2. Clique em Reverter para a configuração clássica
  3. Sua organização volta imediatamente a usar o snapshot anterior
Seu snapshot existente é totalmente preservado. Nada é perdido. Você pode tentar a migração novamente quando estiver pronto.

Mapeando etapas clássicas de configuração para blueprints

Se você preferir escrever seu blueprint manualmente (ou quiser entender o mapeamento), veja como as etapas do assistente clássico correspondem:
Etapa clássica de configuraçãoEquivalente em blueprintObservações
Git pullAutomáticoOs blueprints fazem git clone e git pull automaticamente
SecretsPainel Secrets na UIConfigure em Configurações > Configuração do ambiente
Instalar dependênciasinitializeConfiguração única: runtimes de linguagem, pacotes do sistema e ferramentas globais
Manter dependênciasmaintenanceConfiguração recorrente por sessão: npm install, pip install, etc.
Lintknowledge (name: lint)Apenas para referência, não é executado durante as builds
Testknowledge (name: test)Apenas para referência, não é executado durante as builds
Executar o appknowledge (name: dev-server)Apenas para referência, não é executado durante as builds
Observações adicionaisknowledgeEntradas livres para o Devin

Exemplo

Configuração clássica:
  • Instale as dependências: nvm use 20 && npm install
  • Mantenha as dependências atualizadas: npm install
  • Lint: npm run lint
  • Teste: npm test
  • Execute o app: npm run dev
Blueprint equivalente:
initialize: |
  curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
  source ~/.bashrc
  nvm install 20

maintenance: |
  npm install

knowledge:
  - name: lint
    contents: npm run lint
  - name: test
    contents: npm test
  - name: dev-server
    contents: npm run dev

Solução de problemas

Verifique os logs da build para identificar o erro específico. Causas comuns:
  • Um comando que funcionava no terminal de configuração clássico não funciona no contexto da build (por exemplo, prompts interativos que exigem flags -y)
  • Segredos ausentes (verifique se os segredos estão configurados no painel de segredos do editor de blueprint)
  • Compare os comandos do blueprint com os comandos originais para identificar diferenças
Verifique se a seção maintenance inclui os mesmos comandos de instalação de dependências da etapa clássica Maintain Dependencies. Comandos como npm install ou pip install -r requirements.txt devem ficar em maintenance, não em initialize.
Verifique se a seção knowledge contém itens chamados lint e test com os comandos corretos. Devin procura esses nomes ao verificar o próprio trabalho.
Se a configuração clássica modificava ~/.bashrc, ~/.profile ou outra configuração do shell, mova isso para initialize:
initialize: |
  echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
  echo 'export NODE_ENV=development' >> ~/.bashrc
Blueprints fazem o clone do git automaticamente durante as builds. Se os repositórios não estiverem sendo clonados, verifique se eles foram adicionados à página de configuração do ambiente e se o Devin tem acesso por meio da sua integração com Git.