runbooks 0.2.2__tar.gz → 0.2.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 (67) hide show
  1. {runbooks-0.2.2/src/runbooks.egg-info → runbooks-0.2.5}/PKG-INFO +7 -3
  2. {runbooks-0.2.2 → runbooks-0.2.5}/pyproject.toml +10 -7
  3. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/__init__.py +1 -1
  4. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/report_template_en.html +1 -1
  5. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/report_template_jp.html +1 -1
  6. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/report_template_kr.html +1 -1
  7. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/report_template_vn.html +1 -1
  8. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/run_script.py +3 -1
  9. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/security_baseline_tester.py +10 -3
  10. {runbooks-0.2.2 → runbooks-0.2.5/src/runbooks.egg-info}/PKG-INFO +7 -3
  11. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks.egg-info/requires.txt +1 -1
  12. {runbooks-0.2.2 → runbooks-0.2.5}/LICENSE +0 -0
  13. {runbooks-0.2.2 → runbooks-0.2.5}/README.md +0 -0
  14. {runbooks-0.2.2 → runbooks-0.2.5}/setup.cfg +0 -0
  15. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/aws/__init__.py +0 -0
  16. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/aws/dynamodb_operations.py +0 -0
  17. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/aws/ec2_copy_image_cross-region.py +0 -0
  18. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/aws/ec2_describe_instances.py +0 -0
  19. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/aws/ec2_ebs_snapshots_delete.py +0 -0
  20. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/aws/ec2_run_instances.py +0 -0
  21. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/aws/ec2_start_stop_instances.py +0 -0
  22. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/aws/ec2_terminate_instances.py +0 -0
  23. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/aws/ec2_unused_eips.py +0 -0
  24. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/aws/ec2_unused_volumes.py +0 -0
  25. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/aws/s3_create_bucket.py +0 -0
  26. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/aws/s3_list_buckets.py +0 -0
  27. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/aws/s3_list_objects.py +0 -0
  28. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/aws/s3_object_operations.py +0 -0
  29. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/aws/tagging_lambda_handler.py +0 -0
  30. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/python101/calculator.py +0 -0
  31. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/python101/config.py +0 -0
  32. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/python101/exceptions.py +0 -0
  33. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/python101/file_manager.py +0 -0
  34. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/python101/toolkit.py +0 -0
  35. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/__init__.py +0 -0
  36. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/checklist/__init__.py +0 -0
  37. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/checklist/account_level_bucket_public_access.py +0 -0
  38. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/checklist/alternate_contacts.py +0 -0
  39. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/checklist/bucket_public_access.py +0 -0
  40. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/checklist/cloudwatch_alarm_configuration.py +0 -0
  41. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/checklist/direct_attached_policy.py +0 -0
  42. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/checklist/guardduty_enabled.py +0 -0
  43. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/checklist/iam_password_policy.py +0 -0
  44. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/checklist/iam_user_mfa.py +0 -0
  45. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/checklist/multi_region_instance_usage.py +0 -0
  46. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/checklist/multi_region_trail.py +0 -0
  47. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/checklist/root_access_key.py +0 -0
  48. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/checklist/root_mfa.py +0 -0
  49. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/checklist/root_usage.py +0 -0
  50. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/checklist/trail_enabled.py +0 -0
  51. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/checklist/trusted_advisor.py +0 -0
  52. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/config-origin.json +0 -0
  53. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/config.json +0 -0
  54. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/permission.json +0 -0
  55. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/report_generator.py +0 -0
  56. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/utils/__init__.py +0 -0
  57. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/utils/common.py +0 -0
  58. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/utils/enums.py +0 -0
  59. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/utils/language.py +0 -0
  60. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/utils/level_const.py +0 -0
  61. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/security_baseline/utils/permission_list.py +0 -0
  62. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/utils/__init__.py +0 -0
  63. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks/utils/logger.py +0 -0
  64. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks.egg-info/SOURCES.txt +0 -0
  65. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks.egg-info/dependency_links.txt +0 -0
  66. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks.egg-info/entry_points.txt +0 -0
  67. {runbooks-0.2.2 → runbooks-0.2.5}/src/runbooks.egg-info/top_level.txt +0 -0
@@ -1,8 +1,8 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: runbooks
3
- Version: 0.2.2
3
+ Version: 0.2.5
4
4
  Summary: CloudOps Automation Toolkit for DevOps and SRE teams.
5
- Author-email: runbooks maintainers <nnthanh101@gmail.com>
5
+ Author-email: Runbooks Maintainers <nnthanh101@gmail.com>
6
6
  License: Apache License
7
7
  Version 2.0, January 2004
8
8
  http://www.apache.org/licenses/
