Metadata-Version: 2.1
Name: airflow-installer
Version: 0.1.0
Summary: A lightweight Python package to simplify the installation of Apache Airflow effortlessly.
License: Apache License, Version 2.0
Keywords: airflow,installer,cli,apache-airflow
Author: Kaxil Naik
Author-email: kaxilnaik@gmail.com
Requires-Python: >=3.7,<4.0
Classifier: Development Status :: 3 - Alpha
Classifier: Framework :: Apache Airflow
Classifier: License :: OSI Approved :: Apache Software License
Classifier: License :: Other/Proprietary License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Dist: httpx (>=0.24.1,<0.25.0)
Requires-Dist: rich (>=13.5.2,<14.0.0)
Requires-Dist: rich-argparse (>=1.2.0,<2.0.0)
Requires-Dist: typer[all] (>=0.9.0,<0.10.0)
Description-Content-Type: text/markdown

# Airflow Installer

![PyPI](https://img.shields.io/pypi/v/airflow-installer)
![GitHub](https://img.shields.io/github/license/kaxil/airflow-installer)

A command-line tool to simplify the installation of Apache Airflow in a virtual environment.

## Features

- Install Apache Airflow with optional dependencies in a virtual environment.
- Automatically detect the latest version of Apache Airflow from PyPI.
- Manage version constraints using constraints files.
- Easy-to-use command-line interface (CLI) for seamless installation.

## Installation

You can install airflow-installer using pip:


```bash
pip install airflow-installer
```

## Options

```
 Usage: airflow_installer [OPTIONS]

╭─ Options ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --version                                     TEXT  Apache Airflow version to install. Defaults to latest. [default: 2.6.3]                                                                                        │
│ --constraints-url                             TEXT  URL of the constraints file. Defaults to latest version constraints.                                                                                           │
│ --extras                                      TEXT  Extras or additional requirements to install with Apache Airflow.                                                                                              │
│ --requirements                                TEXT  Path to a requirements.txt file to be used during installation.                                                                                                │
│ --venv-path                                   TEXT  Path where the virtual environment will be created [default: .venv/airflow]                                                                                    │
│ --recreate-venv         --no-recreate-venv          Recreate virtual environment if it already exists. [default: no-recreate-venv]                                                                                 │
│ --verbose               --no-verbose                Enable verbose debugging output. [default: no-verbose]                                                                                                         │
│ --install-completion                                Install completion for the current shell.                                                                                                                      │
│ --show-completion                                   Show completion for the current shell, to copy it or customize the installation.                                                                               │
│ --help                                              Show this message and exit.                                                                                                                                    │
╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
```

## Usage
```shell
# Install the latest version of Apache Airflow in the default virtual environment
airflow-installer

# Install a specific version of Apache Airflow in a custom virtual environment
airflow-installer --version 2.6.3 --venv-path .venv/my-airflow

# Install Apache Airflow with specific extras and constraints
airflow-installer --version 2.5.2 --extras "[celery,crypto]" --constraints-url "https://raw.githubusercontent.com/apache/airflow/constraints-2.5.2/constraints-3.7.txt"

# Install Apache Airflow using a requirements.txt file
airflow-installer --version 2.6.0 --requirements requirements.txt

# Recreate the virtual environment if it already exists
airflow-installer --recreate-venv

# Enable verbose output for debugging
airflow-installer --verbose
```

