runbooks 0.1.7__py3-none-any.whl → 0.1.9__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.
- runbooks/__init__.py +1 -1
- runbooks/aws/__init__.py +58 -0
- runbooks/aws/dynamodb_operations.py +231 -0
- runbooks/aws/ec2_copy_image_cross-region.py +195 -0
- runbooks/aws/ec2_describe_instances.py +202 -0
- runbooks/aws/ec2_ebs_snapshots_delete.py +186 -0
- runbooks/aws/ec2_run_instances.py +207 -0
- runbooks/aws/ec2_start_stop_instances.py +199 -0
- runbooks/aws/ec2_terminate_instances.py +143 -0
- runbooks/aws/ec2_unused_eips.py +196 -0
- runbooks/aws/ec2_unused_volumes.py +184 -0
- runbooks/aws/s3_create_bucket.py +140 -0
- runbooks/aws/s3_list_buckets.py +152 -0
- runbooks/aws/s3_list_objects.py +151 -0
- runbooks/aws/s3_object_operations.py +183 -0
- runbooks/aws/tagging_lambda_handler.py +172 -0
- runbooks/python101/calculator.py +34 -0
- runbooks/python101/config.py +1 -0
- runbooks/python101/exceptions.py +16 -0
- runbooks/python101/file_manager.py +218 -0
- runbooks/python101/toolkit.py +153 -0
- runbooks/security_baseline/__init__.py +0 -0
- runbooks/security_baseline/checklist/__init__.py +18 -0
- runbooks/security_baseline/checklist/account_level_bucket_public_access.py +87 -0
- runbooks/security_baseline/checklist/alternate_contacts.py +66 -0
- runbooks/security_baseline/checklist/bucket_public_access.py +83 -0
- runbooks/security_baseline/checklist/cloudwatch_alarm_configuration.py +67 -0
- runbooks/security_baseline/checklist/direct_attached_policy.py +70 -0
- runbooks/security_baseline/checklist/guardduty_enabled.py +72 -0
- runbooks/security_baseline/checklist/iam_password_policy.py +44 -0
- runbooks/security_baseline/checklist/iam_user_mfa.py +39 -0
- runbooks/security_baseline/checklist/multi_region_instance_usage.py +56 -0
- runbooks/security_baseline/checklist/multi_region_trail.py +65 -0
- runbooks/security_baseline/checklist/root_access_key.py +72 -0
- runbooks/security_baseline/checklist/root_mfa.py +39 -0
- runbooks/security_baseline/checklist/root_usage.py +128 -0
- runbooks/security_baseline/checklist/trail_enabled.py +69 -0
- runbooks/security_baseline/checklist/trusted_advisor.py +24 -0
- runbooks/security_baseline/report_generator.py +150 -0
- runbooks/security_baseline/run_script.py +76 -0
- runbooks/security_baseline/security_baseline_tester.py +184 -0
- runbooks/security_baseline/utils/__init__.py +2 -0
- runbooks/security_baseline/utils/common.py +109 -0
- runbooks/security_baseline/utils/enums.py +44 -0
- runbooks/security_baseline/utils/language.py +762 -0
- runbooks/security_baseline/utils/level_const.py +5 -0
- runbooks/security_baseline/utils/permission_list.py +26 -0
- runbooks/utils/__init__.py +0 -0
- runbooks/utils/logger.py +36 -0
- {runbooks-0.1.7.dist-info → runbooks-0.1.9.dist-info}/METADATA +2 -2
- runbooks-0.1.9.dist-info/RECORD +54 -0
- runbooks-0.1.7.dist-info/RECORD +0 -6
- {runbooks-0.1.7.dist-info → runbooks-0.1.9.dist-info}/WHEEL +0 -0
- {runbooks-0.1.7.dist-info → runbooks-0.1.9.dist-info}/entry_points.txt +0 -0
- {runbooks-0.1.7.dist-info → runbooks-0.1.9.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,26 @@
|
|
1
|
+
permissions = [
|
2
|
+
"sts:GetCallerIdentity",
|
3
|
+
"ec2:DescribeRegions",
|
4
|
+
"ec2:DescribeInstances",
|
5
|
+
"account:GetAlternateContact",
|
6
|
+
"iam:GenerateCredentialReport",
|
7
|
+
"iam:GetCredentialReport",
|
8
|
+
"iam:GetAccountPasswordPolicy",
|
9
|
+
"iam:ListUsers",
|
10
|
+
"iam:ListAttachedUserPolicies",
|
11
|
+
"iam:ListUserPolicies",
|
12
|
+
"cloudtrail:DescribeTrails",
|
13
|
+
"cloudtrail:GetTrailStatus",
|
14
|
+
"cloudtrail:GetTrail",
|
15
|
+
"s3:GetAccountPublicAccessBlock",
|
16
|
+
"s3:GetBucketPublicAccessBlock",
|
17
|
+
"s3:ListBucket",
|
18
|
+
"s3:ListAllMyBuckets",
|
19
|
+
"cloudwatch:DescribeAlarms",
|
20
|
+
"ec2:DescribeNetworkInterfaces",
|
21
|
+
"ec2:DescribeVpcs",
|
22
|
+
"ec2:DescribeSubnets",
|
23
|
+
"support:DescribeTrustedAdvisorChecks",
|
24
|
+
"guardduty:ListDetectors",
|
25
|
+
"guardduty:GetDetector",
|
26
|
+
]
|
File without changes
|
runbooks/utils/logger.py
ADDED
@@ -0,0 +1,36 @@
|
|
1
|
+
import logging
|
2
|
+
|
3
|
+
|
4
|
+
## ==============================
|
5
|
+
## CONFIGURE LOGGING
|
6
|
+
## ==============================
|
7
|
+
def configure_logger(module_name: str) -> logging.Logger:
|
8
|
+
"""
|
9
|
+
Configures and returns a logger for a given module.
|
10
|
+
|
11
|
+
Args:
|
12
|
+
module_name (str): The name of the module using the logger.
|
13
|
+
|
14
|
+
Returns:
|
15
|
+
logging.Logger: Configured logger instance.
|
16
|
+
"""
|
17
|
+
logger = logging.getLogger(module_name)
|
18
|
+
logger.setLevel(logging.INFO)
|
19
|
+
|
20
|
+
## Create formatter
|
21
|
+
formatter = logging.Formatter("%(asctime)s - %(levelname)s - %(message)s")
|
22
|
+
|
23
|
+
## Console Handler
|
24
|
+
console_handler = logging.StreamHandler()
|
25
|
+
console_handler.setFormatter(formatter)
|
26
|
+
|
27
|
+
## File Handler
|
28
|
+
file_handler = logging.FileHandler(f"{module_name}.log")
|
29
|
+
file_handler.setFormatter(formatter)
|
30
|
+
|
31
|
+
## Add handlers if not already added
|
32
|
+
if not logger.handlers:
|
33
|
+
logger.addHandler(console_handler)
|
34
|
+
logger.addHandler(file_handler)
|
35
|
+
|
36
|
+
return logger
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: runbooks
|
3
|
-
Version: 0.1.
|
3
|
+
Version: 0.1.9
|
4
4
|
Summary: CloudOps Automation Toolkit for DevOps and SRE teams.
|
5
5
|
Author-email: runbooks maintainers <nnthanh101@gmail.com>
|
6
6
|
License: Apache License
|
@@ -255,7 +255,7 @@ Requires-Dist: pandas>=2.2.3
|
|
255
255
|
Requires-Dist: plotly>=5.24.1
|
256
256
|
Requires-Dist: vizro>=0.1.30
|
257
257
|
Requires-Dist: vizro-ai>=0.3.2
|
258
|
-
Requires-Dist: runbooks>=0.1.
|
258
|
+
Requires-Dist: runbooks>=0.1.9
|
259
259
|
|
260
260
|
# 🔥 CloudOps Automation at Scale 🦅
|
261
261
|
|
@@ -0,0 +1,54 @@
|
|
1
|
+
runbooks/__init__.py,sha256=kmipbAcnK8gk4TiDgbq9XPLad1-sZSLzdCwlwWIZ8i0,133
|
2
|
+
runbooks/aws/__init__.py,sha256=iswGPspnFaHLE_Zzw2uRraYI2zvJ1Nma5PbdOiBUdEo,1646
|
3
|
+
runbooks/aws/dynamodb_operations.py,sha256=c91YACBHnOELL8Ufj7tRQws9azGqnB6flQsacTi57xQ,6490
|
4
|
+
runbooks/aws/ec2_copy_image_cross-region.py,sha256=2Afoo2ddzswgtdhdzsDq5aZiqXkQ0_kUyRdHbhkaLAA,6017
|
5
|
+
runbooks/aws/ec2_describe_instances.py,sha256=-Wbp0wQakCa7lJ2vfqR3P-lXN5s0jqjBHYhppiZEtSI,6543
|
6
|
+
runbooks/aws/ec2_ebs_snapshots_delete.py,sha256=LwaGGAg_7tdqic1thBLywlHKjMSMyye2B79d4yNtK78,5886
|
7
|
+
runbooks/aws/ec2_run_instances.py,sha256=wE7G8Xn10gG25Smu4SHpfc54rFly40Ba09Cv76XJYGg,6803
|
8
|
+
runbooks/aws/ec2_start_stop_instances.py,sha256=a0yUy9Zb2JmJc7wsGh3UXJZ5P0CI1omRaRCCpV5jOxE,5939
|
9
|
+
runbooks/aws/ec2_terminate_instances.py,sha256=p8ZHHDkT--rlOFah82hG6SJpty4rYZa4hn3yq4MqvQI,4692
|
10
|
+
runbooks/aws/ec2_unused_eips.py,sha256=04pjoeSwm-CfJKT6u9XuHa_D-iK5r9D65FaisQy00Zk,5535
|
11
|
+
runbooks/aws/ec2_unused_volumes.py,sha256=x2kcYV6DUqw77AaKILLtXYfrzAnEg3uoPJD6h5ad2Yg,5686
|
12
|
+
runbooks/aws/s3_create_bucket.py,sha256=-oSYKJ_tCW5fuspuQUYSw8Y_Y9_oqzn9dbmmO80UHc4,4182
|
13
|
+
runbooks/aws/s3_list_buckets.py,sha256=sHh05_KrvpLzOlGZJy8nxTAfTuMaVtMIhb3A9nLh_rQ,4752
|
14
|
+
runbooks/aws/s3_list_objects.py,sha256=VYk-ljQbgXsrt9d-xCJoXe6hPeCgkCa97pf-z7EOk08,4595
|
15
|
+
runbooks/aws/s3_object_operations.py,sha256=46l8v0Xt8pJhTuMjCyLDSLsU06WGxWKad99nQ91o2hg,5400
|
16
|
+
runbooks/aws/tagging_lambda_handler.py,sha256=o4hTUS8ta99tVS4kZ-w_j329NArGZDi46XB-AdvWi4M,5367
|
17
|
+
runbooks/python101/calculator.py,sha256=FEWSHyC6vV0Qoy13Fz-bE-mWP6Xs_yvu39iji260jDs,1365
|
18
|
+
runbooks/python101/config.py,sha256=ILwA7ZyjEDHNdDbOArFAZkDSB-saF-tzeE7xmJ2CtbE,104
|
19
|
+
runbooks/python101/exceptions.py,sha256=4KuSN-Kz-Xx17dU8i4rMbECANA4IXdT5dAposuv3tZc,319
|
20
|
+
runbooks/python101/file_manager.py,sha256=7QLxO2eiwlgcTpdnbd80TIP1CNFGz0ZGpGKnBZvpdAk,7163
|
21
|
+
runbooks/python101/toolkit.py,sha256=bWoP_r8GhsEPFsgTKSeJiilcjxO4A1fynjSDSOnlmzQ,3709
|
22
|
+
runbooks/security_baseline/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
23
|
+
runbooks/security_baseline/report_generator.py,sha256=rHh9d6OBg_Qcy59ZJSCfZu0ur-LeE_dSIc2LJQAtWMY,6333
|
24
|
+
runbooks/security_baseline/run_script.py,sha256=lrvbcOtofspBnI17YYw2q_3CG4q3awoEnsaZ2HcGZ_E,2084
|
25
|
+
runbooks/security_baseline/security_baseline_tester.py,sha256=mOVvWWXByaQklth0QeEHxGCMT7bVGrUIVRgmUhINeg0,7354
|
26
|
+
runbooks/security_baseline/checklist/__init__.py,sha256=gXjVSA36zv5jCkaw3XASG8DpLPo6Fu8yxquUdX8YSFY,455
|
27
|
+
runbooks/security_baseline/checklist/account_level_bucket_public_access.py,sha256=_sILKNiBg-33wUUxoZhUq2O-x-xC2zZU9cQUehYMxTs,3386
|
28
|
+
runbooks/security_baseline/checklist/alternate_contacts.py,sha256=MqHcKNwwmNKTna0bOdUPPNj2ytobpDMGPAUW2XhvRxI,3043
|
29
|
+
runbooks/security_baseline/checklist/bucket_public_access.py,sha256=FmNpOOUPVTTTZEOrUGZOVEQab-VbwrrG1yoNNrj-5bc,3307
|
30
|
+
runbooks/security_baseline/checklist/cloudwatch_alarm_configuration.py,sha256=LmErieAcBLO8qmuwoHfrJnLKrR_gHEMcF0TI0oZDcMc,2262
|
31
|
+
runbooks/security_baseline/checklist/direct_attached_policy.py,sha256=zjM3olLXjlaHQxHEOYyifTiugICuLAAOCMxn9pSLKFw,2568
|
32
|
+
runbooks/security_baseline/checklist/guardduty_enabled.py,sha256=uvjgRqpjPiTd-d762P2jLPHCiHuGPkTvrXOwhOpLcjI,2448
|
33
|
+
runbooks/security_baseline/checklist/iam_password_policy.py,sha256=bKIxhWQQ4xuE_uxtWfm0LXCqTFRQ-ygafxMKqeFFGw4,1570
|
34
|
+
runbooks/security_baseline/checklist/iam_user_mfa.py,sha256=H3mG_rC01iF-lbKCT7IqOEyShby9QkSADXE9BOt1DyQ,1234
|
35
|
+
runbooks/security_baseline/checklist/multi_region_instance_usage.py,sha256=em2RvxW7rQK4Nv6APqE3mQJ7q4mO8e10Z8uymfyVvSY,1944
|
36
|
+
runbooks/security_baseline/checklist/multi_region_trail.py,sha256=OCAejEa59rKUWU-vnVQaNxOg1wOAUQZdGzyI7r25vi4,2293
|
37
|
+
runbooks/security_baseline/checklist/root_access_key.py,sha256=SUPpV3n3Wnx7VI7cWldjE6yYDn09dUnqkaiNykvN4f4,2504
|
38
|
+
runbooks/security_baseline/checklist/root_mfa.py,sha256=X8PPzRLgaNhd-MMUjm432OkjQ1RqGis-pEhQUgqwVa8,1293
|
39
|
+
runbooks/security_baseline/checklist/root_usage.py,sha256=20XEtXC2seJnUW0clME3YGrosRYP5yRTi7a_Rr5YpdA,4658
|
40
|
+
runbooks/security_baseline/checklist/trail_enabled.py,sha256=kcX7sgB7NO2YbN8i3SDkB1m5Bb00Wu6JX9cniGBsSPw,2289
|
41
|
+
runbooks/security_baseline/checklist/trusted_advisor.py,sha256=zsLQf-mFeu3aiOhGndrojoa5K4QiI1Buk5rC5Hfg_gA,674
|
42
|
+
runbooks/security_baseline/utils/__init__.py,sha256=fEyCpWrJ6S6Z5rdHJGf7WRMnRNoZ6th5HmXbESc6guM,96
|
43
|
+
runbooks/security_baseline/utils/common.py,sha256=hCgYtgIgzV5Z2LCeXSDXd7LNxYg9NE2s_c-d9w43a-Y,3399
|
44
|
+
runbooks/security_baseline/utils/enums.py,sha256=BGr8EgwZrWsU8kvWkwWsPqELUPGBc2tvJ5SzN9XhWQU,1258
|
45
|
+
runbooks/security_baseline/utils/language.py,sha256=MrSAojEyjHqRDDALdk002snj4xnFbwGgIjAc2buJ8g0,60448
|
46
|
+
runbooks/security_baseline/utils/level_const.py,sha256=l8uYBmgEMjIQTGVVuXPAfDd_Psl6jNfTQw2isI43zO8,88
|
47
|
+
runbooks/security_baseline/utils/permission_list.py,sha256=nq06vlILHp9rfnCpJauCmFCOEGdgFMF-XO3uBFrrd-o,767
|
48
|
+
runbooks/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
49
|
+
runbooks/utils/logger.py,sha256=ifxqLjDlZoDaG8rtAGVKLZ5dAwcMn16rB4YgMfeUC3E,972
|
50
|
+
runbooks-0.1.9.dist-info/METADATA,sha256=CJ9ddkFV-chd3Vv9OO11Iuaf5_fHSXBxhaVXwpqXOLc,24982
|
51
|
+
runbooks-0.1.9.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
52
|
+
runbooks-0.1.9.dist-info/entry_points.txt,sha256=dxS4lhytftkG2sBS-tgSRKoWtK-AgQmiAJ4VxJY3f5A,115
|
53
|
+
runbooks-0.1.9.dist-info/top_level.txt,sha256=1EwNxU12QGOLtO0Naw75hXIdSIhgV_b-z_6vhlhVkhM,9
|
54
|
+
runbooks-0.1.9.dist-info/RECORD,,
|
runbooks-0.1.7.dist-info/RECORD
DELETED
@@ -1,6 +0,0 @@
|
|
1
|
-
runbooks/__init__.py,sha256=iIM66NiwDJHBC3CkhiU8ViMtCXg3bYV5hQ3ENU1rJFk,133
|
2
|
-
runbooks-0.1.7.dist-info/METADATA,sha256=Y3cpxx_9VkdEGD4dwaeo6VGIUzfefWqCtGL_f7Hiqs0,24982
|
3
|
-
runbooks-0.1.7.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
4
|
-
runbooks-0.1.7.dist-info/entry_points.txt,sha256=dxS4lhytftkG2sBS-tgSRKoWtK-AgQmiAJ4VxJY3f5A,115
|
5
|
-
runbooks-0.1.7.dist-info/top_level.txt,sha256=1EwNxU12QGOLtO0Naw75hXIdSIhgV_b-z_6vhlhVkhM,9
|
6
|
-
runbooks-0.1.7.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|