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.4.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.4-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: horillasetup-1.0.4.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.4.tar.gz
Algorithm Hash digest
SHA256 8ab3909c721e74e19dc5fc851a950e487f12434eb828ec2e2da90e27f5434e82
MD5 ebdc2597ef6d6a21e92fd41850d55d5a
BLAKE2b-256 b8a18df0b223f85c80acaa599159ebf959431a2f2a2f8941b0b3e3df0b803001

See more details on using hashes here.

File details

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

File metadata

  • Download URL: horillasetup-1.0.4-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.4-py3-none-any.whl
Algorithm Hash digest
SHA256 6eaaa774ad83a9cf1a390b1ce0f6123dfa968ac00df4cd40d63f2b2752bff5fb
MD5 cf90e0d91a7a25283d95fe2574442bce
BLAKE2b-256 997a825f074e1a7584bd8da961008e627cbfe664ef0914d8df75a438e0125476

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