Metadata-Version: 2.4
Name: djd
Version: 0.1.0
Summary: A tool for managing Django + AWS ECS deployments
Author-email: Matthew Coleman <matthew@zagaran.com>
License: MIT
Project-URL: Homepage, https://github.com/zagaran/djd
Project-URL: Repository, https://github.com/zagaran/djd
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: boto3>=1.26.0
Requires-Dist: django>=4.2
Requires-Dist: gitpython>=3.1.0
Requires-Dist: ipython>=8.0.0
Requires-Dist: jinja2>=3.1.0
Requires-Dist: pygithub>=2.0.0
Requires-Dist: python-dotenv>=1.0.0
Requires-Dist: pytz>=2023.3
Requires-Dist: rich>=13.0.0
Requires-Dist: typer>=0.9.0
Dynamic: license-file

<p align="center">
  <img src="https://cdn-icons-png.flaticon.com/512/5731/5731863.png" width=256 />
</p>

## djd

**djd** is a command line tool for creating and managing Django + AWS ECS deployments. It wraps
Terraform, AWS (via [Boto3](https://github.com/boto/boto3)), Docker, Git, and GitHub to coordinate
running deployments, building and uploading Docker images, and accessing infrastructure from the terminal.

## Installation

```bash
pip install djd
```

## Usage

### Creating a deployment

This package includes templates for a canonical ECS web deployment architecture. Run the following
command to scaffold a named deployment in your project's repository. (Recommended: commit the generated files.)

```bash
djd-templates init {deployment_name}
```

To see all configuration options, append `--help`.

### ECS Services

To visualize running / configured ECS services:

```bash
djd {deployment_name} show-services
```

You will get a table that shows each ECS service's ID, name, latest deployment indicator,
task counts, status, and rollout state:

```
Deployment Status

  Deployment ID                    Service                          Latest       Created On                  Count             Status            Rollout State
 ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
  ecs-svc/0938446537801788686      deploy-staging-web               *            2025-10-24 12:30:48 PM      0 -> 1 / 1        Primary           Completed
  ecs-svc/2070367854272485563      deploy-staging-worker            *            2025-10-24 12:30:48 PM      0 -> 0 / 0        Primary           Completed
```

To visualize individual tasks on the cluster:

```bash
djd {deployment_name} show-tasks
```

```
Task Status

  Task ID                            Task Definition ID     Created At               Health Status          Status
 ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
  b21dc0a1442740c5a00930a64d6b00cd   deploy-staging-web:2   2025-10-24 12:31:06 PM   Unknown                Running

```
