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 |
+-----------------------------------------+
| Nivel | Quién lo gestiona | Ámbito |
|---|
| Enterprise | Administradores de Enterprise | Todas las organizaciones, todos los repositorios |
| Organización | Administradores de la organización | Todos los repositorios de la organización |
| Repositorio | Administradores de la organización o configuración del repositorio | Un ú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"
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
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í.
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.