Skip to main content

CLI tool to build and manage Horilla projects

Project description

🛠️ Horilla Setup CLI (horillasetup)

The Horilla Setup CLI is a lightweight, cross-platform command-line tool designed to streamline the initialization, migration, upgrade, and dependency management processes across the Horilla ecosystem — including HRMS v1, HRMS v2, and the newly released Horilla CRM.

It automates repetitive setup tasks like environment preparation, Git cloning, dependency installation, and migration handling — ensuring a smooth, consistent workflow for developers and deployment teams.


🚀 Key Features

Quick project setup for HRMS (v1 & v2) and CRM ✓ Version-aware migrations including HRMS v1 → v2 upgrade ✓ Automated dependency installation from requirements.txtSeamless project upgrades via Git pull ✓ Cross-platform support (Windows, Linux, macOS) ✓ Single command workflow for setup, migration, and updates


⚙️ Installation

📦 Global Installation (Recommended)

pip install horillasetup

🧩 Local Development Installation

If you’re improving or modifying the tool:

git clone https://github.com/horilla-opensource/setup.git
cd horilla-ctl
pip install -e .

-e installs the package in editable mode, so changes take effect instantly.


🧭 Usage Guide

Show all available commands:

horillasetup --help

🏗️ 1. Build a New Horilla Project

HRMS v1

horillasetup build hrms-v1

HRMS v2

horillasetup build hrms-v2

CRM (Newly Released 🚀)

horillasetup build crm

The build command will:

  • Clone the correct Horilla repo (branch-specific)
  • Copy project files into the working directory
  • Install Python dependencies
  • Provide environment setup instructions

🧱 2. Run Migrations

HRMS v1

horillasetup migrate hrms-v1

HRMS v2

horillasetup migrate hrms-v2

CRM

horillasetup migrate crm

Migration steps include:

  • Running makemigrations
  • Applying migrations
  • Collecting static files

🔄 3. Upgrade an Existing Project

Pull latest code updates from Git:

HRMS v1

horillasetup upgrade hrms-v1

HRMS v2

horillasetup upgrade hrms-v2

CRM

horillasetup upgrade crm

🔁 4. HRMS v1 → HRMS v2 Database Upgrade

To migrate an existing v1 database into v2:

horillasetup migrate hrms-v2 --existing

This performs:

  • Safe clearing of old migration entries
  • Faked compatibility migrations
  • Full v2 migration + static collection

📦 5. Install Dependencies Only

horillasetup install-deps

Installs all packages from requirements.txt.


💡 Example Setup Workflow

# Build a fresh CRM project
horillasetup build crm

# Run CRM migrations
horillasetup migrate crm

# Upgrade project later
horillasetup upgrade crm

🛣️ Future Roadmap

  • 🔌 Plugin-based scaffolding for new Horilla modules
  • 🔍 Automated version & dependency conflict detection
  • 📦 Project template generator
  • 🧰 Extended DevOps tools integration

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

horillasetup-1.0.3.tar.gz (15.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

horillasetup-1.0.3-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

Details for the file horillasetup-1.0.3.tar.gz.

File metadata

  • Download URL: horillasetup-1.0.3.tar.gz
  • Upload date:
  • Size: 15.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for horillasetup-1.0.3.tar.gz
Algorithm Hash digest
SHA256 cefd5b1370086645ccefe7f1c132d4de1ea12c2fc5076d9c2365ea9d36121462
MD5 704eaca5b242eb4d6e89ab7023c01641
BLAKE2b-256 082282d945510f02420ee1ada37fe610f450fab067cb78afafad3fe0736dcf7c

See more details on using hashes here.

File details

Details for the file horillasetup-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: horillasetup-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 15.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for horillasetup-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 21a652abf67fa6feda0ac4a0fb578b77cd1c40eca7f924c84f6d3fa3d0811709
MD5 30e96847ef2bca38004d0c08eb2b35b2
BLAKE2b-256 f20bded9a1a2e927a2b1cded56f20f12c3e360ea7f60577865f655cd60124ebd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page