runbooks 0.2.5__tar.gz โ†’ 0.7.5__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 (331) hide show
  1. runbooks-0.7.5/.actrc +6 -0
  2. runbooks-0.7.5/.gitignore +202 -0
  3. runbooks-0.7.5/.gitmodules +3 -0
  4. runbooks-0.7.5/.pre-commit-config.yaml +10 -0
  5. runbooks-0.7.5/.python-version +1 -0
  6. runbooks-0.7.5/CHANGELOG.md +38 -0
  7. runbooks-0.7.5/MANIFEST.in +30 -0
  8. runbooks-0.7.5/PKG-INFO +606 -0
  9. runbooks-0.7.5/Quickstart.md +68 -0
  10. runbooks-0.7.5/README.docs.md +19 -0
  11. runbooks-0.7.5/README.md +559 -0
  12. runbooks-0.7.5/Taskfile.yaml +750 -0
  13. runbooks-0.7.5/docker-build-push.sh +64 -0
  14. runbooks-0.7.5/execute_landing_page.py +181 -0
  15. runbooks-0.7.5/output/dev/landing-page/css/styles.css +551 -0
  16. runbooks-0.7.5/output/dev/landing-page/index.html +178 -0
  17. runbooks-0.7.5/output/dev/landing-page/js/main.js +100 -0
  18. runbooks-0.7.5/pyproject.toml +277 -0
  19. runbooks-0.7.5/reports/figures/.gitkeep +0 -0
  20. runbooks-0.7.5/src/conftest.py +26 -0
  21. runbooks-0.7.5/src/jupyter-agent/.env +2 -0
  22. runbooks-0.7.5/src/jupyter-agent/.env.template +2 -0
  23. runbooks-0.7.5/src/jupyter-agent/.gitattributes +35 -0
  24. runbooks-0.7.5/src/jupyter-agent/.gradio/certificate.pem +31 -0
  25. runbooks-0.7.5/src/jupyter-agent/README.md +16 -0
  26. runbooks-0.7.5/src/jupyter-agent/__main__.log +8 -0
  27. runbooks-0.7.5/src/jupyter-agent/app.py +256 -0
  28. runbooks-0.7.5/src/jupyter-agent/cloudops-agent.png +0 -0
  29. runbooks-0.7.5/src/jupyter-agent/ds-system-prompt.txt +154 -0
  30. runbooks-0.7.5/src/jupyter-agent/jupyter-agent.png +0 -0
  31. runbooks-0.7.5/src/jupyter-agent/llama3_template.jinja +123 -0
  32. runbooks-0.7.5/src/jupyter-agent/requirements.txt +9 -0
  33. runbooks-0.7.5/src/jupyter-agent/tmp/4ojbs8a02ir/jupyter-agent.ipynb +68 -0
  34. runbooks-0.7.5/src/jupyter-agent/tmp/cm5iasgpm3p/jupyter-agent.ipynb +91 -0
  35. runbooks-0.7.5/src/jupyter-agent/tmp/crqbsseag5/jupyter-agent.ipynb +91 -0
  36. runbooks-0.7.5/src/jupyter-agent/tmp/hohanq1u097/jupyter-agent.ipynb +57 -0
  37. runbooks-0.7.5/src/jupyter-agent/tmp/jns1sam29wm/jupyter-agent.ipynb +53 -0
  38. runbooks-0.7.5/src/jupyter-agent/tmp/jupyter-agent.ipynb +27 -0
  39. runbooks-0.7.5/src/jupyter-agent/utils.py +409 -0
  40. runbooks-0.7.5/src/main.python101.py +115 -0
  41. runbooks-0.7.5/src/runbooks/__init__.py +125 -0
  42. runbooks-0.7.5/src/runbooks/__main__.py +13 -0
  43. runbooks-0.7.5/src/runbooks/base.py +353 -0
  44. runbooks-0.7.5/src/runbooks/cfat/README.md +300 -0
  45. runbooks-0.7.5/src/runbooks/cfat/__init__.py +74 -0
  46. runbooks-0.7.5/src/runbooks/cfat/app.ts +644 -0
  47. runbooks-0.7.5/src/runbooks/cfat/assessment/__init__.py +40 -0
  48. runbooks-0.7.5/src/runbooks/cfat/assessment/asana-import.csv +39 -0
  49. runbooks-0.7.5/src/runbooks/cfat/assessment/cfat-checks.csv +31 -0
  50. runbooks-0.7.5/src/runbooks/cfat/assessment/cfat.txt +520 -0
  51. runbooks-0.7.5/src/runbooks/cfat/assessment/collectors.py +200 -0
  52. runbooks-0.7.5/src/runbooks/cfat/assessment/jira-import.csv +39 -0
  53. runbooks-0.7.5/src/runbooks/cfat/assessment/runner.py +387 -0
  54. runbooks-0.7.5/src/runbooks/cfat/assessment/validators.py +290 -0
  55. runbooks-0.7.5/src/runbooks/cfat/cli.py +103 -0
  56. runbooks-0.7.5/src/runbooks/cfat/docs/asana-import.csv +24 -0
  57. runbooks-0.7.5/src/runbooks/cfat/docs/cfat-checks.csv +31 -0
  58. runbooks-0.7.5/src/runbooks/cfat/docs/cfat.txt +335 -0
  59. runbooks-0.7.5/src/runbooks/cfat/docs/checks-output.png +0 -0
  60. runbooks-0.7.5/src/runbooks/cfat/docs/cloudshell-console-run.png +0 -0
  61. runbooks-0.7.5/src/runbooks/cfat/docs/cloudshell-download.png +0 -0
  62. runbooks-0.7.5/src/runbooks/cfat/docs/cloudshell-output.png +0 -0
  63. runbooks-0.7.5/src/runbooks/cfat/docs/downloadfile.png +0 -0
  64. runbooks-0.7.5/src/runbooks/cfat/docs/jira-import.csv +24 -0
  65. runbooks-0.7.5/src/runbooks/cfat/docs/open-cloudshell.png +0 -0
  66. runbooks-0.7.5/src/runbooks/cfat/docs/report-header.png +0 -0
  67. runbooks-0.7.5/src/runbooks/cfat/models.py +1026 -0
  68. runbooks-0.7.5/src/runbooks/cfat/package-lock.json +5116 -0
  69. runbooks-0.7.5/src/runbooks/cfat/package.json +38 -0
  70. runbooks-0.7.5/src/runbooks/cfat/report.py +496 -0
  71. runbooks-0.7.5/src/runbooks/cfat/reporting/__init__.py +46 -0
  72. runbooks-0.7.5/src/runbooks/cfat/reporting/exporters.py +337 -0
  73. runbooks-0.7.5/src/runbooks/cfat/reporting/formatters.py +496 -0
  74. runbooks-0.7.5/src/runbooks/cfat/reporting/templates.py +135 -0
  75. runbooks-0.7.5/src/runbooks/cfat/run-assessment.sh +23 -0
  76. runbooks-0.7.5/src/runbooks/cfat/runner.py +69 -0
  77. runbooks-0.7.5/src/runbooks/cfat/src/actions/check-cloudtrail-existence.ts +43 -0
  78. runbooks-0.7.5/src/runbooks/cfat/src/actions/check-config-existence.ts +37 -0
  79. runbooks-0.7.5/src/runbooks/cfat/src/actions/check-control-tower.ts +37 -0
  80. runbooks-0.7.5/src/runbooks/cfat/src/actions/check-ec2-existence.ts +46 -0
  81. runbooks-0.7.5/src/runbooks/cfat/src/actions/check-iam-users.ts +50 -0
  82. runbooks-0.7.5/src/runbooks/cfat/src/actions/check-legacy-cur.ts +30 -0
  83. runbooks-0.7.5/src/runbooks/cfat/src/actions/check-org-cloudformation.ts +30 -0
  84. runbooks-0.7.5/src/runbooks/cfat/src/actions/check-vpc-existence.ts +43 -0
  85. runbooks-0.7.5/src/runbooks/cfat/src/actions/create-asanaimport.ts +14 -0
  86. runbooks-0.7.5/src/runbooks/cfat/src/actions/create-backlog.ts +372 -0
  87. runbooks-0.7.5/src/runbooks/cfat/src/actions/create-jiraimport.ts +15 -0
  88. runbooks-0.7.5/src/runbooks/cfat/src/actions/create-report.ts +616 -0
  89. runbooks-0.7.5/src/runbooks/cfat/src/actions/define-account-type.ts +51 -0
  90. runbooks-0.7.5/src/runbooks/cfat/src/actions/get-enabled-org-policy-types.ts +40 -0
  91. runbooks-0.7.5/src/runbooks/cfat/src/actions/get-enabled-org-services.ts +26 -0
  92. runbooks-0.7.5/src/runbooks/cfat/src/actions/get-idc-info.ts +34 -0
  93. runbooks-0.7.5/src/runbooks/cfat/src/actions/get-org-da-accounts.ts +34 -0
  94. runbooks-0.7.5/src/runbooks/cfat/src/actions/get-org-details.ts +35 -0
  95. runbooks-0.7.5/src/runbooks/cfat/src/actions/get-org-member-accounts.ts +44 -0
  96. runbooks-0.7.5/src/runbooks/cfat/src/actions/get-org-ous.ts +35 -0
  97. runbooks-0.7.5/src/runbooks/cfat/src/actions/get-regions.ts +22 -0
  98. runbooks-0.7.5/src/runbooks/cfat/src/actions/zip-assessment.ts +27 -0
  99. runbooks-0.7.5/src/runbooks/cfat/src/types/index.d.ts +147 -0
  100. runbooks-0.7.5/src/runbooks/cfat/tests/__init__.py +141 -0
  101. runbooks-0.7.5/src/runbooks/cfat/tests/test_cli.py +340 -0
  102. runbooks-0.7.5/src/runbooks/cfat/tests/test_integration.py +290 -0
  103. runbooks-0.7.5/src/runbooks/cfat/tests/test_models.py +505 -0
  104. runbooks-0.7.5/src/runbooks/cfat/tests/test_reporting.py +354 -0
  105. runbooks-0.7.5/src/runbooks/cfat/tsconfig.json +16 -0
  106. runbooks-0.7.5/src/runbooks/cfat/webpack.config.cjs +27 -0
  107. runbooks-0.7.5/src/runbooks/config.py +260 -0
  108. runbooks-0.7.5/src/runbooks/finops/README.md +337 -0
  109. runbooks-0.7.5/src/runbooks/finops/__init__.py +86 -0
  110. runbooks-0.7.5/src/runbooks/finops/aws_client.py +245 -0
  111. runbooks-0.7.5/src/runbooks/finops/cli.py +151 -0
  112. runbooks-0.7.5/src/runbooks/finops/cost_processor.py +410 -0
  113. runbooks-0.7.5/src/runbooks/finops/dashboard_runner.py +448 -0
  114. runbooks-0.7.5/src/runbooks/finops/helpers.py +355 -0
  115. runbooks-0.7.5/src/runbooks/finops/main.py +14 -0
  116. runbooks-0.7.5/src/runbooks/finops/profile_processor.py +174 -0
  117. runbooks-0.7.5/src/runbooks/finops/types.py +66 -0
  118. runbooks-0.7.5/src/runbooks/finops/visualisations.py +80 -0
  119. runbooks-0.7.5/src/runbooks/inventory/.gitignore +354 -0
  120. runbooks-0.7.5/src/runbooks/inventory/ArgumentsClass.py +261 -0
  121. runbooks-0.7.5/src/runbooks/inventory/Inventory_Modules.py +6130 -0
  122. runbooks-0.7.5/src/runbooks/inventory/LandingZone/delete_lz.py +1075 -0
  123. runbooks-0.7.5/src/runbooks/inventory/README.md +1320 -0
  124. runbooks-0.7.5/src/runbooks/inventory/__init__.py +62 -0
  125. runbooks-0.7.5/src/runbooks/inventory/account_class.py +532 -0
  126. runbooks-0.7.5/src/runbooks/inventory/all_my_instances_wrapper.py +123 -0
  127. runbooks-0.7.5/src/runbooks/inventory/aws_decorators.py +201 -0
  128. runbooks-0.7.5/src/runbooks/inventory/aws_organization.png +0 -0
  129. runbooks-0.7.5/src/runbooks/inventory/check_cloudtrail_compliance.py +614 -0
  130. runbooks-0.7.5/src/runbooks/inventory/check_controltower_readiness.py +1107 -0
  131. runbooks-0.7.5/src/runbooks/inventory/check_landingzone_readiness.py +711 -0
  132. runbooks-0.7.5/src/runbooks/inventory/cloudtrail.md +727 -0
  133. runbooks-0.7.5/src/runbooks/inventory/collectors/__init__.py +28 -0
  134. runbooks-0.7.5/src/runbooks/inventory/collectors/aws_compute.py +518 -0
  135. runbooks-0.7.5/src/runbooks/inventory/collectors/aws_management.py +791 -0
  136. runbooks-0.7.5/src/runbooks/inventory/collectors/aws_networking.py +275 -0
  137. runbooks-0.7.5/src/runbooks/inventory/collectors/base.py +222 -0
  138. runbooks-0.7.5/src/runbooks/inventory/core/__init__.py +19 -0
  139. runbooks-0.7.5/src/runbooks/inventory/core/collector.py +303 -0
  140. runbooks-0.7.5/src/runbooks/inventory/core/formatter.py +296 -0
  141. runbooks-0.7.5/src/runbooks/inventory/discovery.md +81 -0
  142. runbooks-0.7.5/src/runbooks/inventory/draw_org_structure.py +748 -0
  143. runbooks-0.7.5/src/runbooks/inventory/ec2_vpc_utils.py +341 -0
  144. runbooks-0.7.5/src/runbooks/inventory/find_cfn_drift_detection.py +272 -0
  145. runbooks-0.7.5/src/runbooks/inventory/find_cfn_orphaned_stacks.py +719 -0
  146. runbooks-0.7.5/src/runbooks/inventory/find_cfn_stackset_drift.py +733 -0
  147. runbooks-0.7.5/src/runbooks/inventory/find_ec2_security_groups.py +669 -0
  148. runbooks-0.7.5/src/runbooks/inventory/find_landingzone_versions.py +201 -0
  149. runbooks-0.7.5/src/runbooks/inventory/find_vpc_flow_logs.py +1221 -0
  150. runbooks-0.7.5/src/runbooks/inventory/inventory.sh +659 -0
  151. runbooks-0.7.5/src/runbooks/inventory/list_cfn_stacks.py +558 -0
  152. runbooks-0.7.5/src/runbooks/inventory/list_cfn_stackset_operation_results.py +252 -0
  153. runbooks-0.7.5/src/runbooks/inventory/list_cfn_stackset_operations.py +734 -0
  154. runbooks-0.7.5/src/runbooks/inventory/list_cfn_stacksets.py +453 -0
  155. runbooks-0.7.5/src/runbooks/inventory/list_config_recorders_delivery_channels.py +681 -0
  156. runbooks-0.7.5/src/runbooks/inventory/list_ds_directories.py +354 -0
  157. runbooks-0.7.5/src/runbooks/inventory/list_ec2_availability_zones.py +286 -0
  158. runbooks-0.7.5/src/runbooks/inventory/list_ec2_ebs_volumes.py +244 -0
  159. runbooks-0.7.5/src/runbooks/inventory/list_ec2_instances.py +425 -0
  160. runbooks-0.7.5/src/runbooks/inventory/list_ecs_clusters_and_tasks.py +562 -0
  161. runbooks-0.7.5/src/runbooks/inventory/list_elbs_load_balancers.py +411 -0
  162. runbooks-0.7.5/src/runbooks/inventory/list_enis_network_interfaces.py +526 -0
  163. runbooks-0.7.5/src/runbooks/inventory/list_guardduty_detectors.py +568 -0
  164. runbooks-0.7.5/src/runbooks/inventory/list_iam_policies.py +404 -0
  165. runbooks-0.7.5/src/runbooks/inventory/list_iam_roles.py +518 -0
  166. runbooks-0.7.5/src/runbooks/inventory/list_iam_saml_providers.py +359 -0
  167. runbooks-0.7.5/src/runbooks/inventory/list_lambda_functions.py +882 -0
  168. runbooks-0.7.5/src/runbooks/inventory/list_org_accounts.py +446 -0
  169. runbooks-0.7.5/src/runbooks/inventory/list_org_accounts_users.py +354 -0
  170. runbooks-0.7.5/src/runbooks/inventory/list_rds_db_instances.py +406 -0
  171. runbooks-0.7.5/src/runbooks/inventory/list_route53_hosted_zones.py +318 -0
  172. runbooks-0.7.5/src/runbooks/inventory/list_servicecatalog_provisioned_products.py +575 -0
  173. runbooks-0.7.5/src/runbooks/inventory/list_sns_topics.py +360 -0
  174. runbooks-0.7.5/src/runbooks/inventory/list_ssm_parameters.py +402 -0
  175. runbooks-0.7.5/src/runbooks/inventory/list_vpc_subnets.py +433 -0
  176. runbooks-0.7.5/src/runbooks/inventory/list_vpcs.py +422 -0
  177. runbooks-0.7.5/src/runbooks/inventory/models/__init__.py +24 -0
  178. runbooks-0.7.5/src/runbooks/inventory/models/account.py +192 -0
  179. runbooks-0.7.5/src/runbooks/inventory/models/inventory.py +309 -0
  180. runbooks-0.7.5/src/runbooks/inventory/models/resource.py +247 -0
  181. runbooks-0.7.5/src/runbooks/inventory/recover_cfn_stack_ids.py +205 -0
  182. runbooks-0.7.5/src/runbooks/inventory/requirements.txt +12 -0
  183. runbooks-0.7.5/src/runbooks/inventory/run_on_multi_accounts.py +211 -0
  184. runbooks-0.7.5/src/runbooks/inventory/tests/common_test_data.py +3661 -0
  185. runbooks-0.7.5/src/runbooks/inventory/tests/common_test_functions.py +204 -0
  186. runbooks-0.7.5/src/runbooks/inventory/tests/script_test_data.py +0 -0
  187. runbooks-0.7.5/src/runbooks/inventory/tests/setup.py +24 -0
  188. runbooks-0.7.5/src/runbooks/inventory/tests/src.py +18 -0
  189. runbooks-0.7.5/src/runbooks/inventory/tests/test_cfn_describe_stacks.py +208 -0
  190. runbooks-0.7.5/src/runbooks/inventory/tests/test_ec2_describe_instances.py +162 -0
  191. runbooks-0.7.5/src/runbooks/inventory/tests/test_inventory_modules.py +55 -0
  192. runbooks-0.7.5/src/runbooks/inventory/tests/test_lambda_list_functions.py +86 -0
  193. runbooks-0.7.5/src/runbooks/inventory/tests/test_moto_integration_example.py +273 -0
  194. runbooks-0.7.5/src/runbooks/inventory/tests/test_org_list_accounts.py +49 -0
  195. runbooks-0.7.5/src/runbooks/inventory/utils/__init__.py +23 -0
  196. runbooks-0.7.5/src/runbooks/inventory/utils/aws_helpers.py +510 -0
  197. runbooks-0.7.5/src/runbooks/inventory/utils/threading_utils.py +493 -0
  198. runbooks-0.7.5/src/runbooks/inventory/utils/validation.py +682 -0
  199. runbooks-0.7.5/src/runbooks/inventory/verify_ec2_security_groups.py +1430 -0
  200. runbooks-0.7.5/src/runbooks/main.py +3611 -0
  201. runbooks-0.7.5/src/runbooks/operate/__init__.py +207 -0
  202. runbooks-0.7.5/src/runbooks/operate/base.py +311 -0
  203. runbooks-0.7.5/src/runbooks/operate/cloudformation_operations.py +619 -0
  204. runbooks-0.7.5/src/runbooks/operate/cloudwatch_operations.py +496 -0
  205. runbooks-0.7.5/src/runbooks/operate/dynamodb_operations.py +812 -0
  206. runbooks-0.7.5/src/runbooks/operate/ec2_operations.py +926 -0
  207. runbooks-0.7.5/src/runbooks/operate/iam_operations.py +569 -0
  208. runbooks-0.7.5/src/runbooks/operate/s3_operations.py +1211 -0
  209. runbooks-0.7.5/src/runbooks/operate/tagging_operations.py +655 -0
  210. runbooks-0.7.5/src/runbooks/operate/tags.json +12 -0
  211. runbooks-0.7.5/src/runbooks/remediation/CLAUDE.md +100 -0
  212. runbooks-0.7.5/src/runbooks/remediation/DOME9.md +218 -0
  213. runbooks-0.7.5/src/runbooks/remediation/README.md +26 -0
  214. runbooks-0.7.5/src/runbooks/remediation/Tests/__init__.py +0 -0
  215. runbooks-0.7.5/src/runbooks/remediation/Tests/update_policy.py +74 -0
  216. runbooks-0.7.5/src/runbooks/remediation/__init__.py +95 -0
  217. runbooks-0.7.5/src/runbooks/remediation/acm_cert_expired_unused.py +98 -0
  218. runbooks-0.7.5/src/runbooks/remediation/acm_remediation.py +875 -0
  219. runbooks-0.7.5/src/runbooks/remediation/api_gateway_list.py +167 -0
  220. runbooks-0.7.5/src/runbooks/remediation/base.py +643 -0
  221. runbooks-0.7.5/src/runbooks/remediation/cloudtrail_remediation.py +908 -0
  222. runbooks-0.7.5/src/runbooks/remediation/cloudtrail_s3_modifications.py +296 -0
  223. runbooks-0.7.5/src/runbooks/remediation/cognito_active_users.py +78 -0
  224. runbooks-0.7.5/src/runbooks/remediation/cognito_remediation.py +856 -0
  225. runbooks-0.7.5/src/runbooks/remediation/cognito_user_password_reset.py +163 -0
  226. runbooks-0.7.5/src/runbooks/remediation/commons.py +455 -0
  227. runbooks-0.7.5/src/runbooks/remediation/dynamodb_optimize.py +155 -0
  228. runbooks-0.7.5/src/runbooks/remediation/dynamodb_remediation.py +744 -0
  229. runbooks-0.7.5/src/runbooks/remediation/dynamodb_server_side_encryption.py +108 -0
  230. runbooks-0.7.5/src/runbooks/remediation/ec2_public_ips.py +134 -0
  231. runbooks-0.7.5/src/runbooks/remediation/ec2_remediation.py +892 -0
  232. runbooks-0.7.5/src/runbooks/remediation/ec2_subnet_disable_auto_ip_assignment.py +72 -0
  233. runbooks-0.7.5/src/runbooks/remediation/ec2_unattached_ebs_volumes.py +448 -0
  234. runbooks-0.7.5/src/runbooks/remediation/ec2_unused_security_groups.py +202 -0
  235. runbooks-0.7.5/src/runbooks/remediation/kms_enable_key_rotation.py +651 -0
  236. runbooks-0.7.5/src/runbooks/remediation/kms_remediation.py +717 -0
  237. runbooks-0.7.5/src/runbooks/remediation/lambda_list.py +243 -0
  238. runbooks-0.7.5/src/runbooks/remediation/lambda_remediation.py +971 -0
  239. runbooks-0.7.5/src/runbooks/remediation/multi_account.py +569 -0
  240. runbooks-0.7.5/src/runbooks/remediation/rds_instance_list.py +199 -0
  241. runbooks-0.7.5/src/runbooks/remediation/rds_remediation.py +873 -0
  242. runbooks-0.7.5/src/runbooks/remediation/rds_snapshot_list.py +192 -0
  243. runbooks-0.7.5/src/runbooks/remediation/requirements.txt +118 -0
  244. runbooks-0.7.5/src/runbooks/remediation/s3_block_public_access.py +159 -0
  245. runbooks-0.7.5/src/runbooks/remediation/s3_bucket_public_access.py +143 -0
  246. runbooks-0.7.5/src/runbooks/remediation/s3_disable_static_website_hosting.py +74 -0
  247. runbooks-0.7.5/src/runbooks/remediation/s3_downloader.py +215 -0
  248. runbooks-0.7.5/src/runbooks/remediation/s3_enable_access_logging.py +562 -0
  249. runbooks-0.7.5/src/runbooks/remediation/s3_encryption.py +526 -0
  250. runbooks-0.7.5/src/runbooks/remediation/s3_force_ssl_secure_policy.py +143 -0
  251. runbooks-0.7.5/src/runbooks/remediation/s3_list.py +141 -0
  252. runbooks-0.7.5/src/runbooks/remediation/s3_object_search.py +201 -0
  253. runbooks-0.7.5/src/runbooks/remediation/s3_remediation.py +816 -0
  254. runbooks-0.7.5/src/runbooks/remediation/scan_for_phrase.py +425 -0
  255. runbooks-0.7.5/src/runbooks/remediation/workspaces_list.py +220 -0
  256. runbooks-0.7.5/src/runbooks/security/README.md +447 -0
  257. runbooks-0.7.5/src/runbooks/security/__init__.py +70 -0
  258. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/checklist/alternate_contacts.py +8 -1
  259. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/checklist/bucket_public_access.py +4 -1
  260. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/checklist/cloudwatch_alarm_configuration.py +9 -2
  261. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/checklist/guardduty_enabled.py +9 -2
  262. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/checklist/multi_region_instance_usage.py +5 -1
  263. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/checklist/root_access_key.py +6 -1
  264. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/config-origin.json +1 -1
  265. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/config.json +1 -1
  266. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/permission.json +1 -1
  267. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/report_generator.py +10 -2
  268. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/report_template_en.html +7 -7
  269. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/report_template_jp.html +7 -7
  270. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/report_template_kr.html +12 -12
  271. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/report_template_vn.html +7 -7
  272. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/run_script.py +8 -2
  273. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/security_baseline_tester.py +15 -5
  274. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/utils/common.py +5 -1
  275. runbooks-0.7.5/src/runbooks/utils/__init__.py +204 -0
  276. runbooks-0.7.5/src/runbooks.egg-info/PKG-INFO +606 -0
  277. runbooks-0.7.5/src/runbooks.egg-info/SOURCES.txt +301 -0
  278. runbooks-0.7.5/src/runbooks.egg-info/entry_points.txt +6 -0
  279. runbooks-0.7.5/src/runbooks.egg-info/requires.txt +20 -0
  280. runbooks-0.7.5/src/runbooks.egg-info/top_level.txt +3 -0
  281. runbooks-0.7.5/uv.lock +5257 -0
  282. runbooks-0.2.5/PKG-INFO +0 -439
  283. runbooks-0.2.5/README.md +0 -176
  284. runbooks-0.2.5/pyproject.toml +0 -160
  285. runbooks-0.2.5/src/runbooks/__init__.py +0 -7
  286. runbooks-0.2.5/src/runbooks/aws/__init__.py +0 -58
  287. runbooks-0.2.5/src/runbooks/aws/dynamodb_operations.py +0 -231
  288. runbooks-0.2.5/src/runbooks/aws/ec2_copy_image_cross-region.py +0 -195
  289. runbooks-0.2.5/src/runbooks/aws/ec2_describe_instances.py +0 -202
  290. runbooks-0.2.5/src/runbooks/aws/ec2_ebs_snapshots_delete.py +0 -186
  291. runbooks-0.2.5/src/runbooks/aws/ec2_run_instances.py +0 -207
  292. runbooks-0.2.5/src/runbooks/aws/ec2_start_stop_instances.py +0 -199
  293. runbooks-0.2.5/src/runbooks/aws/ec2_terminate_instances.py +0 -143
  294. runbooks-0.2.5/src/runbooks/aws/ec2_unused_eips.py +0 -196
  295. runbooks-0.2.5/src/runbooks/aws/ec2_unused_volumes.py +0 -184
  296. runbooks-0.2.5/src/runbooks/aws/s3_create_bucket.py +0 -140
  297. runbooks-0.2.5/src/runbooks/aws/s3_list_buckets.py +0 -152
  298. runbooks-0.2.5/src/runbooks/aws/s3_list_objects.py +0 -151
  299. runbooks-0.2.5/src/runbooks/aws/s3_object_operations.py +0 -183
  300. runbooks-0.2.5/src/runbooks/aws/tagging_lambda_handler.py +0 -172
  301. runbooks-0.2.5/src/runbooks/python101/calculator.py +0 -34
  302. runbooks-0.2.5/src/runbooks/python101/config.py +0 -1
  303. runbooks-0.2.5/src/runbooks/python101/exceptions.py +0 -16
  304. runbooks-0.2.5/src/runbooks/python101/file_manager.py +0 -218
  305. runbooks-0.2.5/src/runbooks/python101/toolkit.py +0 -153
  306. runbooks-0.2.5/src/runbooks.egg-info/PKG-INFO +0 -439
  307. runbooks-0.2.5/src/runbooks.egg-info/SOURCES.txt +0 -65
  308. runbooks-0.2.5/src/runbooks.egg-info/entry_points.txt +0 -3
  309. runbooks-0.2.5/src/runbooks.egg-info/requires.txt +0 -39
  310. runbooks-0.2.5/src/runbooks.egg-info/top_level.txt +0 -1
  311. {runbooks-0.2.5 โ†’ runbooks-0.7.5}/LICENSE +0 -0
  312. /runbooks-0.2.5/src/runbooks/security_baseline/__init__.py โ†’ /runbooks-0.7.5/references/.gitkeep +0 -0
  313. /runbooks-0.2.5/src/runbooks/utils/__init__.py โ†’ /runbooks-0.7.5/reports/.gitkeep +0 -0
  314. {runbooks-0.2.5 โ†’ runbooks-0.7.5}/setup.cfg +0 -0
  315. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/checklist/__init__.py +0 -0
  316. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/checklist/account_level_bucket_public_access.py +0 -0
  317. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/checklist/direct_attached_policy.py +0 -0
  318. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/checklist/iam_password_policy.py +0 -0
  319. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/checklist/iam_user_mfa.py +0 -0
  320. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/checklist/multi_region_trail.py +0 -0
  321. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/checklist/root_mfa.py +0 -0
  322. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/checklist/root_usage.py +0 -0
  323. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/checklist/trail_enabled.py +0 -0
  324. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/checklist/trusted_advisor.py +0 -0
  325. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/utils/__init__.py +0 -0
  326. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/utils/enums.py +0 -0
  327. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/utils/language.py +0 -0
  328. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/utils/level_const.py +0 -0
  329. {runbooks-0.2.5/src/runbooks/security_baseline โ†’ runbooks-0.7.5/src/runbooks/security}/utils/permission_list.py +0 -0
  330. {runbooks-0.2.5 โ†’ runbooks-0.7.5}/src/runbooks/utils/logger.py +0 -0
  331. {runbooks-0.2.5 โ†’ runbooks-0.7.5}/src/runbooks.egg-info/dependency_links.txt +0 -0
