Saltar al contenido principal
Requisitos previos: Esta guía asume que estás familiarizado con la configuración declarativa de entornos. Consulta configuración declarativa de Environment para obtener una introducción.
Antes de configurar entornos, asegúrate de que tu proveedor de SCM esté conectado (Enterprise Settings > Integrations) y de que cada organización tenga acceso a sus repositorios (Enterprise Settings > Repository Permissions). Las organizaciones no pueden agregar repositorios a su entorno hasta que ese acceso se haya concedido explícitamente. Consulta Integraciones de Git para más información.
Los administradores de Enterprise pueden definir un entorno base que se aplique a todas las organizaciones de Enterprise. Esto te da control centralizado sobre las herramientas, los runtimes y la infraestructura de seguridad que usa Devin, y al mismo tiempo permite que cada organización y repositorio personalice su propia configuración sobre esa base.

La jerarquía del blueprint

La configuración de Environment de Devin sigue una jerarquía de tres niveles. Cada nivel se basa en el anterior:
+-----------------------------------------+
|  Enterprise Blueprint                   |
|  Python 3.12, Node 20, herramientas de seguridad   |
+-----------------------------------------+
|  Organization Blueprint                 |
|  registro npm privado, linting del equipo     |
+-----------------------------------------+
|  Repository Blueprint                   |
|  npm install, configuración específica del proyecto   |
+-----------------------------------------+
NivelQuién lo gestionaÁmbito
EnterpriseAdministradores de EnterpriseTodas las organizaciones, todos los repositorios
OrganizaciónAdministradores de la organizaciónTodos los repositorios de la organización
RepositorioAdministradores de la organización o configuración del repositorioUn único repositorio
La relación es acumulativa: los blueprints de la organización y del repositorio se basan en el blueprint de Enterprise; no lo reemplazan. Durante cada compilación, el blueprint de Enterprise se ejecuta primero y establece la línea de base. Luego se ejecuta el blueprint de la organización, agregando la configuración específica del equipo. Por último, se ejecuta el blueprint de cada repositorio con la configuración específica del proyecto. Consulta Ámbito del blueprint para ver cómo se relacionan los blueprints de la organización y del repositorio.

Configurar el blueprint de Enterprise

Ve a Settings > Entorno base de Devin para definir el blueprint de Enterprise. Usa el mismo formato que los blueprints de org y repo, con secciones initialize, maintenance y knowledge. El blueprint de Enterprise se ejecuta primero en cada compilación, antes que los blueprints de org y repo. Esto significa que las herramientas y los entornos de ejecución instalados a nivel de Enterprise están disponibles para todos los blueprints posteriores.

Qué incluir en el blueprint Enterprise

El blueprint Enterprise es para las herramientas y la configuración que toda organización necesita. Casos de uso habituales:

Entornos de ejecución estándar de lenguajes

Fija las versiones de lenguaje en toda la organización para que todos los equipos trabajen con el mismo conjunto de herramientas:
initialize:
  - name: "Install Python 3.12"
    uses: github.com/actions/setup-python@v5
    with:
      python-version: "3.12"

  - name: "Install Node.js 20"
    uses: github.com/actions/setup-node@v4
    with:
      node-version: "20"

  - name: "Install Go 1.22"
    uses: github.com/actions/setup-go@v5
    with:
      go-version: "1.22"

Herramientas de seguridad y análisis de cumplimiento

Instala los escáneres y las herramientas de auditoría que todos los proyectos deben usar:
initialize:
  - name: "Install security tools"
    run: |
      npm install -g snyk
      pip install safety bandit
      curl -sfL https://raw.githubusercontent.com/aquasecurity/trivy/main/contrib/install.sh | sh

Herramientas y utilidades internas de la CLI

Distribuye herramientas específicas de la empresa a cada Environment:
initialize:
  - name: "Install internal CLI"
    run: |
      curl -L https://internal.example.com/cli/latest/linux-amd64 \
        -o /usr/local/bin/internal-cli
      chmod +x /usr/local/bin/internal-cli

Configuración compartida de registros de paquetes

Configura los gestores de paquetes para que apunten a tus registros internos:
initialize:
  - name: "Configure internal registries"
    run: |
      npm config set registry https://npm.internal.example.com/
      pip config set global.index-url https://pypi.internal.example.com/simple/

