runbooks 0.7.0__tar.gz → 0.7.6__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.
Files changed (334) hide show
  1. runbooks-0.7.6/PKG-INFO +608 -0
  2. runbooks-0.7.6/README.md +559 -0
  3. {runbooks-0.7.0 → runbooks-0.7.6}/pyproject.toml +66 -34
  4. runbooks-0.7.6/src/runbooks/__init__.py +125 -0
  5. runbooks-0.7.6/src/runbooks/cfat/README.md +300 -0
  6. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/__init__.py +2 -2
  7. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/finops/__init__.py +1 -1
  8. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/finops/cli.py +1 -1
  9. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/collectors/__init__.py +8 -0
  10. runbooks-0.7.6/src/runbooks/inventory/collectors/aws_management.py +791 -0
  11. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/collectors/aws_networking.py +3 -3
  12. runbooks-0.7.6/src/runbooks/main.py +3611 -0
  13. runbooks-0.7.6/src/runbooks/operate/__init__.py +207 -0
  14. runbooks-0.7.6/src/runbooks/operate/base.py +311 -0
  15. runbooks-0.7.6/src/runbooks/operate/cloudformation_operations.py +619 -0
  16. runbooks-0.7.6/src/runbooks/operate/cloudwatch_operations.py +496 -0
  17. runbooks-0.7.6/src/runbooks/operate/dynamodb_operations.py +812 -0
  18. runbooks-0.7.6/src/runbooks/operate/ec2_operations.py +926 -0
  19. runbooks-0.7.6/src/runbooks/operate/iam_operations.py +569 -0
  20. runbooks-0.7.6/src/runbooks/operate/s3_operations.py +1211 -0
  21. runbooks-0.7.6/src/runbooks/operate/tagging_operations.py +655 -0
  22. runbooks-0.7.6/src/runbooks/remediation/CLAUDE.md +100 -0
  23. runbooks-0.7.6/src/runbooks/remediation/DOME9.md +218 -0
  24. runbooks-0.7.6/src/runbooks/remediation/README.md +26 -0
  25. runbooks-0.7.6/src/runbooks/remediation/Tests/update_policy.py +74 -0
  26. runbooks-0.7.6/src/runbooks/remediation/__init__.py +95 -0
  27. runbooks-0.7.6/src/runbooks/remediation/acm_cert_expired_unused.py +98 -0
  28. runbooks-0.7.6/src/runbooks/remediation/acm_remediation.py +875 -0
  29. runbooks-0.7.6/src/runbooks/remediation/api_gateway_list.py +167 -0
  30. runbooks-0.7.6/src/runbooks/remediation/base.py +643 -0
  31. runbooks-0.7.6/src/runbooks/remediation/cloudtrail_remediation.py +908 -0
  32. runbooks-0.7.6/src/runbooks/remediation/cloudtrail_s3_modifications.py +296 -0
  33. runbooks-0.7.6/src/runbooks/remediation/cognito_active_users.py +78 -0
  34. runbooks-0.7.6/src/runbooks/remediation/cognito_remediation.py +856 -0
  35. runbooks-0.7.6/src/runbooks/remediation/cognito_user_password_reset.py +163 -0
  36. runbooks-0.7.6/src/runbooks/remediation/commons.py +455 -0
  37. runbooks-0.7.6/src/runbooks/remediation/dynamodb_optimize.py +155 -0
  38. runbooks-0.7.6/src/runbooks/remediation/dynamodb_remediation.py +744 -0
  39. runbooks-0.7.6/src/runbooks/remediation/dynamodb_server_side_encryption.py +108 -0
  40. runbooks-0.7.6/src/runbooks/remediation/ec2_public_ips.py +134 -0
  41. runbooks-0.7.6/src/runbooks/remediation/ec2_remediation.py +892 -0
  42. runbooks-0.7.6/src/runbooks/remediation/ec2_subnet_disable_auto_ip_assignment.py +72 -0
  43. runbooks-0.7.6/src/runbooks/remediation/ec2_unattached_ebs_volumes.py +448 -0
  44. runbooks-0.7.6/src/runbooks/remediation/ec2_unused_security_groups.py +202 -0
  45. runbooks-0.7.6/src/runbooks/remediation/kms_enable_key_rotation.py +651 -0
  46. runbooks-0.7.6/src/runbooks/remediation/kms_remediation.py +717 -0
  47. runbooks-0.7.6/src/runbooks/remediation/lambda_list.py +243 -0
  48. runbooks-0.7.6/src/runbooks/remediation/lambda_remediation.py +971 -0
  49. runbooks-0.7.6/src/runbooks/remediation/multi_account.py +569 -0
  50. runbooks-0.7.6/src/runbooks/remediation/rds_instance_list.py +199 -0
  51. runbooks-0.7.6/src/runbooks/remediation/rds_remediation.py +873 -0
  52. runbooks-0.7.6/src/runbooks/remediation/rds_snapshot_list.py +192 -0
  53. runbooks-0.7.6/src/runbooks/remediation/requirements.txt +118 -0
  54. runbooks-0.7.6/src/runbooks/remediation/s3_block_public_access.py +159 -0
  55. runbooks-0.7.6/src/runbooks/remediation/s3_bucket_public_access.py +143 -0
  56. runbooks-0.7.6/src/runbooks/remediation/s3_disable_static_website_hosting.py +74 -0
  57. runbooks-0.7.6/src/runbooks/remediation/s3_downloader.py +215 -0
  58. runbooks-0.7.6/src/runbooks/remediation/s3_enable_access_logging.py +562 -0
  59. runbooks-0.7.6/src/runbooks/remediation/s3_encryption.py +526 -0
  60. runbooks-0.7.6/src/runbooks/remediation/s3_force_ssl_secure_policy.py +143 -0
  61. runbooks-0.7.6/src/runbooks/remediation/s3_list.py +141 -0
  62. runbooks-0.7.6/src/runbooks/remediation/s3_object_search.py +201 -0
  63. runbooks-0.7.6/src/runbooks/remediation/s3_remediation.py +816 -0
  64. runbooks-0.7.6/src/runbooks/remediation/scan_for_phrase.py +425 -0
  65. runbooks-0.7.6/src/runbooks/remediation/workspaces_list.py +220 -0
  66. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/__init__.py +9 -10
  67. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/security_baseline_tester.py +4 -2
  68. runbooks-0.7.6/src/runbooks.egg-info/PKG-INFO +608 -0
  69. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks.egg-info/SOURCES.txt +68 -79
  70. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks.egg-info/entry_points.txt +0 -1
  71. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks.egg-info/requires.txt +2 -0
  72. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks.egg-info/top_level.txt +0 -1
  73. runbooks-0.7.0/.actrc +0 -6
  74. runbooks-0.7.0/.gitignore +0 -201
  75. runbooks-0.7.0/.gitmodules +0 -3
  76. runbooks-0.7.0/.pre-commit-config.yaml +0 -10
  77. runbooks-0.7.0/.python-version +0 -1
  78. runbooks-0.7.0/CHANGELOG.md +0 -38
  79. runbooks-0.7.0/PKG-INFO +0 -375
  80. runbooks-0.7.0/Quickstart.md +0 -36
  81. runbooks-0.7.0/README.docs.md +0 -19
  82. runbooks-0.7.0/README.md +0 -328
  83. runbooks-0.7.0/Taskfile.yaml +0 -750
  84. runbooks-0.7.0/docker-build-push.sh +0 -64
  85. runbooks-0.7.0/execute_landing_page.py +0 -181
  86. runbooks-0.7.0/output/dev/landing-page/css/styles.css +0 -551
  87. runbooks-0.7.0/output/dev/landing-page/index.html +0 -178
  88. runbooks-0.7.0/output/dev/landing-page/js/main.js +0 -100
  89. runbooks-0.7.0/reports/.gitkeep +0 -0
  90. runbooks-0.7.0/reports/figures/.gitkeep +0 -0
  91. runbooks-0.7.0/src/jupyter-agent/.env +0 -2
  92. runbooks-0.7.0/src/jupyter-agent/.env.template +0 -2
  93. runbooks-0.7.0/src/jupyter-agent/.gitattributes +0 -35
  94. runbooks-0.7.0/src/jupyter-agent/.gradio/certificate.pem +0 -31
  95. runbooks-0.7.0/src/jupyter-agent/README.md +0 -16
  96. runbooks-0.7.0/src/jupyter-agent/__main__.log +0 -8
  97. runbooks-0.7.0/src/jupyter-agent/app.py +0 -256
  98. runbooks-0.7.0/src/jupyter-agent/cloudops-agent.png +0 -0
  99. runbooks-0.7.0/src/jupyter-agent/ds-system-prompt.txt +0 -154
  100. runbooks-0.7.0/src/jupyter-agent/jupyter-agent.png +0 -0
  101. runbooks-0.7.0/src/jupyter-agent/llama3_template.jinja +0 -123
  102. runbooks-0.7.0/src/jupyter-agent/requirements.txt +0 -9
  103. runbooks-0.7.0/src/jupyter-agent/tmp/4ojbs8a02ir/jupyter-agent.ipynb +0 -68
  104. runbooks-0.7.0/src/jupyter-agent/tmp/cm5iasgpm3p/jupyter-agent.ipynb +0 -91
  105. runbooks-0.7.0/src/jupyter-agent/tmp/crqbsseag5/jupyter-agent.ipynb +0 -91
  106. runbooks-0.7.0/src/jupyter-agent/tmp/hohanq1u097/jupyter-agent.ipynb +0 -57
  107. runbooks-0.7.0/src/jupyter-agent/tmp/jns1sam29wm/jupyter-agent.ipynb +0 -53
  108. runbooks-0.7.0/src/jupyter-agent/tmp/jupyter-agent.ipynb +0 -27
  109. runbooks-0.7.0/src/jupyter-agent/utils.py +0 -409
  110. runbooks-0.7.0/src/main.python101.py +0 -115
  111. runbooks-0.7.0/src/runbooks/__init__.py +0 -75
  112. runbooks-0.7.0/src/runbooks/aws/__init__.py +0 -58
  113. runbooks-0.7.0/src/runbooks/aws/dynamodb_operations.py +0 -231
  114. runbooks-0.7.0/src/runbooks/aws/ec2_copy_image_cross-region.py +0 -195
  115. runbooks-0.7.0/src/runbooks/aws/ec2_describe_instances.py +0 -202
  116. runbooks-0.7.0/src/runbooks/aws/ec2_ebs_snapshots_delete.py +0 -186
  117. runbooks-0.7.0/src/runbooks/aws/ec2_run_instances.py +0 -213
  118. runbooks-0.7.0/src/runbooks/aws/ec2_start_stop_instances.py +0 -212
  119. runbooks-0.7.0/src/runbooks/aws/ec2_terminate_instances.py +0 -143
  120. runbooks-0.7.0/src/runbooks/aws/ec2_unused_eips.py +0 -196
  121. runbooks-0.7.0/src/runbooks/aws/ec2_unused_volumes.py +0 -188
  122. runbooks-0.7.0/src/runbooks/aws/s3_create_bucket.py +0 -142
  123. runbooks-0.7.0/src/runbooks/aws/s3_list_buckets.py +0 -152
  124. runbooks-0.7.0/src/runbooks/aws/s3_list_objects.py +0 -156
  125. runbooks-0.7.0/src/runbooks/aws/s3_object_operations.py +0 -183
  126. runbooks-0.7.0/src/runbooks/aws/tagging_lambda_handler.py +0 -183
  127. runbooks-0.7.0/src/runbooks/cfat/README.md +0 -49
  128. runbooks-0.7.0/src/runbooks/inventory/FAILED_SCRIPTS_TROUBLESHOOTING.md +0 -619
  129. runbooks-0.7.0/src/runbooks/inventory/PASSED_SCRIPTS_GUIDE.md +0 -738
  130. runbooks-0.7.0/src/runbooks/inventory/aws_organization.png +0 -0
  131. runbooks-0.7.0/src/runbooks/inventory/cfn_move_stack_instances.py +0 -1526
  132. runbooks-0.7.0/src/runbooks/inventory/delete_s3_buckets_objects.py +0 -169
  133. runbooks-0.7.0/src/runbooks/inventory/lockdown_cfn_stackset_role.py +0 -224
  134. runbooks-0.7.0/src/runbooks/inventory/update_aws_actions.py +0 -173
  135. runbooks-0.7.0/src/runbooks/inventory/update_cfn_stacksets.py +0 -1215
  136. runbooks-0.7.0/src/runbooks/inventory/update_cloudwatch_logs_retention_policy.py +0 -294
  137. runbooks-0.7.0/src/runbooks/inventory/update_iam_roles_cross_accounts.py +0 -478
  138. runbooks-0.7.0/src/runbooks/inventory/update_s3_public_access_block.py +0 -539
  139. runbooks-0.7.0/src/runbooks/main.py +0 -1004
  140. runbooks-0.7.0/src/runbooks/organizations/__init__.py +0 -12
  141. runbooks-0.7.0/src/runbooks/organizations/manager.py +0 -374
  142. runbooks-0.7.0/src/runbooks.egg-info/PKG-INFO +0 -375
  143. runbooks-0.7.0/uv.lock +0 -5257
  144. {runbooks-0.7.0 → runbooks-0.7.6}/LICENSE +0 -0
  145. {runbooks-0.7.0 → runbooks-0.7.6}/MANIFEST.in +0 -0
  146. {runbooks-0.7.0 → runbooks-0.7.6}/setup.cfg +0 -0
  147. {runbooks-0.7.0 → runbooks-0.7.6}/src/conftest.py +0 -0
  148. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/__main__.py +0 -0
  149. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/base.py +0 -0
  150. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/app.ts +0 -0
  151. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/assessment/__init__.py +0 -0
  152. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/assessment/asana-import.csv +0 -0
  153. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/assessment/cfat-checks.csv +0 -0
  154. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/assessment/cfat.txt +0 -0
  155. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/assessment/collectors.py +0 -0
  156. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/assessment/jira-import.csv +0 -0
  157. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/assessment/runner.py +0 -0
  158. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/assessment/validators.py +0 -0
  159. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/cli.py +0 -0
  160. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/docs/asana-import.csv +0 -0
  161. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/docs/cfat-checks.csv +0 -0
  162. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/docs/cfat.txt +0 -0
  163. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/docs/checks-output.png +0 -0
  164. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/docs/cloudshell-console-run.png +0 -0
  165. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/docs/cloudshell-download.png +0 -0
  166. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/docs/cloudshell-output.png +0 -0
  167. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/docs/downloadfile.png +0 -0
  168. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/docs/jira-import.csv +0 -0
  169. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/docs/open-cloudshell.png +0 -0
  170. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/docs/report-header.png +0 -0
  171. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/models.py +0 -0
  172. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/package-lock.json +0 -0
  173. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/package.json +0 -0
  174. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/report.py +0 -0
  175. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/reporting/__init__.py +0 -0
  176. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/reporting/exporters.py +0 -0
  177. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/reporting/formatters.py +0 -0
  178. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/reporting/templates.py +0 -0
  179. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/run-assessment.sh +0 -0
  180. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/runner.py +0 -0
  181. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/check-cloudtrail-existence.ts +0 -0
  182. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/check-config-existence.ts +0 -0
  183. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/check-control-tower.ts +0 -0
  184. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/check-ec2-existence.ts +0 -0
  185. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/check-iam-users.ts +0 -0
  186. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/check-legacy-cur.ts +0 -0
  187. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/check-org-cloudformation.ts +0 -0
  188. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/check-vpc-existence.ts +0 -0
  189. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/create-asanaimport.ts +0 -0
  190. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/create-backlog.ts +0 -0
  191. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/create-jiraimport.ts +0 -0
  192. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/create-report.ts +0 -0
  193. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/define-account-type.ts +0 -0
  194. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/get-enabled-org-policy-types.ts +0 -0
  195. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/get-enabled-org-services.ts +0 -0
  196. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/get-idc-info.ts +0 -0
  197. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/get-org-da-accounts.ts +0 -0
  198. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/get-org-details.ts +0 -0
  199. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/get-org-member-accounts.ts +0 -0
  200. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/get-org-ous.ts +0 -0
  201. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/get-regions.ts +0 -0
  202. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/actions/zip-assessment.ts +0 -0
  203. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/src/types/index.d.ts +0 -0
  204. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/tests/__init__.py +0 -0
  205. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/tests/test_cli.py +0 -0
  206. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/tests/test_integration.py +0 -0
  207. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/tests/test_models.py +0 -0
  208. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/tests/test_reporting.py +0 -0
  209. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/tsconfig.json +0 -0
  210. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/cfat/webpack.config.cjs +0 -0
  211. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/config.py +0 -0
  212. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/finops/README.md +0 -0
  213. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/finops/aws_client.py +0 -0
  214. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/finops/cost_processor.py +0 -0
  215. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/finops/dashboard_runner.py +0 -0
  216. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/finops/helpers.py +0 -0
  217. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/finops/main.py +0 -0
  218. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/finops/profile_processor.py +0 -0
  219. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/finops/types.py +0 -0
  220. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/finops/visualisations.py +0 -0
  221. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/.gitignore +0 -0
  222. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/ArgumentsClass.py +0 -0
  223. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/LandingZone/delete_lz.py +0 -0
  224. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/README.md +0 -0
  225. {runbooks-0.7.0/src/runbooks/inventory/tests → runbooks-0.7.6/src/runbooks/inventory/Tests}/common_test_data.py +0 -0
  226. {runbooks-0.7.0/src/runbooks/inventory/tests → runbooks-0.7.6/src/runbooks/inventory/Tests}/common_test_functions.py +0 -0
  227. {runbooks-0.7.0/src/runbooks/inventory/tests → runbooks-0.7.6/src/runbooks/inventory/Tests}/script_test_data.py +0 -0
  228. {runbooks-0.7.0/src/runbooks/inventory/tests → runbooks-0.7.6/src/runbooks/inventory/Tests}/setup.py +0 -0
  229. {runbooks-0.7.0/src/runbooks/inventory/tests → runbooks-0.7.6/src/runbooks/inventory/Tests}/src.py +0 -0
  230. /runbooks-0.7.0/src/runbooks/inventory/tests/test_inventory_modules.py → /runbooks-0.7.6/src/runbooks/inventory/Tests/test_Inventory_Modules.py +0 -0
  231. {runbooks-0.7.0/src/runbooks/inventory/tests → runbooks-0.7.6/src/runbooks/inventory/Tests}/test_cfn_describe_stacks.py +0 -0
  232. {runbooks-0.7.0/src/runbooks/inventory/tests → runbooks-0.7.6/src/runbooks/inventory/Tests}/test_ec2_describe_instances.py +0 -0
  233. {runbooks-0.7.0/src/runbooks/inventory/tests → runbooks-0.7.6/src/runbooks/inventory/Tests}/test_lambda_list_functions.py +0 -0
  234. {runbooks-0.7.0/src/runbooks/inventory/tests → runbooks-0.7.6/src/runbooks/inventory/Tests}/test_moto_integration_example.py +0 -0
  235. {runbooks-0.7.0/src/runbooks/inventory/tests → runbooks-0.7.6/src/runbooks/inventory/Tests}/test_org_list_accounts.py +0 -0
  236. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/__init__.py +0 -0
  237. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/account_class.py +0 -0
  238. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/all_my_instances_wrapper.py +0 -0
  239. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/aws_decorators.py +0 -0
  240. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/check_cloudtrail_compliance.py +0 -0
  241. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/check_controltower_readiness.py +0 -0
  242. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/check_landingzone_readiness.py +0 -0
  243. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/cloudtrail.md +0 -0
  244. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/collectors/aws_compute.py +0 -0
  245. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/collectors/base.py +0 -0
  246. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/core/__init__.py +0 -0
  247. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/core/collector.py +0 -0
  248. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/core/formatter.py +0 -0
  249. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/discovery.md +0 -0
  250. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/draw_org_structure.py +0 -0
  251. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/ec2_vpc_utils.py +0 -0
  252. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/find_cfn_drift_detection.py +0 -0
  253. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/find_cfn_orphaned_stacks.py +0 -0
  254. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/find_cfn_stackset_drift.py +0 -0
  255. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/find_ec2_security_groups.py +0 -0
  256. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/find_landingzone_versions.py +0 -0
  257. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/find_vpc_flow_logs.py +0 -0
  258. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/inventory.sh +0 -0
  259. /runbooks-0.7.0/src/runbooks/inventory/Inventory_Modules.py → /runbooks-0.7.6/src/runbooks/inventory/inventory_modules.py +0 -0
  260. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_cfn_stacks.py +0 -0
  261. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_cfn_stackset_operation_results.py +0 -0
  262. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_cfn_stackset_operations.py +0 -0
  263. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_cfn_stacksets.py +0 -0
  264. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_config_recorders_delivery_channels.py +0 -0
  265. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_ds_directories.py +0 -0
  266. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_ec2_availability_zones.py +0 -0
  267. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_ec2_ebs_volumes.py +0 -0
  268. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_ec2_instances.py +0 -0
  269. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_ecs_clusters_and_tasks.py +0 -0
  270. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_elbs_load_balancers.py +0 -0
  271. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_enis_network_interfaces.py +0 -0
  272. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_guardduty_detectors.py +0 -0
  273. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_iam_policies.py +0 -0
  274. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_iam_roles.py +0 -0
  275. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_iam_saml_providers.py +0 -0
  276. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_lambda_functions.py +0 -0
  277. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_org_accounts.py +0 -0
  278. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_org_accounts_users.py +0 -0
  279. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_rds_db_instances.py +0 -0
  280. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_route53_hosted_zones.py +0 -0
  281. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_servicecatalog_provisioned_products.py +0 -0
  282. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_sns_topics.py +0 -0
  283. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_ssm_parameters.py +0 -0
  284. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_vpc_subnets.py +0 -0
  285. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/list_vpcs.py +0 -0
  286. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/models/__init__.py +0 -0
  287. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/models/account.py +0 -0
  288. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/models/inventory.py +0 -0
  289. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/models/resource.py +0 -0
  290. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/recover_cfn_stack_ids.py +0 -0
  291. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/requirements.txt +0 -0
  292. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/run_on_multi_accounts.py +0 -0
  293. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/utils/__init__.py +0 -0
  294. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/utils/aws_helpers.py +0 -0
  295. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/utils/threading_utils.py +0 -0
  296. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/utils/validation.py +0 -0
  297. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/inventory/verify_ec2_security_groups.py +0 -0
  298. {runbooks-0.7.0/src/runbooks/aws → runbooks-0.7.6/src/runbooks/operate}/tags.json +0 -0
  299. /runbooks-0.7.0/references/.gitkeep → /runbooks-0.7.6/src/runbooks/remediation/Tests/__init__.py +0 -0
  300. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/README.md +0 -0
  301. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/checklist/__init__.py +0 -0
  302. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/checklist/account_level_bucket_public_access.py +0 -0
  303. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/checklist/alternate_contacts.py +0 -0
  304. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/checklist/bucket_public_access.py +0 -0
  305. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/checklist/cloudwatch_alarm_configuration.py +0 -0
  306. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/checklist/direct_attached_policy.py +0 -0
  307. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/checklist/guardduty_enabled.py +0 -0
  308. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/checklist/iam_password_policy.py +0 -0
  309. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/checklist/iam_user_mfa.py +0 -0
  310. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/checklist/multi_region_instance_usage.py +0 -0
  311. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/checklist/multi_region_trail.py +0 -0
  312. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/checklist/root_access_key.py +0 -0
  313. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/checklist/root_mfa.py +0 -0
  314. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/checklist/root_usage.py +0 -0
  315. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/checklist/trail_enabled.py +0 -0
  316. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/checklist/trusted_advisor.py +0 -0
  317. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/config-origin.json +0 -0
  318. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/config.json +0 -0
  319. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/permission.json +0 -0
  320. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/report_generator.py +0 -0
  321. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/report_template_en.html +0 -0
  322. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/report_template_jp.html +0 -0
  323. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/report_template_kr.html +0 -0
  324. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/report_template_vn.html +0 -0
  325. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/run_script.py +0 -0
  326. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/utils/__init__.py +0 -0
  327. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/utils/common.py +0 -0
  328. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/utils/enums.py +0 -0
  329. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/utils/language.py +0 -0
  330. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/utils/level_const.py +0 -0
  331. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/security/utils/permission_list.py +0 -0
  332. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/utils/__init__.py +0 -0
  333. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks/utils/logger.py +0 -0
  334. {runbooks-0.7.0 → runbooks-0.7.6}/src/runbooks.egg-info/dependency_links.txt +0 -0