@@ -205,6 +205,10 @@ License: Apache License
205
205
  See the License for the specific language governing permissions and
206
206
  limitations under the License.
207
207
 
208
+ Project-URL: Homepage, https://cloudops.oceansoft.io
209
+ Project-URL: Repository, https://github.com/1xOps/CloudOps-Runbooks
210
+ Project-URL: Documentation, https://cloudops.oceansoft.io/runbooks/
211
+ Project-URL: Issues, https://github.com/nnthanh101/template/issues
208
212
  Keywords: runbooks,automation,DevOps,SRE,CloudOps
209
213
  Classifier: Development Status :: 5 - Production/Stable
210
214
  Classifier: Environment :: Console
@@ -255,7 +259,7 @@ Requires-Dist: pandas>=2.2.3
255
259
  Requires-Dist: plotly>=5.24.1
256
260
  Requires-Dist: vizro>=0.1.30
257
261
  Requires-Dist: vizro-ai>=0.3.2
258
- Requires-Dist: runbooks>=0.2.2
262
+ Requires-Dist: runbooks>=0.2.5
259
263
 
260
264
  # 🔥 CloudOps Automation at Scale 🦅
261
265
 
@@ -1,19 +1,22 @@
1
+ [project.urls]
2
+ "Homepage" = "https://cloudops.oceansoft.io"
3
+ "Repository" = "https://github.com/1xOps/CloudOps-Runbooks"
4
+ "Documentation" = "https://cloudops.oceansoft.io/runbooks/"
5
+ "Issues" = "https://github.com/nnthanh101/template/issues"
6
+
1
7
  [project]
2
8
  ## Metadata: https://docs.astral.sh/uv/concepts/projects/config/
3
9
  name = "runbooks"
4
10
  ## Incremented for new release
5
- version = "0.2.2"
11
+ version = "0.2.5"
6
12
  description = "CloudOps Automation Toolkit for DevOps and SRE teams."
7
13
  readme = "README.md"
8
14
  requires-python = ">=3.11"
9
15
  license = {file = "LICENSE"}
10
-
11
16
  authors = [
12
- {name = "runbooks maintainers", email = "nnthanh101@gmail.com"},
17
+ { name = "Runbooks Maintainers", email = "nnthanh101@gmail.com" },
13
18
  ]
14
-
15
19
  keywords = ["runbooks", "automation", "DevOps", "SRE", "CloudOps"]
