Ir al contenido
Back to Portfolio

odoo_demo_destroyer

Author
RamonRiosJr
Repository Author

💣 The Demo Destroyer

"Provision. Demonstrate. Destroy."

The Demo Destroyer is a high-octane, hacker-aesthetic dashboard designed for System Administrators and DevOps engineers who need to spin up temporary Odoo instances for client demos and ensure they are annihilated afterwards.

Status Security Vibe

⚡ Features

  • 🚀 Instant Provisioning: Deploy Odoo 16.0, 17.0, or 18.0 instances with a single click.
  • ⏳ Self-Destruct Timers: Set a lifespan (1-24 hours) for each instance. Automatic cleanup ensures no resource wastage.
  • 💀 Kill Switch: Immediate termination of any active instance from the dashboard.
  • 💻 Hacker UI: A terminal-inspired interface with dark mode and neon green accents.
  • 🛡️ Cross-Platform:
    • Simulation Mode: Runs on Windows/Mac for testing (mocks shell commands).
    • Production Mode: Executes real provision.sh and destroy.sh scripts on Linux servers.

🛠️ Tech Stack

  • Frontend: Streamlit
  • Backend Logic: Python
  • Data Management: Pandas & JSON
  • System Automation: Bash / at (Linux only)

📦 Installation

  1. Clone the repository:

    git clone https://github.com/yourusername/odoo-demo-destroyer.git
    cd odoo-demo-destroyer
  2. Install dependencies:

    pip install -r requirements.txt
  3. Run the application:

    streamlit run app.py

🖥️ Usage

  1. Open the dashboard in your browser (usually http://localhost:8501).
  2. Launch Control: Enter a Client Name, select an Odoo Version, and set the Timer.
  3. Click Deploy Instance.
  4. Watch it appear in the Live Instances table.
  5. Click KILL to manually destroy an instance before its timer expires.

🐳 Docker Deployment (Production)

This is the recommended way to run the application on your Ubuntu server.

  1. Build and Run:

    docker-compose up -d --build
  2. Access:

    • Dashboard: http://YOUR_SERVER_IP:8501
    • Odoo Instances: Will be available at http://YOUR_SERVER_IP:PORT (the port is dynamically assigned).
  3. Caddy (Optional): If you use Caddy, you can use the provided Caddyfile to map a domain to the dashboard.

    demo-destroyer.yourdomain.com {
        reverse_proxy localhost:8501
    }

⚠️ Deployment Note


Built with 💚 by [Your Name]

Recent Activity

DOCKER UPDATE2025-11-27
Ramon Rios
adding docker files and notes2025-11-27
Ramon Rios
docs: Update LICENSE file.2025-11-27
Ramon Rios

About Ramon Rios Jr's Tech Stack

As a Senior Systems Architect and Full Stack Developer, I specialize in building scalable, enterprise-grade applications. My expertise spans across modern backend frameworks using Python, comprehensive ERP deployments with Odoo, and highly interactive frontend architectures. The open-source GitHub repositories listed above demonstrate my proficiency in API development, database optimization, system integrations, and automation. Whether crafting custom business logic or designing sleek glassmorphic user interfaces, I am committed to delivering high-performance software solutions.