@@ -0,0 +1,608 @@
1
+ Metadata-Version: 2.4
2
+ Name: runbooks
3
+ Version: 0.7.6
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.35.40
27
+ Requires-Dist: botocore>=1.35.40
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: graphviz>=0.20.1
40
+ Requires-Dist: rich>=14.0.0
41
+ Requires-Dist: reportlab>=3.6.1
42
+ Requires-Dist: requests>=2.32.0
43
+ Requires-Dist: packaging>=21.0
44
+ Requires-Dist: pyyaml>=6.0.2
45
+ Requires-Dist: jmespath>=1.0.1
46
+ Requires-Dist: urllib3<1.27,>=1.26.18
47
+ Requires-Dist: mcp>=1.12.3
48
+ Dynamic: license-file
49
+
50
+ # 🚀 CloudOps Runbooks - Enterprise AWS Automation Toolkit
51
+
52
+ [![PyPI Version](https://img.shields.io/pypi/v/runbooks)](https://pypi.org/project/runbooks/)
53
+ [![Python Support](https://img.shields.io/pypi/pyversions/runbooks)](https://pypi.org/project/runbooks/)
54
+ [![License](https://img.shields.io/pypi/l/runbooks)](https://opensource.org/licenses/Apache-2.0)
55
+ [![Documentation](https://img.shields.io/badge/docs-latest-brightgreen)](https://cloudops.oceansoft.io/runbooks/)
56
+ [![CI/CD](https://img.shields.io/github/actions/workflow/status/1xOps/CloudOps-Runbooks/ci.yml?branch=main)](https://github.com/1xOps/CloudOps-Runbooks/actions)
57
+ [![Code style: ruff](https://img.shields.io/badge/code%20style-ruff-000000.svg)](https://github.com/astral-sh/ruff)
58
+ [![Type Checked: mypy](https://img.shields.io/badge/type%20checked-mypy-blue.svg)](https://mypy-lang.org/)
59
+ [![Tests: pytest](https://img.shields.io/badge/tests-pytest-green.svg)](https://pytest.org/)
60
+
61
+ > **Enterprise-grade AWS automation toolkit for cloud operations (SRE and DevOps teams) at scale**
62
+
63
+ CloudOps Runbooks provides comprehensive AWS resource discovery, inventory management, and automation capabilities with enterprise-grade architecture, type safety, and validation.
64
+
65
+
66
+ ## 🚀 Overview
67
+
68
+ 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.
69
+
70
+ > Why CloudOps Runbooks?
71
+
72
+ - **🎯 Proven in Production**: Deployed across enterprises managing 50+ AWS accounts
73
+ - **🤖 AI-Ready Architecture**: Native integration with AI-Agents and MCP-servers
74
+ - **⚡ Blazing Fast**: Parallel execution reducing discovery time by 60%
75
+ - **🔒 Enterprise Security**: Zero-trust validation, compliance automation, and audit trails
76
+ - **💰 Cost Intelligence**: Identifies 25-50% optimization opportunities automatically
77
+ - **🏗️ AWS Landing Zone Native**: Purpose-built for Multi-Organizations Landing Zone
78
+
79
+ ## 🌟 Key Features
80
+
81
+ ### 🔍 **Comprehensive AWS Discovery**
82
+ - **Multi-Account Inventory**: Seamless discover resources (EC2, RDS, Lambda, ECS, S3, IAM, and more) across entire AWS Organizations
83
+ - **Cross-Region Support**: Parallel scanning of all available AWS regions
84
+ - **Resource Coverage**: 50+ AWS resource types across all major services
85
+ - **Real-time Collection**: Concurrent collection with progress tracking
86
+
87
+ ### 🏗️ **Enterprise Architecture**
88
+ - **Type Safety**: Full Pydantic V2 models with runtime validation
89
+ - **Modular Design**: Service-specific collectors with common interfaces
90
+ - **Extensibility**: Easy to add new collectors and resource types
91
+ - **Error Handling**: Comprehensive error tracking and retry logic
92
+
93
+
94
+ ### Hybrid Intelligence Integration
95
+
96
+ - **MCP Server Integration**: Real-time AWS API access without custom code
97
+ - **AI Agent Orchestration**: AI-powered analysis and recommendations
98
+ - **Evidence Pipeline**: Unified data normalization and correlation
99
+ - **Intelligent Prioritization**: ML-based resource targeting
100
+
101
+ ### 💰 **Cost Integration**
102
+ - **Cost Estimation**: Automatic cost calculations for billable resources
103
+ - **Cost Analytics**: Cost breakdown by service, account, and region
104
+ - **Budget Tracking**: Resource cost monitoring and alerting
105
+
106
+ ### 📊 **Multiple Output Formats**
107
+ - **Structured Data**: JSON, CSV, Excel, Parquet
108
+ - **Visual Reports**: HTML reports with charts and graphs
109
+ - **Console Output**: Rich table formatting with colors
110
+ - **API Integration**: REST API for programmatic access
111
+
112
+ ### 🔒 **Security & Compliance**
113
+ - **IAM Integration**: Role-based access control
114
+ - **Audit Logging**: Comprehensive operation logging
115
+ - **Encryption**: Secure credential management
116
+ - **Compliance Reports**: Security and compliance validation
117
+
118
+ ## 🚀 Quick Start Excellence: Progressive Examples
119
+
120
+ ### 📦 Installation
121
+
122
+ ```bash
123
+ # Install using UV (recommended for speed and reliability)
124
+ uv add runbooks
125
+
126
+ # Or using pip
127
+ pip install runbooks
128
+
129
+ # Development installation
130
+ git clone https://github.com/1xOps/CloudOps-Runbooks.git
131
+ cd CloudOps-Runbooks
132
+ uv sync --all-extras --dev
133
+ ```
134
+
135
+ ### 🎯 **Modern CLI Commands Overview**
136
+
137
+ CloudOps Runbooks now provides enterprise-grade CLI commands for comprehensive AWS operations:
138
+
139
+ ```bash
140
+ # 🎯 STANDARDIZED CLI (Human & AI-Agent Friendly) v0.7.3
141
+ runbooks --help # Main CLI help
142
+ runbooks inventory collect # Read-only discovery & analysis
143
+ runbooks operate ec2 start # Resource lifecycle operations
144
+ runbooks cfat assess # Cloud Foundations Assessment
145
+ runbooks security assess # Security Baseline Testing
146
+ runbooks org list-ous # Organizations Management
147
+ runbooks finops dashboard # Cost and Usage Analytics
148
+
149
+ # 🤖 AI-Agent Optimized: Consistent options across all commands
150
+ # --profile, --region, --dry-run, --output, --force (where applicable)
151
+ ```
152
+
153
+ ### 🔰 Level 1: Basic Single Account Discovery
154
+
155
+ **Goal**: Discover EC2 instances in your current AWS account
156
+
157
+ ```bash
158
+ # Set up your AWS credentials
159
+ export AWS_PROFILE="your-aws-profile"
160
+ aws sts get-caller-identity # Verify access
161
+
162
+ # Basic EC2 instance discovery
163
+ cd CloudOps-Runbooks
164
+ python src/runbooks/inventory/list_ec2_instances.py --profile $AWS_PROFILE --regions us-east-1 --timing
165
+
166
+ # Example output:
167
+ # Finding instances from 1 locations: 100%|██████████| 1/1 [00:02<00:00, 2.43 locations/s]
168
+ # Found 12 instances across 1 account across 1 region
169
+ # This script completed in 3.45 seconds
170
+ ```
171
+
172
+ ### 🏃 Level 2: Multi-Service Resource Discovery
173
+
174
+ **Goal**: Discover multiple AWS resource types efficiently
175
+
176
+ ```bash
177
+ # EBS Volumes with orphan detection
178
+ python src/runbooks/inventory/list_ec2_ebs_volumes.py --profile $AWS_PROFILE --regions ap-southeast-2 --timing
179
+
180
+ # Lambda Functions with cost analysis
181
+ python src/runbooks/inventory/list_lambda_functions.py --profile $AWS_PROFILE --regions ap-southeast-2
182
+
183
+ # RDS Instances across multiple regions
184
+ python src/runbooks/inventory/list_rds_db_instances.py --profile $AWS_PROFILE --regions us-east-1,eu-west-1,ap-southeast-2
185
+
186
+ # Security Groups analysis
187
+ python src/runbooks/inventory/find_ec2_security_groups.py --profile $AWS_PROFILE --regions us-east-1 --defaults
188
+ ```
189
+
190
+ ### 🏢 Level 3: Enterprise Multi-Account Operations
191
+
192
+ **Goal**: Organization-wide resource discovery and compliance
193
+
194
+ ```bash
195
+ # Comprehensive inventory across AWS Organizations
196
+ python src/runbooks/inventory/list_org_accounts.py --profile $AWS_PROFILE
197
+
198
+ # Multi-account CloudFormation stack discovery
199
+ python src/runbooks/inventory/list_cfn_stacks.py --profile $AWS_PROFILE --regions ap-southeast-2 --timing
200
+
201
+ # Organization-wide GuardDuty detector inventory
202
+ python src/runbooks/inventory/list_guardduty_detectors.py --profile $AWS_PROFILE --regions ap-southeast-2
203
+
204
+ # CloudTrail compliance validation
205
+ python src/runbooks/inventory/check_cloudtrail_compliance.py --profile $AWS_PROFILE --regions ap-southeast-2 --timing
206
+ ```
207
+
208
+ ### 🚀 Level 4: Autonomous Testing Framework
209
+
210
+ **Goal**: Automated testing and validation of entire inventory suite
211
+
212
+ ```bash
213
+ # Test individual script
214
+ ./src/runbooks/inventory/inventory.sh list_ec2_instances.py --profile $AWS_PROFILE --regions ap-southeast-2 --timing
215
+
216
+ # Test specific script category with detailed analysis
217
+ ./src/runbooks/inventory/inventory.sh list_ec2_ebs_volumes.py --profile $AWS_PROFILE --regions ap-southeast-2 --timing
218
+
219
+ # Full autonomous test suite (20+ core scripts)
220
+ ./src/runbooks/inventory/inventory.sh all --profile $AWS_PROFILE --regions ap-southeast-2 --timing
221
+
222
+ # Review test results and analysis
223
+ ls test_logs_*/
224
+ cat test_logs_*/test_execution.log
225
+ ```
226
+
227
+ ### 🔬 Level 5: Advanced Integration & Analysis
228
+
229
+ **Goal**: Production-grade automation with comprehensive reporting
230
+
231
+ ```bash
232
+ # 1. VPC Network Discovery with Subnet Analysis
233
+ python src/runbooks/inventory/list_vpc_subnets.py --profile $AWS_PROFILE --regions ap-southeast-2 --timing
234
+ python src/runbooks/inventory/list_vpcs.py --profile $AWS_PROFILE --regions ap-southeast-2
235
+
236
+ # 2. Load Balancer Infrastructure Mapping
237
+ python src/runbooks/inventory/list_elbs_load_balancers.py --profile $AWS_PROFILE --regions ap-southeast-2 --timing
238
+
239
+ # 3. IAM Security Posture Assessment
240
+ python src/runbooks/inventory/list_iam_roles.py --profile $AWS_PROFILE --timing
241
+ python src/runbooks/inventory/list_iam_policies.py --profile $AWS_PROFILE --timing
242
+
243
+ # 4. ECS Container Platform Discovery
244
+ python src/runbooks/inventory/list_ecs_clusters_and_tasks.py --profile $AWS_PROFILE --regions ap-southeast-2 --timing
245
+
246
+ # 5. Network Interface and ENI Analysis
247
+ python src/runbooks/inventory/list_enis_network_interfaces.py --profile $AWS_PROFILE --regions ap-southeast-2 --timing
248
+ ```
249
+
250
+ ### 🎯 Level 6: Specialized Operations
251
+
252
+ **Goal**: Advanced scenarios for specific use cases
253
+
254
+ ```bash
255
+ # 1. Landing Zone Readiness Assessment
256
+ python src/runbooks/inventory/check_landingzone_readiness.py --profile $AWS_PROFILE
257
+
258
+ # 2. CloudFormation Drift Detection
259
+ python src/runbooks/inventory/find_cfn_drift_detection.py --profile $AWS_PROFILE --regions ap-southeast-2
260
+
261
+ # 3. Organizations Structure Analysis
262
+ python src/runbooks/inventory/list_org_accounts_users.py --profile $AWS_PROFILE --timing
263
+
264
+ # 4. Config Compliance Monitoring
265
+ python src/runbooks/inventory/list_config_recorders_delivery_channels.py --profile $AWS_PROFILE --regions ap-southeast-2
266
+
267
+ # 5. Route53 DNS Infrastructure
268
+ python src/runbooks/inventory/list_route53_hosted_zones.py --profile $AWS_PROFILE --timing
269
+ ```
270
+
271
+ ### 📊 Integration Examples
272
+
273
+ **Modern Architecture Integration:**
274
+
275
+ ```python
276
+ # collectors/ and core/ directories provide modern modular architecture
277
+ from runbooks.inventory.collectors.aws_compute import ComputeCollector
278
+ from runbooks.inventory.core.collector import InventoryCollector
279
+ from runbooks.inventory.core.formatter import OutputFormatter
280
+
281
+ # Enterprise-grade type-safe collection
282
+ collector = InventoryCollector(profile='production')
283
+ results = collector.collect_compute_resources(include_costs=True)
284
+ formatter = OutputFormatter()
285
+ report = formatter.generate_html_report(results)
286
+ ```
287
+
288
+ ## 🏢 **Level 7: Enterprise CLI Operations**
289
+
290
+ ### **AWS Resource Operations**
291
+
292
+ **Goal**: Comprehensive AWS resource lifecycle management with enterprise safety features
293
+
294
+ ```bash
295
+ # EC2 Instance Operations
296
+ runbooks operate ec2 start --instance-ids i-1234567890abcdef0 --profile production
297
+ runbooks operate ec2 stop --instance-ids i-1234567890abcdef0 i-0987654321fedcba0 --dry-run
298
+ runbooks operate ec2 terminate --instance-ids i-1234567890abcdef0 --force
299
+
300
+ # S3 Bucket Operations with Security Best Practices
301
+ runbooks operate s3 create-bucket --bucket-name secure-prod-bucket \
302
+ --encryption --versioning --public-access-block --region us-west-2
303
+ runbooks operate s3 delete-bucket-and-objects --bucket-name old-test-bucket --dry-run
304
+ runbooks operate s3 set-public-access-block --account-id 123456789012 --profile management
305
+
306
+ # CloudFormation StackSet Operations
307
+ runbooks operate cloudformation move-stack-instances \
308
+ --source-stackset-name old-baseline --target-stackset-name new-baseline \
309
+ --account-ids 111111111111,222222222222 --regions us-east-1,us-west-2 --dry-run
310
+ runbooks operate cloudformation lockdown-stackset-role \
311
+ --target-role-name AWSCloudFormationStackSetExecutionRole \
312
+ --management-account-id 123456789012
313
+
314
+ # IAM Cross-Account Role Management
315
+ runbooks operate iam update-roles-cross-accounts \
316
+ --role-name CrossAccountAccessRole \
317
+ --trusted-account-ids 111111111111,222222222222 \
318
+ --external-id MySecureExternalId --require-mfa
319
+
320
+ # CloudWatch Log Management
321
+ runbooks operate cloudwatch update-log-retention-policy \
322
+ --retention-days 30 --update-all-log-groups --profile production
323
+
324
+ # DynamoDB Table Operations
325
+ runbooks operate dynamodb create-table \
326
+ --table-name user-sessions --hash-key user_id --range-key session_id \
327
+ --billing-mode PAY_PER_REQUEST --tags Environment=production Team=backend
328
+ runbooks operate dynamodb backup-table --table-name critical-data --backup-name weekly-backup
329
+ runbooks operate dynamodb delete-table --table-name temp-table --confirm --dry-run
330
+
331
+ # Cross-Service Resource Tagging
332
+ runbooks operate tag apply-template --template production \
333
+ --resource-arns arn:aws:ec2:us-east-1:123456789012:instance/i-1234567890abcdef0
334
+ ```
335
+
336
+ ### **Cloud Foundations Assessment Tool (CFAT)**
337
+
338
+ **Goal**: Comprehensive AWS account assessment against best practices
339
+
340
+ ```bash
341
+ # Basic CFAT assessment with HTML report
342
+ runbooks cfat assess --profile production
343
+
344
+ # Multiple output formats with compliance framework
345
+ runbooks cfat assess --profile prod \
346
+ --compliance-framework "AWS Well-Architected" \
347
+ --output all \
348
+ --serve-web --web-port 8080
349
+
350
+ # Targeted assessment with specific categories
351
+ runbooks cfat assess --profile dev \
352
+ --categories iam,s3,vpc \
353
+ --severity CRITICAL \
354
+ --parallel --max-workers 10
355
+
356
+ # Export results to project management tools
357
+ runbooks cfat assess --profile staging \
358
+ --export-jira --export-asana \
359
+ --output json
360
+ ```
361
+
362
+ ### **Security Baseline Assessment**
363
+
364
+ **Goal**: Multi-language security compliance validation
365
+
366
+ ```bash
367
+ # Comprehensive security assessment (English)
368
+ runbooks security assess --profile production --language EN
369
+
370
+ # Localized security reports for global teams
371
+ runbooks security assess --profile prod-asia \
372
+ --language JP --format html --output /reports/security
373
+
374
+ # Run specific security checks
375
+ runbooks security check root_mfa --profile management
376
+ runbooks security check iam_password_policy --profile prod
377
+
378
+ # List available security checks
379
+ runbooks security list-checks
380
+
381
+ # Multiple checks with JSON output
382
+ runbooks security assess --profile dev \
383
+ --checks root_mfa --checks bucket_public_access \
384
+ --format json
385
+ ```
386
+
387
+ ### **AWS Organizations Management**
388
+
389
+ **Goal**: Enterprise OU structure setup and management
390
+
391
+ ```bash
392
+ # List current organizational structure
393
+ runbooks org list-ous --profile management --output table
394
+
395
+ # Setup standard OU structure (dry-run first)
396
+ runbooks org setup-ous --profile management \
397
+ --template standard --dry-run
398
+
399
+ # Create production OU structure
400
+ runbooks org setup-ous --profile management \
401
+ --template security
402
+
403
+ # Custom OU structure from file
404
+ runbooks org setup-ous --profile management \
405
+ --file custom-ou-structure.yaml
406
+
407
+ # Export OU structure to different formats
408
+ runbooks org list-ous --profile management --output json > ou-structure.json
409
+ runbooks org list-ous --profile management --output yaml > ou-structure.yaml
410
+
411
+ # Delete empty organizational unit (with confirmation)
412
+ runbooks org delete-ou ou-1234567890abcdef --confirm
413
+ ```
414
+
415
+ ### **Advanced Multi-Command Workflows**
416
+
417
+ **Goal**: Combine multiple tools for comprehensive AWS operations
418
+
419
+ ```bash
420
+ # 1. Complete AWS account assessment and remediation workflow
421
+ echo "🔍 Step 1: Security Baseline Assessment"
422
+ runbooks security assess --profile prod --language EN --format json > security-report.json
423
+
424
+ echo "🏗️ Step 2: Cloud Foundations Assessment"
425
+ runbooks cfat assess --profile prod --output all --compliance-framework "AWS Well-Architected"
426
+
427
+ echo "🏢 Step 3: Organizations Structure Review"
428
+ runbooks org list-ous --profile management --output yaml > current-ou-structure.yaml
429
+
430
+ echo "📊 Step 4: Resource Inventory"
431
+ runbooks inventory collect -r ec2 -r s3 --profile prod --output json > resource-inventory.json
432
+
433
+ echo "⚙️ Step 5: Automated Remediation"
434
+ runbooks operate s3 set-public-access-block --account-id 123456789012 --profile management
435
+ runbooks operate cloudwatch update-log-retention-policy --retention-days 90 --update-all
436
+ runbooks operate tag apply-template --template production --resource-arns $(cat resource-inventory.json | jq -r '.ec2[].arn')
437
+
438
+ # 2. Setup new AWS environment workflow with security hardening
439
+ echo "🚀 Setting up new secure AWS environment"
440
+ runbooks org setup-ous --template security --profile management
441
+ runbooks operate s3 set-public-access-block --account-id NEW_ACCOUNT_ID --profile management
442
+ runbooks operate iam update-roles-cross-accounts --role-name CrossAccountAuditRole --trusted-account-ids AUDIT_ACCOUNT_ID
443
+ runbooks security assess --profile new-account --language EN
444
+ runbooks cfat assess --profile new-account --categories iam,s3,vpc,security --output html
445
+
446
+ # 3. Disaster recovery and cleanup workflow
447
+ echo "🔧 Emergency cleanup and recovery"
448
+ runbooks operate ec2 stop --instance-ids $(runbooks inventory collect -r ec2 --filter state=running --output json | jq -r '.[].InstanceId') --dry-run
449
+ runbooks operate s3 delete-bucket-and-objects --bucket-name old-backup-bucket --dry-run
450
+ runbooks operate cloudformation move-stack-instances --source-stackset old-infra --target-stackset new-infra --dry-run
451
+
452
+ # 4. Compliance and governance workflow
453
+ echo "📋 Running compliance checks and governance"
454
+ runbooks security assess --profile all-accounts --format json
455
+ runbooks cfat assess --profile all-accounts --compliance-framework "SOC2" --export-jira
456
+ runbooks org list-ous --profile management --output json
457
+ runbooks operate tag apply-template --template compliance --resource-arns $(runbooks inventory collect --profile all-accounts | jq -r '.[].arn')
458
+ ```
459
+
460
+ ### 📈 Performance & Success Metrics
461
+
462
+ **Enterprise CLI Results (Latest v0.7.3):**
463
+ - ✅ **Production-Ready CLI**: 18+ complete AWS operations across all major services
464
+ - ✅ **Complete EC2 Operations**: 7/7 commands (start, stop, terminate, run, copy, cleanup)
465
+ - ✅ **Complete S3 Operations**: 3/3 commands (create, delete, public-access-block)
466
+ - ✅ **Enterprise CloudFormation**: 3/3 commands (move-instances, lockdown-role, update-stacksets)
467
+ - ✅ **IAM & CloudWatch**: Complete operational commands for enterprise management
468
+ - ✅ **DynamoDB Operations**: 3/3 commands (create-table, delete-table, backup-table)
469
+ - ✅ **KISS Architecture**: No legacy directories - clean, maintainable codebase
470
+ - ✅ **Standardized CLI**: Consistent options across all commands for human & AI-Agent use
471
+ - ✅ **Complete Migration**: All AWS operations properly categorized (inventory vs operate)
472
+ - ✅ **CFAT Module**: Fully integrated with enterprise features and web reporting
473
+ - ✅ **Security Module**: 15+ security checks with multi-language support (EN, JP, KR, VN)
474
+ - ✅ **Organizations Module**: Complete OU management with template-based setup
475
+ - ✅ **Legacy Inventory**: 20/43 core scripts passing (47% success rate) - maintained compatibility
476
+ - ⚡ **Performance**: 8-12 seconds average execution, parallel processing support
477
+ - 🏗️ **Architecture**: Modern modular design with collectors/, core/, operate/, and assessment/ directories
478
+ - 🔧 **Integration**: Enhanced with EC2, S3, CloudFormation, IAM, and CloudWatch operations
479
+ - 🤖 **AI-Agent Ready**: Predictable CLI patterns, consistent error handling, standardized outputs
480
+
481
+ ## 📋 Architecture Overview
482
+
483
+ ### 🏗️ **Enterprise Module Structure**
484
+
485
+ ```
486
+ src/runbooks/
487
+ ├── 🏛️ cfat/ # Cloud Foundations Assessment Tool
488
+ │ ├── assessment/ # Assessment engine and runners
489
+ │ │ ├── runner.py # CloudFoundationsAssessment (enhanced)
490
+ │ │ ├── collectors.py # AWS resource collection logic
491
+ │ │ └── validators.py # Compliance rule validation
492
+ │ ├── reporting/ # Multi-format report generation
493
+ │ │ ├── formatters.py # HTML, JSON, CSV, Markdown generators
494
+ │ │ ├── templates.py # Executive, Technical, Compliance templates
495
+ │ │ └── exporters.py # Jira, Asana, ServiceNow integration
496
+ │ ├── tests/ # Comprehensive test suite
497
+ │ ├── models.py # Pydantic data models with validation
498
+ │ └── cli.py # Enterprise CLI with web server
499
+ ├── 🔒 security/ # Security Baseline Assessment
500
+ │ ├── checklist/ # 15+ security validation modules
501
+ │ ├── security_baseline_tester.py # Multi-language assessment engine
502
+ │ ├── report_generator.py # HTML reports with remediation
503
+ │ └── utils/ # Security-specific utilities
504
+ ├── 📊 inventory/ # Multi-account Resource Discovery
505
+ │ ├── core/ # Business Logic & Orchestration
506
+ │ │ ├── collector.py # Main inventory orchestration engine
507
+ │ │ ├── formatter.py # Multi-format output handling
508
+ │ │ └── session_manager.py # AWS session management
509
+ │ ├── collectors/ # Specialized Resource Collectors
510
+ │ │ ├── base.py # Abstract base collector interface
511
+ │ │ ├── aws_compute.py # EC2, Lambda, ECS, Batch
512
+ │ │ ├── aws_networking.py # VPC, ELB, Route53, CloudFront
513
+ │ │ └── aws_management.py # Organizations, CloudFormation, SSM
514
+ │ ├── models/ # Type-safe Data Structures
515
+ │ │ ├── account.py # AWS account representation
516
+ │ │ ├── resource.py # Resource models with metadata
517
+ │ │ └── inventory.py # Collection results and analytics
518
+ │ ├── utils/ # Shared Utilities & Helpers
519
+ │ │ ├── aws_helpers.py # AWS session and API utilities
520
+ │ │ ├── threading_utils.py # Concurrent execution helpers
521
+ │ │ └── validation.py # Input validation and sanitization
522
+ │ └── 📜 legacy/ # Legacy Script Compatibility
523
+ │ └── migration_guide.md # Legacy script migration guide
524
+ ├── ⚙️ operate/ # AWS Resource Operations (v0.7.3 - KISS Principle)
525
+ │ ├── base.py # Abstract operation framework
526
+ │ ├── ec2_operations.py # Complete EC2 lifecycle operations
527
+ │ ├── s3_operations.py # Complete S3 bucket and object operations
528
+ │ ├── dynamodb_operations.py # DynamoDB table operations
529
+ │ ├── cloudformation_operations.py # CloudFormation and StackSet operations
530
+ │ ├── iam_operations.py # IAM role and policy operations
531
+ │ ├── cloudwatch_operations.py # CloudWatch logs and metrics
532
+ │ ├── tagging_operations.py # Cross-service resource tagging
533
+ │ └── tags.json # Shared tag templates (no legacy complexity)
534
+ ├── 💰 finops/ # Cost and Usage Analytics
535
+ ├── 🛠️ utils/ # Core Framework Utilities
536
+ ├── 🧪 tests/ # Enterprise Test Framework
537
+ └── 📖 docs/ # Comprehensive Documentation
538
+ ```
539
+
540
+ ## 🧪 Testing & Development
541
+
542
+ ### Running Tests
543
+
544
+ ```bash
545
+ # Run full test suite
546
+ task test
547
+
548
+ # Run specific test categories
549
+ pytest tests/unit/test_inventory.py -v
550
+ pytest tests/integration/test_collectors.py -v
551
+
552
+ # Test with coverage
553
+ task _test.coverage
554
+
555
+ # Test inventory module specifically
556
+ task inventory.test
557
+ ```
558
+
559
+ ### Development Workflow
560
+
561
+ ```bash
562
+ # Install development dependencies
563
+ task install
564
+
565
+ # Code quality checks
566
+ task code_quality
567
+
568
+ # Validate module structure
569
+ task inventory.validate
570
+
571
+ # Full validation workflow
572
+ task validate
573
+ ```
574
+
575
+ ## 📚 Documentation
576
+
577
+ - [API Reference](docs/api-reference.md)
578
+ - [Configuration Guide](docs/configuration.md)
579
+ - [Migration Guide](src/runbooks/inventory/legacy/migration_guide.md)
580
+ - [Contributing Guide](CONTRIBUTING.md)
581
+
582
+
583
+ ## 🚦 Roadmap
584
+
585
+ - **v1.0** (Q4 2025): Enhanced AI agent orchestration
586
+ - **v1.5** (Q1 2026): Self-healing infrastructure capabilities
587
+
588
+ ## 📝 License
589
+
590
+ This project is licensed under the Apache License 2.0 - see the [LICENSE](LICENSE) file for details.
591
+
592
+ ## 🆘 Support
593
+
594
+ ### Community
595
+ - [GitHub Issues](https://github.com/1xOps/CloudOps-Runbooks/issues)
596
+ - [Discussions](https://github.com/1xOps/CloudOps-Runbooks/discussions)
597
+
598
+ ### Enterprise Support
599
+ - Professional services and training available
600
+ - Custom collector development
601
+ - Enterprise deployment assistance
602
+ - Contact: [info@oceansoft.io](mailto:info@oceansoft.io)
603
+
604
+ ---
605
+
606
+ **Built with ❤️ by the xOps team at OceanSoft**
607
+
608
+ [Website](https://cloudops.oceansoft.io) • [Documentation](https://cloudops.oceansoft.io/runbooks/) • [GitHub](https://github.com/1xOps/CloudOps-Runbooks)