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.1.tar.gz (15.1 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.1-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: horillasetup-1.0.1.tar.gz
  • Upload date:
  • Size: 15.1 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.1.tar.gz
Algorithm Hash digest
SHA256 773bf5bb43fb5cd5c10de657da7012b250556fb19677d130c061ea10f11bd052
MD5 4dec6c13776cd5372ceb2f6607a8d2df
BLAKE2b-256 9b34e041cb74d6d16422fc1699b088a9200626af0e5b95d5fb43b70812a34b69

See more details on using hashes here.

File details

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

File metadata

  • Download URL: horillasetup-1.0.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6a9dbe8c7f209ddd840c5e091b815c13107c0e8a851ed78935de92bb49ff7a09
MD5 a9f7d6fa3010d1e7e6dccceee60f110b
BLAKE2b-256 867749a99307832a58b8d3be815472c31bcad6f2800b7cb1babdecffcf6a3bf7

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