Metadata-Version: 2.2
Name: devops-toolkit
Version: 0.1.1
Summary: A comprehensive Python-based toolkit for DevOps workflows
Home-page: https://github.com/kenbark42/devops-toolkit
Author: Kenbark42
Author-email: Kenbark42 <kenbark42@example.com>
License: MIT
Project-URL: Homepage, https://github.com/kenbark42/devops-toolkit
Project-URL: Issues, https://github.com/kenbark42/devops-toolkit/issues
Project-URL: Documentation, https://github.com/kenbark42/devops-toolkit/docs
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
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: Topic :: Software Development :: Build Tools
Classifier: Topic :: System :: Installation/Setup
Classifier: Topic :: System :: Systems Administration
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: click>=8.0.0
Requires-Dist: pyyaml>=6.0
Requires-Dist: pydantic>=2.0.0
Requires-Dist: rich>=12.0.0
Provides-Extra: aws
Requires-Dist: boto3>=1.26.0; extra == "aws"
Requires-Dist: botocore>=1.29.0; extra == "aws"
Provides-Extra: kubernetes
Requires-Dist: kubernetes>=24.2.0; extra == "kubernetes"
Provides-Extra: monitoring
Requires-Dist: prometheus-client>=0.16.0; extra == "monitoring"
Requires-Dist: requests>=2.28.0; extra == "monitoring"
Provides-Extra: dev
Requires-Dist: pytest>=7.0.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
Requires-Dist: black>=23.0.0; extra == "dev"
Requires-Dist: flake8>=6.0.0; extra == "dev"
Requires-Dist: mypy>=1.0.0; extra == "dev"
Requires-Dist: isort>=5.10.0; extra == "dev"
Requires-Dist: build>=0.10.0; extra == "dev"
Requires-Dist: twine>=4.0.0; extra == "dev"
Provides-Extra: all
Requires-Dist: boto3>=1.26.0; extra == "all"
Requires-Dist: botocore>=1.29.0; extra == "all"
Requires-Dist: kubernetes>=24.2.0; extra == "all"
Requires-Dist: prometheus-client>=0.16.0; extra == "all"
Requires-Dist: requests>=2.28.0; extra == "all"
Dynamic: author
Dynamic: home-page
Dynamic: requires-python

# DevOps Toolkit

[![Python CI](https://github.com/username/devops-toolkit/actions/workflows/ci.yml/badge.svg)](https://github.com/username/devops-toolkit/actions/workflows/ci.yml)
[![codecov](https://codecov.io/gh/username/devops-toolkit/branch/main/graph/badge.svg)](https://codecov.io/gh/username/devops-toolkit)
[![PyPI version](https://badge.fury.io/py/devops-toolkit.svg)](https://badge.fury.io/py/devops-toolkit)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

Please keep in mind this is an experimental hobby project. All functions are in demo mode only, and will stay that way until/if 1.0 release. Nothing in here should be expected to work (although, I might argue it does well enough) while in alpha.

This project is intended to be a powerful collection of homemade tools that are tailored to DevOps related activities. 

## Features

- **Deployment**: Automate application deployment across different environments
- **Generate Terraform**: Generate complete, deployable terraform tf files from yaml (multi platform support inteded)
- **Infrastructure**: Provision and manage infrastructure on multiple cloud providers
- **Monitoring**: Track application and infrastructure metrics with customizable alerts
- **Security**: Scan applications and dependencies for vulnerabilities

## Installation

```bash
# Basic installation
pip install devops-toolkit

# Install with specific components
pip install devops-toolkit[aws]          # AWS support
pip install devops-toolkit[kubernetes]   # Kubernetes support
pip install devops-toolkit[monitoring]   # Monitoring tools
pip install devops-toolkit[all]          # All components
```

## Quick Start

### Deployment

```bash
# Deploy an application to the staging environment
devops deploy --app-name myapp --version 1.2.3 --env staging

# Roll back a deployment
devops rollback --app-name myapp --env production
```

### Infrastructure Provisioning

```bash
# Provision infrastructure on AWS
devops provision --provider aws --template infra/web-stack.yaml --params infra/params.yaml

# Scale resources
devops scale --provider aws --provision-id infra-1234567890 --resource-type compute --count 5
```

### Monitoring

```bash
# Check application status
devops monitor --app-name myapp --env production

# Continuous monitoring
devops monitor --app-name myapp --env production --watch
```

### Security Scanning

```bash
# Scan application dependencies
devops security-scan --app-name myapp --scan-type dependencies

# Generate HTML security report
devops security-scan --app-name myapp --scan-type all --report-format html --output security-report.html
```

## Documentation

Detailed documentation is available in the `docs/` directory:

- [Usage Guide](docs/usage.md)
- [Contributing Guidelines](docs/contributing.md)
- [API Reference](docs/api.md)

## Development

```bash
# Clone the repository
git clone https://github.com/username/devops-toolkit.git
cd devops-toolkit

# Set up development environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install -e ".[dev]"

# Run tests
pytest
```

## License

This project is licensed under the MIT License - see the LICENSE file for details.
