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

Uploaded Python 3

File details

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

File metadata

  • Download URL: horillasetup-1.0.2.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.2.tar.gz
Algorithm Hash digest
SHA256 ec4b6f8d14f9de245ba9cc32f3363e305635cd10bd6fc3f2aec19e85762dfef3
MD5 5085b9f9d4c723782e259802412433d0
BLAKE2b-256 96a49878510f461618232aeeceaea7ac992658ce0ab096d48c16f2e088ca0f11

See more details on using hashes here.

File details

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

File metadata

  • Download URL: horillasetup-1.0.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 8f78d8b1ecccdda869dfb88774b228db346458ff98c212f668f08fda1c99c653
MD5 4c90f15bdcffdf77b7b952a4122dd29d
BLAKE2b-256 7aec67204a0ed26b6b3337210299a17cef48cb96ee6a4b868f0e24736f9abe24

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