Configuración del proxy y los certificados corporativos

Instala certificados de la CA corporativa y configura los ajustes del proxy:
initialize:
  - name: "Install corporate certificates"
    run: |
      cp "$FILE_CORPORATE_CA_CERT" /usr/local/share/ca-certificates/corporate-ca.crt
      update-ca-certificates
      echo 'export NODE_EXTRA_CA_CERTS=/usr/local/share/ca-certificates/corporate-ca.crt' >> ~/.bashrc

Cómo interactúan los niveles

Durante una compilación, los pasos de cada nivel se ejecutan en una secuencia fija. El resultado de los niveles anteriores está disponible para los posteriores. Las herramientas instaladas en el nivel Enterprise están listas para usarse en los blueprints de la org y el repo sin necesidad de reinstalarlas. Una compilación crea una nueva instantánea en este orden:
1. Enterprise blueprint (runs in ~):
   a. initialize
   b. maintenance
2. Organization blueprint (runs in ~):
   a. initialize
   b. maintenance
3. Clone all repositories (up to 10 concurrent)
4. For each configured repo, in the order shown in Settings
   (runs in ~/repos/<repo-name>):
   a. initialize
   b. maintenance
5. Health check, then snapshot is saved
Los niveles son acumulativos: los blueprints de repo pueden usar herramientas instaladas por el org o por el blueprint de Enterprise. Los niveles inferiores no pueden sobrescribir lo que configuró un nivel superior. Las compilaciones suelen tardar entre 5 y 15 minutos. Los comandos individuales superan el tiempo de espera después de 1 hora. Los elementos de knowledge de todos los niveles se recopilan y se ponen a disposición de Devin. Si varios niveles definen un elemento de knowledge con el mismo nombre, se incluyen todos. No se sobrescriben entre sí.

Secretos de Enterprise

Los administradores de Enterprise pueden definir secretos a nivel Enterprise. Estos secretos están disponibles como variables de entorno durante cada compilación y cada sesión en todas las organizaciones, tanto en los pasos de blueprint de Enterprise como en los de org y repo. Usa secretos de Enterprise para credenciales que se comparten en toda la empresa:
  • Tokens de registros internos de paquetes
  • Autenticación del proxy corporativo
  • Claves de API compartidas para servicios internos
  • Claves de licencia para herramientas Enterprise
Los secretos de Enterprise se gestionan en la página Configuración a nivel Enterprise, la misma página donde configuras el blueprint de Enterprise. Ve a Settings > Entorno base de Devin para gestionar tanto el blueprint como los secretos en un solo lugar.
Gestionar secretos de Enterprise requiere el permiso ManageAccountResources.
Si un secreto de org tiene el mismo nombre que un secreto de Enterprise, el secreto de org tiene prioridad. Esto permite que cada organización sobrescriba los valores predeterminados a nivel Enterprise cuando sea necesario.

Reconstrucciones a nivel Enterprise

Los administradores de Enterprise pueden activar una reconstrucción que se aplica en cascada a todas las organizaciones. Esto resulta útil cuando:
  • Actualizas el blueprint de Enterprise (p. ej., actualizas Python de 3.11 a 3.12)
  • Rotas un secreto de Enterprise
  • Necesitas actualizar todos los entornos después de un parche de seguridad
Activa una reconstrucción a nivel Enterprise desde Settings > Entorno base de Devin. La compilación de cada organización se ejecuta con el blueprint de Enterprise actualizado, seguida de sus propios blueprints de org y repo.
Las reconstrucciones a nivel Enterprise respetan la cola de compilación de cada org. Si una org ya tiene una compilación en curso, la reconstrucción activada a nivel Enterprise se encola detrás de ella. Si ya hay una compilación en cola, se cancela y se reemplaza por la activada a nivel Enterprise.

Gestión de la implementación en las organizaciones

El administrador de la empresa controla qué organizaciones usan la configuración declarativa frente a la configuración clásica de Environment. La página Rollout ofrece visibilidad sobre el estado de adopción en todas las organizaciones y te permite migrarlas de forma progresiva. Consulta Migrar tu empresa para ver una guía detallada de los estados de implementación, las excepciones por organización y una guía de migración por fases.