automation-arqc separa la configuración sensible del código fuente usando variables de entorno. En desarrollo local, estas variables se cargan desde un archivoDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/Giofelix/Proyecto-automatizacion-Empresa/llms.txt
Use this file to discover all available pages before exploring further.
.env en la raíz del proyecto mediante dotenv. En el pipeline de Jenkins, las credenciales se inyectan desde el almacén de credenciales de Jenkins y las variables de entorno del agente — el archivo .env nunca llega al servidor CI. Esta separación garantiza que contraseñas y URLs de entorno nunca queden comprometidas en el historial de Git.
Variables del archivo .env
Estas son las variables que debes definir en tu archivo .env local antes de ejecutar cualquier test.
URL base de la aplicación bajo prueba, incluyendo la barra final y el nombre de la entidad municipal. Ejemplo:
http://172.17.1.214:9080/pasto/. Esta URL es consumida directamente por auth.fixture.js en page.goto(process.env.BASE_URL, ...) y por los fixtures Reteica al crear contextos de browser independientes.Usuario administrador con permisos completos sobre los módulos Reteica. Utilizado por
playwright/global-setup.js para ejecutar el login inicial de Angular y generar la sesión cacheada en playwright/.auth/user.json.Contraseña del usuario administrador. Utilizada junto con
USER_ADMIN en el flujo de login de global-setup.js. Nunca debe hardcodearse en el código fuente ni aparecer en logs.Timeout general en milisegundos para operaciones que no tienen un timeout explícito en
playwright.config.js. El valor por defecto es 30000 ms (30 segundos). Para entornos con servidores lentos sobre VPN, puede aumentarse a 60000.Identificador del entorno de ejecución. Valores válidos:
desarrollo, staging, produccion. Usado para condicionamiento en suites/config-ambientes/ambientes.js y para etiquetar los resultados de Allure con el contexto de ejecución.Plantilla .env.example
El repositorio incluye una plantilla lista para copiar. Nunca modifiques este archivo directamente — cópialo a .env y completa los valores reales:
.env.example
Variables de CI (Jenkins)
En el pipeline de Jenkins, las variables se inyectan a nivel de agente y de credenciales — no existe un archivo.env en el workspace de CI.
| Variable | Valor en Jenkins | Descripción |
|---|---|---|
CI | 'true' | Activada por Jenkins en todas las etapas. Cambia el comportamiento de playwright.config.js: habilita forbidOnly, aumenta retries a 2, y usa 2 workers en paralelo. |
PLAYWRIGHT_BROWSERS_PATH | /home/ubuntu/.cache/playwright-browsers | Ruta al caché de binarios de Chromium en el agente automatico_196. Evita descargar el navegador en cada build usando la caché existente del agente. |
LANG | es_ES.UTF-8 | Locale del sistema operativo del agente durante la ejecución de pruebas — asegura que la salida de texto en consola y los archivos de log estén en UTF-8. |
LANGUAGE | es_ES.UTF-8 | Variable complementaria de locale del agente Linux. |
LC_ALL | es_ES.UTF-8 | Fuerza el locale en todos los subsistemas del agente, incluyendo la comparación de strings y el formato de fechas en Node.js. |
BASE_URL | Varía por entidad | En Deployment Mode, Jenkins construye esta variable automáticamente como http://172.17.1.214:9080/{entidad}/ según el parámetro de entidad del pipeline. Sobrescribe cualquier valor de .env. |
Credenciales inyectadas desde el almacén de Jenkins
Las credenciales del administrador no se almacenan como variables de entorno del agente — se inyectan desde el almacén seguro de credenciales de Jenkins directamente en el scope del pipeline:| Credential ID en Jenkins | Variable de entorno inyectada |
|---|---|
USER_GENERIC | USER_ADMIN (expuesta al proceso Node) |
PASSWORD_UNIVERSAL | PASS_ADMIN (expuesta al proceso Node) |