runbooks 0.6.1__py3-none-any.whl → 0.7.5__py3-none-any.whl

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.
Files changed (142) hide show
  1. jupyter-agent/.env +2 -0
  2. jupyter-agent/.gradio/certificate.pem +31 -0
  3. jupyter-agent/__main__.log +8 -0
  4. jupyter-agent/tmp/4ojbs8a02ir/jupyter-agent.ipynb +68 -0
  5. jupyter-agent/tmp/cm5iasgpm3p/jupyter-agent.ipynb +91 -0
  6. jupyter-agent/tmp/crqbsseag5/jupyter-agent.ipynb +91 -0
  7. jupyter-agent/tmp/hohanq1u097/jupyter-agent.ipynb +57 -0
  8. jupyter-agent/tmp/jns1sam29wm/jupyter-agent.ipynb +53 -0
  9. jupyter-agent/tmp/jupyter-agent.ipynb +27 -0
  10. runbooks/__init__.py +87 -37
  11. runbooks/cfat/README.md +300 -49
  12. runbooks/cfat/__init__.py +2 -2
  13. runbooks/finops/README.md +337 -0
  14. runbooks/finops/__init__.py +2 -4
  15. runbooks/finops/cli.py +1 -1
  16. runbooks/inventory/aws_organization.png +0 -0
  17. runbooks/inventory/collectors/__init__.py +8 -0
  18. runbooks/inventory/collectors/aws_management.py +791 -0
  19. runbooks/inventory/collectors/aws_networking.py +3 -3
  20. runbooks/main.py +3416 -590
  21. runbooks/operate/__init__.py +207 -0
  22. runbooks/operate/base.py +311 -0
  23. runbooks/operate/cloudformation_operations.py +619 -0
  24. runbooks/operate/cloudwatch_operations.py +496 -0
  25. runbooks/operate/dynamodb_operations.py +812 -0
  26. runbooks/operate/ec2_operations.py +926 -0
  27. runbooks/operate/iam_operations.py +569 -0
  28. runbooks/operate/s3_operations.py +1211 -0
  29. runbooks/operate/tagging_operations.py +655 -0
  30. runbooks/remediation/CLAUDE.md +100 -0
  31. runbooks/remediation/DOME9.md +218 -0
  32. runbooks/remediation/README.md +26 -0
  33. runbooks/remediation/Tests/update_policy.py +74 -0
  34. runbooks/remediation/__init__.py +95 -0
  35. runbooks/remediation/acm_cert_expired_unused.py +98 -0
  36. runbooks/remediation/acm_remediation.py +875 -0
  37. runbooks/remediation/api_gateway_list.py +167 -0
  38. runbooks/remediation/base.py +643 -0
  39. runbooks/remediation/cloudtrail_remediation.py +908 -0
  40. runbooks/remediation/cloudtrail_s3_modifications.py +296 -0
  41. runbooks/remediation/cognito_active_users.py +78 -0
  42. runbooks/remediation/cognito_remediation.py +856 -0
  43. runbooks/remediation/cognito_user_password_reset.py +163 -0
  44. runbooks/remediation/commons.py +455 -0
  45. runbooks/remediation/dynamodb_optimize.py +155 -0
  46. runbooks/remediation/dynamodb_remediation.py +744 -0
  47. runbooks/remediation/dynamodb_server_side_encryption.py +108 -0
  48. runbooks/remediation/ec2_public_ips.py +134 -0
  49. runbooks/remediation/ec2_remediation.py +892 -0
  50. runbooks/remediation/ec2_subnet_disable_auto_ip_assignment.py +72 -0
  51. runbooks/remediation/ec2_unattached_ebs_volumes.py +448 -0
  52. runbooks/remediation/ec2_unused_security_groups.py +202 -0
  53. runbooks/remediation/kms_enable_key_rotation.py +651 -0
  54. runbooks/remediation/kms_remediation.py +717 -0
  55. runbooks/remediation/lambda_list.py +243 -0
  56. runbooks/remediation/lambda_remediation.py +971 -0
  57. runbooks/remediation/multi_account.py +569 -0
  58. runbooks/remediation/rds_instance_list.py +199 -0
  59. runbooks/remediation/rds_remediation.py +873 -0
  60. runbooks/remediation/rds_snapshot_list.py +192 -0
  61. runbooks/remediation/requirements.txt +118 -0
  62. runbooks/remediation/s3_block_public_access.py +159 -0
  63. runbooks/remediation/s3_bucket_public_access.py +143 -0
  64. runbooks/remediation/s3_disable_static_website_hosting.py +74 -0
  65. runbooks/remediation/s3_downloader.py +215 -0
  66. runbooks/remediation/s3_enable_access_logging.py +562 -0
  67. runbooks/remediation/s3_encryption.py +526 -0
  68. runbooks/remediation/s3_force_ssl_secure_policy.py +143 -0
  69. runbooks/remediation/s3_list.py +141 -0
  70. runbooks/remediation/s3_object_search.py +201 -0
  71. runbooks/remediation/s3_remediation.py +816 -0
  72. runbooks/remediation/scan_for_phrase.py +425 -0
  73. runbooks/remediation/workspaces_list.py +220 -0
  74. runbooks/{security_baseline → security}/README.md +191 -68
  75. runbooks/security/__init__.py +70 -0
  76. runbooks/{security_baseline → security}/security_baseline_tester.py +5 -3
  77. runbooks-0.7.5.dist-info/METADATA +606 -0
  78. {runbooks-0.6.1.dist-info → runbooks-0.7.5.dist-info}/RECORD +115 -75
  79. {runbooks-0.6.1.dist-info → runbooks-0.7.5.dist-info}/entry_points.txt +0 -1
  80. runbooks/aws/__init__.py +0 -58
  81. runbooks/aws/dynamodb_operations.py +0 -231
  82. runbooks/aws/ec2_copy_image_cross-region.py +0 -195
  83. runbooks/aws/ec2_describe_instances.py +0 -202
  84. runbooks/aws/ec2_ebs_snapshots_delete.py +0 -186
  85. runbooks/aws/ec2_run_instances.py +0 -213
  86. runbooks/aws/ec2_start_stop_instances.py +0 -212
  87. runbooks/aws/ec2_terminate_instances.py +0 -143
  88. runbooks/aws/ec2_unused_eips.py +0 -196
  89. runbooks/aws/ec2_unused_volumes.py +0 -188
  90. runbooks/aws/s3_create_bucket.py +0 -142
  91. runbooks/aws/s3_list_buckets.py +0 -152
  92. runbooks/aws/s3_list_objects.py +0 -156
  93. runbooks/aws/s3_object_operations.py +0 -183
  94. runbooks/aws/tagging_lambda_handler.py +0 -183
  95. runbooks/inventory/cfn_move_stack_instances.py +0 -1526
  96. runbooks/inventory/delete_s3_buckets_objects.py +0 -169
  97. runbooks/inventory/lockdown_cfn_stackset_role.py +0 -224
  98. runbooks/inventory/update_aws_actions.py +0 -173
  99. runbooks/inventory/update_cfn_stacksets.py +0 -1215
  100. runbooks/inventory/update_cloudwatch_logs_retention_policy.py +0 -294
  101. runbooks/inventory/update_iam_roles_cross_accounts.py +0 -478
  102. runbooks/inventory/update_s3_public_access_block.py +0 -539
  103. runbooks/organizations/__init__.py +0 -12
  104. runbooks/organizations/manager.py +0 -374
  105. runbooks/security_baseline/requirements.txt +0 -7
  106. runbooks-0.6.1.dist-info/METADATA +0 -373
  107. /runbooks/{aws → operate}/tags.json +0 -0
  108. /runbooks/{security_baseline → remediation/Tests}/__init__.py +0 -0
  109. /runbooks/{security_baseline → security}/checklist/__init__.py +0 -0
  110. /runbooks/{security_baseline → security}/checklist/account_level_bucket_public_access.py +0 -0
  111. /runbooks/{security_baseline → security}/checklist/alternate_contacts.py +0 -0
  112. /runbooks/{security_baseline → security}/checklist/bucket_public_access.py +0 -0
  113. /runbooks/{security_baseline → security}/checklist/cloudwatch_alarm_configuration.py +0 -0
  114. /runbooks/{security_baseline → security}/checklist/direct_attached_policy.py +0 -0
  115. /runbooks/{security_baseline → security}/checklist/guardduty_enabled.py +0 -0
  116. /runbooks/{security_baseline → security}/checklist/iam_password_policy.py +0 -0
  117. /runbooks/{security_baseline → security}/checklist/iam_user_mfa.py +0 -0
  118. /runbooks/{security_baseline → security}/checklist/multi_region_instance_usage.py +0 -0
  119. /runbooks/{security_baseline → security}/checklist/multi_region_trail.py +0 -0
  120. /runbooks/{security_baseline → security}/checklist/root_access_key.py +0 -0
  121. /runbooks/{security_baseline → security}/checklist/root_mfa.py +0 -0
  122. /runbooks/{security_baseline → security}/checklist/root_usage.py +0 -0
  123. /runbooks/{security_baseline → security}/checklist/trail_enabled.py +0 -0
  124. /runbooks/{security_baseline → security}/checklist/trusted_advisor.py +0 -0
  125. /runbooks/{security_baseline → security}/config-origin.json +0 -0
  126. /runbooks/{security_baseline → security}/config.json +0 -0
  127. /runbooks/{security_baseline → security}/permission.json +0 -0
  128. /runbooks/{security_baseline → security}/report_generator.py +0 -0
  129. /runbooks/{security_baseline → security}/report_template_en.html +0 -0
  130. /runbooks/{security_baseline → security}/report_template_jp.html +0 -0
  131. /runbooks/{security_baseline → security}/report_template_kr.html +0 -0
  132. /runbooks/{security_baseline → security}/report_template_vn.html +0 -0
  133. /runbooks/{security_baseline → security}/run_script.py +0 -0
  134. /runbooks/{security_baseline → security}/utils/__init__.py +0 -0
  135. /runbooks/{security_baseline → security}/utils/common.py +0 -0
  136. /runbooks/{security_baseline → security}/utils/enums.py +0 -0
  137. /runbooks/{security_baseline → security}/utils/language.py +0 -0
  138. /runbooks/{security_baseline → security}/utils/level_const.py +0 -0
  139. /runbooks/{security_baseline → security}/utils/permission_list.py +0 -0
  140. {runbooks-0.6.1.dist-info → runbooks-0.7.5.dist-info}/WHEEL +0 -0
  141. {runbooks-0.6.1.dist-info → runbooks-0.7.5.dist-info}/licenses/LICENSE +0 -0
  142. {runbooks-0.6.1.dist-info → runbooks-0.7.5.dist-info}/top_level.txt +0 -0