runbooks-0.7.5/.actrc ADDED
@@ -0,0 +1,6 @@
1
+ --container-architecture linux/amd64
2
+ --bind
3
+ -P ubuntu-latest=nnthanh101/runbooks:latest
4
+ -P ubuntu-22.04=nnthanh101/runbooks:latest
5
+ -P ubuntu-20.04=nnthanh101/runbooks:latest
6
+ --platform nnthanh101/runbooks
@@ -0,0 +1,202 @@
1
+ # Data
2
+ /data/
3
+
4
+ # Mac OS-specific storage files
5
+ .DS_Store
6
+
7
+ # vim
8
+ *.swp
9
+ *.swo
10
+
11
+ ## https://github.com/github/gitignore/blob/4488915eec0b3a45b5c63ead28f286819c0917de/Python.gitignore
12
+
13
+ # Byte-compiled / optimized / DLL files
14
+ __pycache__/
15
+ *.py[cod]
16
+ *$py.class
17
+
18
+ # C extensions
19
+ *.so
20
+
21
+ # Distribution / packaging
22
+ .Python
23
+ build/
24
+ develop-eggs/
25
+ # dist/
26
+ downloads/
27
+ eggs/
28
+ .eggs/
29
+ lib/
30
+ lib64/
31
+ parts/
32
+ sdist/
33
+ var/
34
+ wheels/
35
+ share/python-wheels/
36
+ *.egg-info/
37
+ .installed.cfg
38
+ *.egg
39
+ MANIFEST
40
+
41
+ # PyInstaller
42
+ # Usually these files are written by a python script from a template
43
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
44
+ *.manifest
45
+ *.spec
46
+
47
+ # Installer logs
48
+ pip-log.txt
49
+ pip-delete-this-directory.txt
50
+
51
+ # Unit test / coverage reports
52
+ htmlcov/
53
+ .tox/
54
+ .nox/
55
+ .coverage
56
+ .coverage.*
57
+ .cache
58
+ nosetests.xml
59
+ coverage.xml
60
+ *.cover
61
+ *.py,cover
62
+ .hypothesis/
63
+ .pytest_cache/
64
+ cover/
65
+
66
+ # Translations
67
+ *.mo
68
+ *.pot
69
+
70
+ # Django stuff:
71
+ *.log
72
+ local_settings.py
73
+ db.sqlite3
74
+ db.sqlite3-journal
75
+
76
+ # Flask stuff:
77
+ instance/
78
+ .webassets-cache
79
+
80
+ # Scrapy stuff:
81
+ .scrapy
82
+
83
+ # MkDocs documentation
84
+ docs/site/
85
+
86
+ # PyBuilder
87
+ .pybuilder/
88
+ target/
89
+
90
+ # Jupyter Notebook
91
+ .ipynb_checkpoints
92
+
93
+ # IPython
94
+ profile_default/
95
+ ipython_config.py
96
+
97
+ # pyenv
98
+ # For a library or package, you might want to ignore these files since the code is
99
+ # intended to run in multiple environments; otherwise, check them in:
100
+ # .python-version
101
+
102
+ # pipenv
103
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
104
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
105
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
106
+ # install all needed dependencies.
107
+ #Pipfile.lock
108
+
109
+ # UV
110
+ # Similar to Pipfile.lock, it is generally recommended to include uv.lock in version control.
111
+ # This is especially recommended for binary packages to ensure reproducibility, and is more
112
+ # commonly ignored for libraries.
113
+ #uv.lock
114
+
115
+ # poetry
116
+ # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
117
+ # This is especially recommended for binary packages to ensure reproducibility, and is more
118
+ # commonly ignored for libraries.
119
+ # https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
120
+ #poetry.lock
121
+
122
+ # pdm
123
+ # Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
124
+ #pdm.lock
125
+ # pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
126
+ # in version control.
127
+ # https://pdm.fming.dev/latest/usage/project/#working-with-version-control
128
+ # https://pdm.fming.dev/#use-with-ide
129
+ .pdm.toml
130
+ .pdm-python
131
+ .pdm-build/
132
+
133
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
134
+ __pypackages__/
135
+
136
+ # Celery stuff
137
+ celerybeat-schedule
138
+ celerybeat.pid
139
+
140
+ # SageMath parsed files
141
+ *.sage.py
142
+
143
+ # Environments
144
+ .env
145
+ .venv
146
+ env/
147
+ venv/
148
+ ENV/
149
+ env.bak/
150
+ venv.bak/
151
+
152
+ # Spyder project settings
153
+ .spyderproject
154
+ .spyproject
155
+
156
+ # Rope project settings
157
+ .ropeproject
158
+
159
+ # mkdocs documentation
160
+ /site
161
+
162
+ # mypy
163
+ .mypy_cache/
164
+ .dmypy.json
165
+ dmypy.json
166
+
167
+ # Pyre type checker
168
+ .pyre/
169
+
170
+ # pytype static type analyzer
171
+ .pytype/
172
+
173
+ # Cython debug symbols
174
+ cython_debug/
175
+
176
+ # PyCharm
177
+ # JetBrains specific template is maintained in a separate JetBrains.gitignore that can
178
+ # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
179
+ # and can be added to the global gitignore or merged into this file. For a more nuclear
180
+ # option (not recommended) you can uncomment the following to ignore the entire idea folder.
181
+ #.idea/
182
+
183
+ # PyPI configuration file
184
+ .pypirc
185
+ notebooks/.jupyter
186
+
187
+ .aws/
188
+ src/runbooks/security_baseline/results
189
+ src/jupyter-agent/tmp
190
+ certificate.pem
191
+ .tunnel.env
192
+ crewai/agentic_rag/test_results
193
+ crewai/agentic_rag/sit_test_env
194
+ ## Landing Page Capability (MVP 1)
195
+ # crewai/swe/output
196
+ # crewai/crewai_template
197
+ # crewai/swe/node_modules
198
+ # projects/swe/
199
+ *storybook.log
200
+ storybook-static
201
+ test_logs_*
202
+ reports/tests
@@ -0,0 +1,3 @@
1
+ [submodule "README/cloud-foundations-templates"]
2
+ path = README/cloud-foundations-templates
3
+ url = https://github.com/cloud-foundations-on-aws/cloud-foundations-templates
@@ -0,0 +1,10 @@
1
+ repos:
2
+ - repo: https://github.com/astral-sh/ruff-pre-commit
3
+ ## Ruff version.
4
+ rev: v0.9.1
5
+ hooks:
6
+ ## Run the linter.
7
+ - id: ruff
8
+ args: [ --fix ]
9
+ ## Run the formatter.
10
+ - id: ruff-format
@@ -0,0 +1 @@
1
+ 3.13
@@ -0,0 +1,38 @@
1
+ ### 0.2.5 (2025-01-25)
2
+
3
+ ##### New Features
4
+
5
+ * [ ] ...
6
+
7
+ ##### New Documentation
8
+
9
+ ##### Refactor
10
+
11
+ ##### Bug Fixes
12
+
13
+
14
+ ---
15
+
16
+ ### 0.1.0 (2025-01-05)
17
+
18
+ ##### New Features
19
+
20
+ * [x] 1st-Init [Cookiecutter Data Science & Machine Learning](https://github.com/drivendataorg/cookiecutter-data-science)
21
+ * [x] 1st-Init Project Documentation using `mkdocs`
22
+
23
+ ##### CloudOps/FinOps Project Template
24
+
25
+ Features:
26
+ - [x] ๐Ÿ› ๏ธ configuration in a single file [`pyproject.toml`](pyproject.toml)
27
+ - [x] ๐Ÿ“ฆ [`uv`](https://docs.astral.sh/uv/) as package manager
28
+ - [x] ๐Ÿ’… [`ruff`](https://docs.astral.sh/ruff/) for linting and formatting
29
+ - [x] ๐Ÿงช [`pytest`](https://docs.pytest.org/en/stable/)
30
+ - [x] ๐Ÿงน [`Taskfile`](Taskfile) with code quality checks
31
+ - [x] ๐Ÿ“š Auto API Document Generation
32
+ - [ ] **CLI Tools** โ€“ Typer simplifies automation for AWS resources.
33
+ - [x] **Logging** โ€“ Loguru ensures structured logs for debugging.
34
+ - [x] ๐Ÿณ CI/CD Optimized Docker Image runs when a new *release* is created pushing to gh registry
35
+ - [x] ๐Ÿฆพ GitHub actions:
36
+ - [x] auto publish to [`pypi`](https://pypi.org/) on push on `main`
37
+ - [ ] auto creating a new tag on push on `main`, sync versions
38
+ - [x] run `tests` and `lint` on `dev` and `main` when a PR is open
@@ -0,0 +1,30 @@
1
+ ## Source distribution contents (minimized)
2
+
3
+ # Essential project metadata
4
+ include pyproject.toml
5
+ include README.md
6
+ include LICENSE
7
+
8
+ # Package source (only the runbooks package)
9
+ graft src/runbooks
10
+
11
+ # Exclude everything else that's not explicitly included
12
+ prune tests
13
+ prune README
14
+ prune ai-engineering
15
+ prune aws-iac-agents
16
+ prune crewai
17
+ prune cloud-foundations-templates
18
+ prune projects
19
+ prune notebooks
20
+ prune models
21
+ prune mcp
22
+ prune openwebui
23
+ prune docs
24
+ prune dist
25
+ prune .github
26
+ prune .devcontainer
27
+ prune .vscode
28
+
29
+ # Exclude common junk files
30
+ global-exclude *.pyc *.pyo *.pyd __pycache__ .DS_Store