16
-
17
20
  classifiers = [
18
21
  "Development Status :: 5 - Production/Stable",
19
22
  "Environment :: Console",
@@ -85,7 +88,7 @@ dependencies = [
85
88
  "vizro-ai>=0.3.2",
86
89
 
87
90
  ## 1xOps/CloudOps-Runbooks: https://pypi.org/project/runbooks/
88
- "runbooks>=0.2.2"
91
+ "runbooks>=0.2.5"
89
92
  ]
90
93
 
91
94
  [dependency-groups]
@@ -126,7 +129,7 @@ include = ["runbooks*"] ## Include runbooks and its subpackages
126
129
  [tool.versioningit]
127
130
  vcs = "git"
128
131
  tag2version = "v{base}"
129
- default-version = "0.2.2"
132
+ default-version = "0.2.5"
130
133
 
131
134
  [tool.pytest.ini_options]
132
135
  ## Test Configuration
@@ -4,4 +4,4 @@ runbooks
4
4
  Provides utility functions for math operations, AWS S3 interactions, and data management.
5
5
  """
6
6
 
7
- # __version__ = "0.2.2"
7
+ # __version__ = "0.2.5"
@@ -49,7 +49,7 @@
49
49
  <div class="col-6">
50
50
  <table class="table">
51
51
  <tr>
52
- <td>Account</td><td>{{ account_id }}</td>
52
+ <td>AWS Account</td><td>{{ account_id }}</td>
53
53
  </tr>
54
54
  <tr>
55
55
  <td>Generated at</td><td>{{ generated_at }}</td>
@@ -49,7 +49,7 @@
49
49
  <div class="col-6">
50
50
  <table class="table">
51
51
  <tr>
52
- <td>Account</td><td>{{ account_id }}</td>
52
+ <td>AWS Account</td><td>{{ account_id }}</td>
53
53
  </tr>
54
54
  <tr>
55
55
  <td>Generated at</td><td>{{ generated_at }}</td>
@@ -49,7 +49,7 @@
49
49
  <div class="col-6">
50
50
  <table class="table">
51
51
  <tr>
52
- <td>Account</td><td>{{ account_id }}</td>
52
+ <td>AWS Account</td><td>{{ account_id }}</td>
53
53
  </tr>
54
54
  <tr>
55
55
  <td>Generated at</td><td>{{ generated_at }}</td>
@@ -49,7 +49,7 @@
49
49
  <div class="col-6">
50
50
  <table class="table">
51
51
  <tr>
52
- <td>Account</td><td>{{ account_id }}</td>
52
+ <td>AWS Account</td><td>{{ account_id }}</td>
53
53
  </tr>
54
54
  <tr>
55
55
  <td>Generated at</td><td>{{ generated_at }}</td>
@@ -45,6 +45,7 @@ def parse_arguments():
45
45
  default="EN",
46
46
  help="Language for the Security Baseline Report (default: 'EN').",
47
47
  )
48
+ parser.add_argument("--output", default=None, help="Custom output directory for HTML results (default: ./results).")
48
49
  return parser.parse_args()
49
50
 
50
51
 
@@ -61,9 +62,10 @@ def main():
61
62
  logger.info("Starting AWS Security Baseline Tester...")
62
63
  logger.info(f"Using AWS profile: {args.profile}")
63
64
  logger.info(f"Report language: {args.language}")
65
+ logger.info(f"Output directory: {args.output}")
64
66
 
65
67
  ## Instantiate and run the Security Baseline Tester
66
- tester = SecurityBaselineTester(args.profile, args.language)
68
+ tester = SecurityBaselineTester(args.profile, args.language, args.output)
67
69
  tester.run()
68
70
 
69
71
  logger.info("AWS Security Baseline testing completed successfully.")
@@ -17,9 +17,10 @@ from .utils import common, language, level_const
17
17
 
18
18
 
19
19
  class SecurityBaselineTester:
20
- def __init__(self, profile, lang_code):
20
+ def __init__(self, profile, lang_code, output_dir):
21
21
  self.profile = profile
22
22
  self.language = lang_code
23
+ self.output = output_dir
23
24
  self.session = self._create_session()
24
25
  self.config = self._load_config()
25
26
  ## Call module 'language' and pass the string 'lang_code'
@@ -142,8 +143,14 @@ class SecurityBaselineTester:
142
143
  # else:
143
144
  # logging.info(self.translator.translate("results_folder_already_exists"))
144
145
 
145
- script_dir = Path(__file__).resolve().parent
146
- results_dir = script_dir / "results"
146
+ ## ISSUE: creates results/ next to the module files in, e.g, .../site-packages/runbooks/security_baseline/results
147
+ # script_dir = Path(__file__).resolve().parent
148
+ # results_dir = script_dir / "results"
149
+ ## Use the current working directory instead of the script directory
150
+ if self.output:
151
+ results_dir = Path(self.output).resolve()
152
+ else:
153
+ results_dir = Path.cwd() / "results"
147
154
 
148
155
  if not results_dir.exists():
149
156
  results_dir.mkdir(parents=True, exist_ok=True)
@@ -1,8 +1,8 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: runbooks
3
- Version: 0.2.2
3
+ Version: 0.2.5
4
4
  Summary: CloudOps Automation Toolkit for DevOps and SRE teams.
5
- Author-email: runbooks maintainers <nnthanh101@gmail.com>
5
+ Author-email: Runbooks Maintainers <nnthanh101@gmail.com>
6
6
  License: Apache License
7
7
  Version 2.0, January 2004
8
8
  http://www.apache.org/licenses/
@@ -205,6 +205,10 @@ License: Apache License
205
205
  See the License for the specific language governing permissions and
206
206
  limitations under the License.
207
207
 
208
+ Project-URL: Homepage, https://cloudops.oceansoft.io
209
+ Project-URL: Repository, https://github.com/1xOps/CloudOps-Runbooks
210
+ Project-URL: Documentation, https://cloudops.oceansoft.io/runbooks/
211
+ Project-URL: Issues, https://github.com/nnthanh101/template/issues
208
212
  Keywords: runbooks,automation,DevOps,SRE,CloudOps
209
213
  Classifier: Development Status :: 5 - Production/Stable
210
214
  Classifier: Environment :: Console
@@ -255,7 +259,7 @@ Requires-Dist: pandas>=2.2.3
255
259
  Requires-Dist: plotly>=5.24.1
256
260
  Requires-Dist: vizro>=0.1.30
257
261
  Requires-Dist: vizro-ai>=0.3.2
258
- Requires-Dist: runbooks>=0.2.2
262
+ Requires-Dist: runbooks>=0.2.5
259
263
 
260
264
  # 🔥 CloudOps Automation at Scale 🦅
261
265
 
@@ -36,4 +36,4 @@ pandas>=2.2.3
36
36
  plotly>=5.24.1
37
37
  vizro>=0.1.30
38
38
  vizro-ai>=0.3.2
39
- runbooks>=0.2.2
39
+ runbooks>=0.2.5
File without changes
File without changes
File without changes