@@ -1,373 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: runbooks
3
- Version: 0.6.1
4
- Summary: CloudOps Automation Toolkit with Enhanced Cloud Foundations Assessment for DevOps and SRE teams.
5
- Author-email: Maintainers <nnthanh101@gmail.com>
6
- License-Expression: Apache-2.0
7
- Project-URL: Homepage, https://cloudops.oceansoft.io
8
- Project-URL: Repository, https://github.com/1xOps/CloudOps-Runbooks
9
- Project-URL: Documentation, https://cloudops.oceansoft.io/runbooks/
10
- Project-URL: Issues, https://github.com/1xOps/CloudOps-Runbooks/issues
11
- Project-URL: Changelog, https://github.com/1xOps/CloudOps-Runbooks/blob/main/CHANGELOG.md
12
- Keywords: runbooks,automation,DevOps,SRE,CloudOps,AWS,cloud-foundations,FinOps
13
- Classifier: Development Status :: 5 - Production/Stable
14
- Classifier: Environment :: Console
15
- Classifier: Operating System :: OS Independent
16
- Classifier: Programming Language :: Python :: 3
17
- Classifier: Programming Language :: Python :: 3.11
18
- Classifier: Programming Language :: Python :: 3.12
19
- Classifier: Programming Language :: Python :: 3.13
20
- Classifier: Topic :: System :: Systems Administration
21
- Classifier: Topic :: Software Development :: Libraries :: Python Modules
22
- Classifier: Topic :: Utilities
23
- Requires-Python: <3.14,>=3.11
24
- Description-Content-Type: text/markdown
25
- License-File: LICENSE
26
- Requires-Dist: boto3>=1.40.3
27
- Requires-Dist: botocore>=1.40.3
28
- Requires-Dist: diagrams>=0.24.4
29
- Requires-Dist: click>=8.2.1
30
- Requires-Dist: pydantic>=2.10.0
31
- Requires-Dist: jinja2>=3.1.4
32
- Requires-Dist: werkzeug>=3.1.0
33
- Requires-Dist: markdown>=3.7.0
34
- Requires-Dist: prettytable>=3.16.0
35
- Requires-Dist: simplejson>=3.20.1
36
- Requires-Dist: python-dateutil>=2.9.0
37
- Requires-Dist: loguru>=0.7.3
38
- Requires-Dist: tqdm>=4.67.1
39
- Requires-Dist: rich>=14.0.0
40
- Requires-Dist: reportlab>=3.6.1
41
- Requires-Dist: requests>=2.32.0
42
- Requires-Dist: packaging>=21.0
43
- Requires-Dist: pyyaml>=6.0.2
44
- Dynamic: license-file
45
-
46
- # 🚀 CloudOps Runbooks - Enterprise AWS Automation Toolkit
47
-
48
- [![PyPI Version](https://img.shields.io/pypi/v/runbooks)](https://pypi.org/project/runbooks/)
49
- [![Python Support](https://img.shields.io/pypi/pyversions/runbooks)](https://pypi.org/project/runbooks/)
50
- [![License](https://img.shields.io/pypi/l/runbooks)](https://opensource.org/licenses/Apache-2.0)
51
- [![Documentation](https://img.shields.io/badge/docs-latest-brightgreen)](https://cloudops.oceansoft.io/runbooks/)
52
- [![CI/CD](https://img.shields.io/github/actions/workflow/status/1xOps/CloudOps-Runbooks/ci.yml?branch=main)](https://github.com/1xOps/CloudOps-Runbooks/actions)
53
- [![Code style: ruff](https://img.shields.io/badge/code%20style-ruff-000000.svg)](https://github.com/astral-sh/ruff)
54
- [![Type Checked: mypy](https://img.shields.io/badge/type%20checked-mypy-blue.svg)](https://mypy-lang.org/)
55
- [![Tests: pytest](https://img.shields.io/badge/tests-pytest-green.svg)](https://pytest.org/)
56
-
57
- > **Enterprise-grade AWS automation toolkit for cloud operations (SRE and DevOps teams) at scale**
58
-
59
- CloudOps Runbooks provides comprehensive AWS resource discovery, inventory management, and automation capabilities with enterprise-grade architecture, type safety, and validation.
60
-
61
-
62
- ## 🚀 Overview
63
-
64
- CloudOps Runbooks is a production-ready AWS automation framework that combines traditional scripting excellence with modern AI orchestration. Designed for enterprises managing complex multi-account AWS environments, it delivers comprehensive discovery, intelligent analysis, and automated remediation across 50+ AWS services.
65
-
66
- > Why CloudOps Runbooks?
67
-
68
- - **🎯 Proven in Production**: Deployed across enterprises managing 50+ AWS accounts
69
- - **🤖 AI-Ready Architecture**: Native integration with AI-Agents and MCP-servers
70
- - **⚡ Blazing Fast**: Parallel execution reducing discovery time by 60%
71
- - **🔒 Enterprise Security**: Zero-trust validation, compliance automation, and audit trails
72
- - **💰 Cost Intelligence**: Identifies 25-50% optimization opportunities automatically
73
- - **🏗️ AWS Landing Zone Native**: Purpose-built for Multi-Organizations Landing Zone
74
-
75
- ## 🌟 Key Features
76
-
77
- ### 🔍 **Comprehensive AWS Discovery**
78
- - **Multi-Account Inventory**: Seamless discover resources (EC2, RDS, Lambda, ECS, S3, IAM, and more) across entire AWS Organizations
79
- - **Cross-Region Support**: Parallel scanning of all available AWS regions
80
- - **Resource Coverage**: 50+ AWS resource types across all major services
81
- - **Real-time Collection**: Concurrent collection with progress tracking
82
-
83
- ### 🏗️ **Enterprise Architecture**
84
- - **Type Safety**: Full Pydantic V2 models with runtime validation
85
- - **Modular Design**: Service-specific collectors with common interfaces
86
- - **Extensibility**: Easy to add new collectors and resource types
87
- - **Error Handling**: Comprehensive error tracking and retry logic
88
-
89
-
90
- ### Hybrid Intelligence Integration
91
-
92
- - **MCP Server Integration**: Real-time AWS API access without custom code
93
- - **AI Agent Orchestration**: AI-powered analysis and recommendations
94
- - **Evidence Pipeline**: Unified data normalization and correlation
95
- - **Intelligent Prioritization**: ML-based resource targeting
96
-
97
- ### 💰 **Cost Integration**
98
- - **Cost Estimation**: Automatic cost calculations for billable resources
99
- - **Cost Analytics**: Cost breakdown by service, account, and region
100
- - **Budget Tracking**: Resource cost monitoring and alerting
101
-
102
- ### 📊 **Multiple Output Formats**
103
- - **Structured Data**: JSON, CSV, Excel, Parquet
104
- - **Visual Reports**: HTML reports with charts and graphs
105
- - **Console Output**: Rich table formatting with colors
106
- - **API Integration**: REST API for programmatic access
107
-
108
- ### 🔒 **Security & Compliance**
109
- - **IAM Integration**: Role-based access control
110
- - **Audit Logging**: Comprehensive operation logging
111
- - **Encryption**: Secure credential management
112
- - **Compliance Reports**: Security and compliance validation
113
-
114
- ## 🚀 Quick Start Excellence: Progressive Examples
115
-
116
- ### 📦 Installation
117
-
118
- ```bash
119
- # Install using UV (recommended for speed and reliability)
120
- uv add runbooks
121
-
122
- # Or using pip
123
- pip install runbooks
124
-
125
- # Development installation
126
- git clone https://github.com/1xOps/CloudOps-Runbooks.git
127
- cd CloudOps-Runbooks
128
- uv sync --all-extras --dev
129
- ```
130
-
131
- ### 🔰 Level 1: Basic Single Account Discovery
132
-
133
- **Goal**: Discover EC2 instances in your current AWS account
134
-
135
- ```bash
136
- # Set up your AWS credentials
137
- export AWS_PROFILE="your-aws-profile"
138
- aws sts get-caller-identity # Verify access
139
-
140
- # Basic EC2 instance discovery
141
- cd CloudOps-Runbooks
142
- python src/runbooks/inventory/list_ec2_instances.py --profile $AWS_PROFILE --regions us-east-1 --timing
143
-
144
- # Example output:
145
- # Finding instances from 1 locations: 100%|██████████| 1/1 [00:02<00:00, 2.43 locations/s]
146
- # Found 12 instances across 1 account across 1 region
147
- # This script completed in 3.45 seconds
148
- ```
149
-
150
- ### 🏃 Level 2: Multi-Service Resource Discovery
151
-
152
- **Goal**: Discover multiple AWS resource types efficiently
153
-
154
- ```bash
155
- # EBS Volumes with orphan detection
156
- python src/runbooks/inventory/list_ec2_ebs_volumes.py --profile $AWS_PROFILE --regions ap-southeast-2 --timing
157
-
158
- # Lambda Functions with cost analysis
159
- python src/runbooks/inventory/list_lambda_functions.py --profile $AWS_PROFILE --regions ap-southeast-2
160
-
161
- # RDS Instances across multiple regions
162
- python src/runbooks/inventory/list_rds_db_instances.py --profile $AWS_PROFILE --regions us-east-1,eu-west-1,ap-southeast-2
163
-
164
- # Security Groups analysis
165
- python src/runbooks/inventory/find_ec2_security_groups.py --profile $AWS_PROFILE --regions us-east-1 --defaults
166
- ```
167
-
168
- ### 🏢 Level 3: Enterprise Multi-Account Operations
169
-
170
- **Goal**: Organization-wide resource discovery and compliance
171
-
172
- ```bash
173
- # Comprehensive inventory across AWS Organizations
174
- python src/runbooks/inventory/list_org_accounts.py --profile $AWS_PROFILE
175
-
176
- # Multi-account CloudFormation stack discovery
177
- python src/runbooks/inventory/list_cfn_stacks.py --profile $AWS_PROFILE --regions ap-southeast-2 --timing
178
-
179
- # Organization-wide GuardDuty detector inventory
180
- python src/runbooks/inventory/list_guardduty_detectors.py --profile $AWS_PROFILE --regions ap-southeast-2
181
-
182
- # CloudTrail compliance validation
183
- python src/runbooks/inventory/check_cloudtrail_compliance.py --profile $AWS_PROFILE --regions ap-southeast-2 --timing
184
- ```
185
-
186
- ### 🚀 Level 4: Autonomous Testing Framework
187
-
188
- **Goal**: Automated testing and validation of entire inventory suite
189
-
190
- ```bash
191
- # Test individual script
192
- ./src/runbooks/inventory/inventory.sh list_ec2_instances.py --profile $AWS_PROFILE --regions ap-southeast-2 --timing
193
-
194
- # Test specific script category with detailed analysis
195
- ./src/runbooks/inventory/inventory.sh list_ec2_ebs_volumes.py --profile $AWS_PROFILE --regions ap-southeast-2 --timing
196
-
197
- # Full autonomous test suite (20+ core scripts)
198
- ./src/runbooks/inventory/inventory.sh all --profile $AWS_PROFILE --regions ap-southeast-2 --timing
199
-
200
- # Review test results and analysis
201
- ls test_logs_*/
202
- cat test_logs_*/test_execution.log
203
- ```
204
-
205
- ### 🔬 Level 5: Advanced Integration & Analysis
206
-
207
- **Goal**: Production-grade automation with comprehensive reporting
208
-
209
- ```bash
210
- # 1. VPC Network Discovery with Subnet Analysis
211
- python src/runbooks/inventory/list_vpc_subnets.py --profile $AWS_PROFILE --regions ap-southeast-2 --timing
212
- python src/runbooks/inventory/list_vpcs.py --profile $AWS_PROFILE --regions ap-southeast-2
213
-
214
- # 2. Load Balancer Infrastructure Mapping
215
- python src/runbooks/inventory/list_elbs_load_balancers.py --profile $AWS_PROFILE --regions ap-southeast-2 --timing
216
-
217
- # 3. IAM Security Posture Assessment
218
- python src/runbooks/inventory/list_iam_roles.py --profile $AWS_PROFILE --timing
219
- python src/runbooks/inventory/list_iam_policies.py --profile $AWS_PROFILE --timing
220
-
221
- # 4. ECS Container Platform Discovery
222
- python src/runbooks/inventory/list_ecs_clusters_and_tasks.py --profile $AWS_PROFILE --regions ap-southeast-2 --timing
223
-
224
- # 5. Network Interface and ENI Analysis
225
- python src/runbooks/inventory/list_enis_network_interfaces.py --profile $AWS_PROFILE --regions ap-southeast-2 --timing
226
- ```
227
-
228
- ### 🎯 Level 6: Specialized Operations
229
-
230
- **Goal**: Advanced scenarios for specific use cases
231
-
232
- ```bash
233
- # 1. Landing Zone Readiness Assessment
234
- python src/runbooks/inventory/check_landingzone_readiness.py --profile $AWS_PROFILE
235
-
236
- # 2. CloudFormation Drift Detection
237
- python src/runbooks/inventory/find_cfn_drift_detection.py --profile $AWS_PROFILE --regions ap-southeast-2
238
-
239
- # 3. Organizations Structure Analysis
240
- python src/runbooks/inventory/list_org_accounts_users.py --profile $AWS_PROFILE --timing
241
-
242
- # 4. Config Compliance Monitoring
243
- python src/runbooks/inventory/list_config_recorders_delivery_channels.py --profile $AWS_PROFILE --regions ap-southeast-2
244
-
245
- # 5. Route53 DNS Infrastructure
246
- python src/runbooks/inventory/list_route53_hosted_zones.py --profile $AWS_PROFILE --timing
247
- ```
248
-
249
- ### 📊 Integration Examples
250
-
251
- **Modern Architecture Integration:**
252
-
253
- ```python
254
- # collectors/ and core/ directories provide modern modular architecture
255
- from runbooks.inventory.collectors.aws_compute import ComputeCollector
256
- from runbooks.inventory.core.collector import InventoryCollector
257
- from runbooks.inventory.core.formatter import OutputFormatter
258
-
259
- # Enterprise-grade type-safe collection
260
- collector = InventoryCollector(profile='production')
261
- results = collector.collect_compute_resources(include_costs=True)
262
- formatter = OutputFormatter()
263
- report = formatter.generate_html_report(results)
264
- ```
265
-
266
- ### 📈 Performance & Success Metrics
267
-
268
- **Test Suite Results (Latest):**
269
- - ✅ **20/43 core scripts passing** (47% success rate)
270
- - ⚡ **Average execution time**: 8-12 seconds per script
271
- - 🔧 **Known issues**: 4 scripts with permissions issues, 19 with parameter dependencies
272
- - 📋 **Excluded scripts**: 20 utility/support modules (correct exclusion)
273
- - 🏗️ **Architecture**: Modern modular design with collectors/ and core/ directories
274
-
275
- ## 📋 Architecture Overview
276
-
277
- ### 🏗️ **Module Structure**
278
-
279
- ```
280
- src/runbooks/inventory/
281
- ├── 🧠 core/ # Business Logic
282
- │ ├── collector.py # Main orchestration engine
283
- │ ├── formatter.py # Multi-format output handling
284
- │ └── session_manager.py # AWS session management
285
- ├── 🔧 collectors/ # Resource Specialists
286
- │ ├── base.py # Abstract base collector
287
- │ ├── aws_compute.py # EC2, Lambda, ECS, Batch
288
- │ ├── aws_storage.py # S3, EBS, EFS, FSx
289
- │ ├── aws_database.py # RDS, DynamoDB, ElastiCache
290
- │ ├── aws_network.py # VPC, ELB, Route53, CloudFront
291
- │ ├── aws_security.py # IAM, GuardDuty, Config, WAF
292
- │ └── aws_management.py # CloudFormation, Organizations
293
- ├── 📊 models/ # Data Structures
294
- │ ├── account.py # AWS account representation
295
- │ ├── resource.py # Resource models with metadata
296
- │ └── inventory.py # Collection results and analytics
297
- ├── 🛠️ utils/ # Shared Utilities
298
- │ ├── aws_helpers.py # AWS session and API utilities
299
- │ ├── threading_utils.py # Concurrent execution helpers
300
- │ └── validation.py # Input validation and sanitization
301
- └── 📜 legacy/ # Migration Support
302
- └── migration_guide.md # Legacy script migration guide
303
- ```
304
-
305
- ## 🧪 Testing & Development
306
-
307
- ### Running Tests
308
-
309
- ```bash
310
- # Run full test suite
311
- task test
312
-
313
- # Run specific test categories
314
- pytest tests/unit/test_inventory.py -v
315
- pytest tests/integration/test_collectors.py -v
316
-
317
- # Test with coverage
318
- task _test.coverage
319
-
320
- # Test inventory module specifically
321
- task inventory.test
322
- ```
323
-
324
- ### Development Workflow
325
-
326
- ```bash
327
- # Install development dependencies
328
- task install
329
-
330
- # Code quality checks
331
- task code_quality
332
-
333
- # Validate module structure
334
- task inventory.validate
335
-
336
- # Full validation workflow
337
- task validate
338
- ```
339
-
340
- ## 📚 Documentation
341
-
342
- - [API Reference](docs/api-reference.md)
343
- - [Configuration Guide](docs/configuration.md)
344
- - [Migration Guide](src/runbooks/inventory/legacy/migration_guide.md)
345
- - [Contributing Guide](CONTRIBUTING.md)
346
-
347
-
348
- ## 🚦 Roadmap
349
-
350
- - **v1.0** (Q4 2025): Enhanced AI agent orchestration
351
- - **v1.5** (Q1 2026): Self-healing infrastructure capabilities
352
-
353
- ## 📝 License
354
-
355
- This project is licensed under the Apache License 2.0 - see the [LICENSE](LICENSE) file for details.
356
-
357
- ## 🆘 Support
358
-
359
- ### Community
360
- - [GitHub Issues](https://github.com/1xOps/CloudOps-Runbooks/issues)
361
- - [Discussions](https://github.com/1xOps/CloudOps-Runbooks/discussions)
362
-
363
- ### Enterprise Support
364
- - Professional services and training available
365
- - Custom collector development
366
- - Enterprise deployment assistance
367
- - Contact: [info@oceansoft.io](mailto:info@oceansoft.io)
368
-
369
- ---
370
-
371
- **Built with ❤️ by the xOps team at OceanSoft**
372
-
373
- [Website](https://cloudops.oceansoft.io) • [Documentation](https://cloudops.oceansoft.io/runbooks/) • [GitHub](https://github.com/1xOps/CloudOps-Runbooks)
File without changes
File without changes
File without changes
File without changes