# ASF TestArena A web-based platform for managing automated test jobs for software projects. ## Features - User authentication and role-based access control - Admin dashboard for user management - Test job submission with multi-step workflow - Real-time job monitoring and status tracking - HTML test result viewing - Automatic cleanup of old test results ## Quick Start ### Prerequisites - Docker and Docker Compose - Git ### Installation 1. Clone the repository 2. (Optional) Copy `.env.example` to `.env` and update the values 3. Run the deployment script: **Windows (PowerShell):** ```powershell .\deploy.ps1 ``` **Linux/Mac:** ```bash chmod +x deploy.sh ./deploy.sh ``` 4. Access the application at your configured domain ### Default Credentials - Username: `admin` - Password: `admin123` **Important:** Change the default admin password immediately after first login! ## Configuration ### Caddy Integration To integrate with Caddy reverse proxy: 1. Uncomment the `caddy_network` section in `docker-compose.yml` 2. Replace `caddy_network` with your actual Caddy network name 3. Add the following to your Caddyfile: ``` testarena.nabd-co.com { reverse_proxy testarena_web:5000 } ``` ## Architecture - **Backend:** Flask (Python) - **Database:** PostgreSQL - **Frontend:** HTML/CSS/JavaScript - **Reverse Proxy:** Caddy - **Containerization:** Docker ## User Roles ### Admin - Create, delete, and manage users - Reset user passwords - View all test jobs ### Standard User - Submit test jobs - View own test jobs - Monitor job status ## Development To run in development mode: ```bash cd app pip install -r ../requirements.txt export FLASK_ENV=development export DATABASE_URL=sqlite:///testarena.db python wsgi.py ``` ## License Proprietary - NABD Co.