devops-project-generator 1.0.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 H A R S H H A A
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,404 @@
1
+ Metadata-Version: 2.4
2
+ Name: devops-project-generator
3
+ Version: 1.0.0
4
+ Summary: A CLI tool that scaffolds production-ready DevOps repositories
5
+ Author-email: NotHarshhaa <devops-project-generator@notHarshhaa.com>
6
+ License: MIT
7
+ Classifier: Development Status :: 4 - Beta
8
+ Classifier: Intended Audience :: Developers
9
+ Classifier: License :: OSI Approved :: MIT License
10
+ Classifier: Programming Language :: Python :: 3
11
+ Classifier: Programming Language :: Python :: 3.8
12
+ Classifier: Programming Language :: Python :: 3.9
13
+ Classifier: Programming Language :: Python :: 3.10
14
+ Classifier: Programming Language :: Python :: 3.11
15
+ Classifier: Programming Language :: Python :: 3.12
16
+ Requires-Python: >=3.8
17
+ Description-Content-Type: text/markdown
18
+ License-File: LICENSE
19
+ Requires-Dist: typer[all]>=0.9.0
20
+ Requires-Dist: rich>=13.0.0
21
+ Requires-Dist: jinja2>=3.1.0
22
+ Requires-Dist: pyyaml>=6.0
23
+ Requires-Dist: click>=8.0.0
24
+ Provides-Extra: dev
25
+ Requires-Dist: pytest>=7.0.0; extra == "dev"
26
+ Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
27
+ Requires-Dist: black>=23.0.0; extra == "dev"
28
+ Requires-Dist: flake8>=6.0.0; extra == "dev"
29
+ Requires-Dist: mypy>=1.0.0; extra == "dev"
30
+ Dynamic: license-file
31
+
32
+ # πŸš€ DevOps Project Generator
33
+
34
+ A powerful CLI tool that scaffolds production-ready DevOps repositories based on user-selected options like CI/CD, infrastructure, deployment, environments, observability, and security.
35
+
36
+ ## ✨ Why DevOps Project Generator?
37
+
38
+ Setting up a real-world DevOps project from scratch is repetitive and error-prone. This tool helps you bootstrap a complete DevOps-ready repository in seconds, following industry best practices.
39
+
40
+ βœ” Opinionated but configurable
41
+ βœ” Beginner-friendly, production-oriented
42
+ βœ” CLI support
43
+ βœ” No tool lock-in
44
+
45
+ ## 🎯 Who Is This For?
46
+
47
+ - **DevOps Engineers**
48
+ - **Cloud Engineers**
49
+ - **Platform Engineers**
50
+ - **SREs**
51
+ - **Students & freshers building real DevOps projects**
52
+
53
+ ## 🧠 What This Generator Creates
54
+
55
+ A full DevOps project structure covering:
56
+ - CI/CD pipelines
57
+ - Containerization
58
+ - Infrastructure (IaC-ready)
59
+ - Deployment models
60
+ - Environment separation
61
+ - Observability
62
+ - Security basics
63
+
64
+ All generated based on your selected options.
65
+
66
+ ## βš™οΈ Supported Options (v1)
67
+
68
+ ### CI/CD
69
+ - **GitHub Actions**
70
+ - **GitLab CI**
71
+ - **Jenkins**
72
+ - **None**
73
+
74
+ ### Infrastructure
75
+ - **Terraform**
76
+ - **CloudFormation**
77
+ - **None**
78
+
79
+ ### Deployment
80
+ - **VM**
81
+ - **Docker**
82
+ - **Kubernetes**
83
+
84
+ ### Environments
85
+ - **Single**
86
+ - **Dev / Stage / Prod**
87
+
88
+ ### Observability
89
+ - **Logs only**
90
+ - **Logs + Metrics**
91
+ - **Full (Logs + Metrics + Alerts)**
92
+
93
+ ### Security
94
+ - **Basic**
95
+ - **Standard**
96
+ - **Strict**
97
+
98
+ ## πŸ–₯️ Usage
99
+
100
+ ### CLI Usage
101
+
102
+ ```bash
103
+ devops-project-generator init \
104
+ --ci github-actions \
105
+ --infra terraform \
106
+ --deploy kubernetes \
107
+ --envs dev,stage,prod \
108
+ --observability full \
109
+ --security standard
110
+ ```
111
+
112
+ ### Interactive Mode
113
+
114
+ ```bash
115
+ devops-project-generator init --interactive
116
+ ```
117
+
118
+ ### List Available Options
119
+
120
+ ```bash
121
+ devops-project-generator list-options
122
+ ```
123
+
124
+ ## πŸ—οΈ Generated Project Structure (Example)
125
+
126
+ ```
127
+ devops-project/
128
+ β”œβ”€β”€ app/
129
+ β”‚ └── sample-app/
130
+ β”œβ”€β”€ ci/
131
+ β”‚ β”œβ”€β”€ pipelines/
132
+ β”‚ └── README.md
133
+ β”œβ”€β”€ infra/
134
+ β”‚ β”œβ”€β”€ terraform/
135
+ β”‚ └── environments/
136
+ β”œβ”€β”€ containers/
137
+ β”‚ β”œβ”€β”€ Dockerfile
138
+ β”‚ └── docker-compose.yml
139
+ β”œβ”€β”€ k8s/
140
+ β”‚ β”œβ”€β”€ base/
141
+ β”‚ └── overlays/
142
+ β”œβ”€β”€ monitoring/
143
+ β”‚ β”œβ”€β”€ logs/
144
+ β”‚ β”œβ”€β”€ metrics/
145
+ β”‚ └── alerts/
146
+ β”œβ”€β”€ security/
147
+ β”‚ β”œβ”€β”€ secrets/
148
+ β”‚ └── scanning/
149
+ β”œβ”€β”€ scripts/
150
+ β”‚ └── automation/
151
+ β”œβ”€β”€ Makefile
152
+ └── README.md
153
+ ```
154
+
155
+ ## πŸ› οΈ Tech Stack
156
+
157
+ ### Generator Core
158
+ - **Python**
159
+ - **Jinja2**
160
+ - **YAML-based configuration**
161
+
162
+ ### CLI
163
+ - **Typer**
164
+ - **Rich**
165
+
166
+ ## πŸ“¦ Installation
167
+
168
+ ### From PyPI
169
+
170
+ ```bash
171
+ pip install devops-project-generator
172
+ ```
173
+
174
+ ### From Source
175
+
176
+ ```bash
177
+ git clone https://github.com/NotHarshhaa/devops-project-generator.git
178
+ cd devops-project-generator
179
+ pip install -e .
180
+ ```
181
+
182
+ ### Development Setup
183
+
184
+ ```bash
185
+ git clone https://github.com/NotHarshhaa/devops-project-generator.git
186
+ cd devops-project-generator
187
+ python -m venv venv
188
+ source venv/bin/activate # On Windows: venv\Scripts\activate
189
+ pip install -e ".[dev]"
190
+ ```
191
+
192
+ ## πŸš€ Quick Start
193
+
194
+ 1. **Generate a new project**
195
+ ```bash
196
+ devops-project-generator init --name my-app --ci github-actions --deploy kubernetes
197
+ ```
198
+
199
+ 2. **Navigate to your project**
200
+ ```bash
201
+ cd my-app
202
+ ```
203
+
204
+ 3. **Setup the environment**
205
+ ```bash
206
+ make setup
207
+ ```
208
+
209
+ 4. **Start the application**
210
+ ```bash
211
+ make start
212
+ ```
213
+
214
+ 5. **Check health**
215
+ ```bash
216
+ make health
217
+ ```
218
+
219
+ ## πŸ“– Examples
220
+
221
+ ### Basic Web App with Docker
222
+
223
+ ```bash
224
+ devops-project-generator init \
225
+ --name my-webapp \
226
+ --ci github-actions \
227
+ --deploy docker \
228
+ --envs single \
229
+ --observability logs \
230
+ --security basic
231
+ ```
232
+
233
+ ### Enterprise Kubernetes App
234
+
235
+ ```bash
236
+ devops-project-generator init \
237
+ --name enterprise-app \
238
+ --ci github-actions \
239
+ --infra terraform \
240
+ --deploy kubernetes \
241
+ --envs dev,stage,prod \
242
+ --observability full \
243
+ --security strict
244
+ ```
245
+
246
+ ### Simple VM Deployment
247
+
248
+ ```bash
249
+ devops-project-generator init \
250
+ --name simple-app \
251
+ --ci jenkins \
252
+ --deploy vm \
253
+ --envs dev,prod \
254
+ --observability logs-metrics \
255
+ --security standard
256
+ ```
257
+
258
+ ## πŸ”§ Configuration
259
+
260
+ ### Global Configuration
261
+
262
+ You can set default options in `~/.devops-generator/config.yaml`:
263
+
264
+ ```yaml
265
+ defaults:
266
+ ci: github-actions
267
+ deploy: kubernetes
268
+ observability: logs-metrics
269
+ security: standard
270
+ ```
271
+
272
+ ### Project Templates
273
+
274
+ The generator supports custom templates. Place your templates in:
275
+
276
+ ```
277
+ ~/.devops-generator/templates/
278
+ β”œβ”€β”€ ci/
279
+ β”œβ”€β”€ infra/
280
+ β”œβ”€β”€ deploy/
281
+ β”œβ”€β”€ monitoring/
282
+ └── security/
283
+ ```
284
+
285
+ ## πŸ§ͺ Testing
286
+
287
+ ### Run Tests
288
+
289
+ ```bash
290
+ pytest
291
+ ```
292
+
293
+ ### Run Tests with Coverage
294
+
295
+ ```bash
296
+ pytest --cov=devops_project_generator --cov-report=html
297
+ ```
298
+
299
+ ### Run Linting
300
+
301
+ ```bash
302
+ flake8 devops_project_generator/
303
+ black devops_project_generator/
304
+ mypy devops_project_generator/
305
+ ```
306
+
307
+ ## 🀝 Contributing
308
+
309
+ We welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.
310
+
311
+ ### Development Workflow
312
+
313
+ 1. Fork the repository
314
+ 2. Create a feature branch
315
+ 3. Make your changes
316
+ 4. Add tests for new functionality
317
+ 5. Run the test suite
318
+ 6. Submit a pull request
319
+
320
+ ### Adding New Features
321
+
322
+ 1. **New CI/CD Platform**: Add templates in `templates/ci/`
323
+ 2. **New Infrastructure Tool**: Add templates in `templates/infra/`
324
+ 3. **New Deployment Method**: Add templates in `templates/deploy/`
325
+ 4. **New Security Level**: Add templates in `templates/security/`
326
+
327
+ ## πŸ“š Documentation
328
+
329
+ - [User Guide](docs/user-guide.md)
330
+ - [Developer Guide](docs/developer-guide.md)
331
+ - [Template Reference](docs/template-reference.md)
332
+ - [API Documentation](docs/api.md)
333
+
334
+ ## πŸ› Troubleshooting
335
+
336
+ ### Common Issues
337
+
338
+ 1. **Permission Denied**
339
+ ```bash
340
+ chmod +x scripts/setup.sh scripts/deploy.sh
341
+ ```
342
+
343
+ 2. **Template Not Found**
344
+ - Check if template files exist in `templates/`
345
+ - Verify template syntax
346
+
347
+ 3. **Generated Files Not Executable**
348
+ ```bash
349
+ find . -name "*.sh" -exec chmod +x {} \;
350
+ ```
351
+
352
+ ### Getting Help
353
+
354
+ - **Issues**: [GitHub Issues](https://github.com/NotHarshhaa/devops-project-generator/issues)
355
+ - **Discussions**: [GitHub Discussions](https://github.com/NotHarshhaa/devops-project-generator/discussions)
356
+ - **Documentation**: [Wiki](https://github.com/NotHarshhaa/devops-project-generator/wiki)
357
+
358
+ ## πŸ—ΊοΈ Roadmap
359
+
360
+ ### v1.1
361
+ - [ ] Support for Azure DevOps
362
+ - [ ] Additional cloud providers (GCP, Azure)
363
+ - [ ] More deployment targets (AWS ECS, Fargate)
364
+ - [ ] Advanced monitoring templates
365
+
366
+ ### v1.2
367
+ - [ ] Template marketplace
368
+ - [ ] Plugin system
369
+ - [ ] GUI interface
370
+ - [ ] Integration with popular tools
371
+
372
+ ### v2.0
373
+ - [ ] Multi-language support
374
+ - [ ] Advanced project customization
375
+ - [ ] AI-powered recommendations
376
+ - [ ] Enterprise features
377
+
378
+ ## πŸ“„ License
379
+
380
+ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
381
+
382
+ ## πŸ™ Acknowledgments
383
+
384
+ - **Typer** - For the amazing CLI framework
385
+ - **Rich** - For beautiful terminal output
386
+ - **Jinja2** - For powerful templating
387
+ - **DevOps Community** - For best practices and inspiration
388
+
389
+ ## πŸ“ž Contact
390
+
391
+ This project is crafted with πŸ’‘ by **[Harshhaa](https://github.com/NotHarshhaa)**.
392
+ Your feedback is always welcome! Let's build together. πŸš€
393
+
394
+ πŸ“§ **Connect with me:**
395
+ πŸ”— **GitHub**: [@NotHarshhaa](https://github.com/NotHarshhaa)
396
+ πŸ”— **Portfolio**: [Personal Portfolio](https://notharshhaa.site)
397
+ πŸ”— **Links - Portfolio**: [Links](https://link.notharshhaa.site)
398
+ πŸ”— **Telegram Community**: [Join Here](https://t.me/prodevopsguy)
399
+ πŸ”— **LinkedIn**: [Harshhaa Vardhan Reddy](https://www.linkedin.com/in/NotHarshhaa/)
400
+
401
+ ---
402
+
403
+ **Built with ❀️ by the DevOps community**
404
+ *Making DevOps accessible to everyone*