contentctl 4.2.4__tar.gz → 4.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 (176) hide show
  1. {contentctl-4.2.4 → contentctl-4.2.5}/PKG-INFO +2 -2
  2. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/initialize.py +3 -2
  3. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/contentctl.py +4 -1
  4. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/correlation_search.py +6 -2
  5. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/conf_output.py +2 -9
  6. contentctl-4.2.5/contentctl/templates/README.md +10 -0
  7. {contentctl-4.2.4 → contentctl-4.2.5}/pyproject.toml +2 -2
  8. contentctl-4.2.4/contentctl/templates/README +0 -2
  9. {contentctl-4.2.4 → contentctl-4.2.5}/LICENSE.md +0 -0
  10. {contentctl-4.2.4 → contentctl-4.2.5}/README.md +0 -0
  11. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/__init__.py +0 -0
  12. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/build.py +0 -0
  13. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/convert.py +0 -0
  14. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/deploy_acs.py +0 -0
  15. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/detection_testing/DetectionTestingManager.py +0 -0
  16. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/detection_testing/GitService.py +0 -0
  17. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/detection_testing/generate_detection_coverage_badge.py +0 -0
  18. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/detection_testing/infrastructures/DetectionTestingInfrastructure.py +0 -0
  19. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/detection_testing/infrastructures/DetectionTestingInfrastructureContainer.py +0 -0
  20. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/detection_testing/infrastructures/DetectionTestingInfrastructureServer.py +0 -0
  21. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/detection_testing/progress_bar.py +0 -0
  22. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/detection_testing/views/DetectionTestingView.py +0 -0
  23. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/detection_testing/views/DetectionTestingViewCLI.py +0 -0
  24. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/detection_testing/views/DetectionTestingViewFile.py +0 -0
  25. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/detection_testing/views/DetectionTestingViewWeb.py +0 -0
  26. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/doc_gen.py +0 -0
  27. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/initialize_old.py +0 -0
  28. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/inspect.py +0 -0
  29. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/new_content.py +0 -0
  30. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/release_notes.py +0 -0
  31. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/reporting.py +0 -0
  32. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/test.py +0 -0
  33. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/actions/validate.py +0 -0
  34. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/api.py +0 -0
  35. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/enrichments/attack_enrichment.py +0 -0
  36. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/enrichments/cve_enrichment.py +0 -0
  37. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/enrichments/splunk_app_enrichment.py +0 -0
  38. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/helper/link_validator.py +0 -0
  39. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/helper/logger.py +0 -0
  40. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/helper/splunk_app.py +0 -0
  41. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/helper/utils.py +0 -0
  42. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/input/backend_splunk_ba.py +0 -0
  43. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/input/director.py +0 -0
  44. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/input/new_content_questions.py +0 -0
  45. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/input/sigma_converter.py +0 -0
  46. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/input/ssa_detection_builder.py +0 -0
  47. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/input/yml_reader.py +0 -0
  48. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/abstract_security_content_objects/detection_abstract.py +0 -0
  49. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/abstract_security_content_objects/security_content_object_abstract.py +0 -0
  50. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/alert_action.py +0 -0
  51. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/atomic.py +0 -0
  52. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/base_test.py +0 -0
  53. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/base_test_result.py +0 -0
  54. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/baseline.py +0 -0
  55. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/baseline_tags.py +0 -0
  56. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/config.py +0 -0
  57. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/constants.py +0 -0
  58. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/data_source.py +0 -0
  59. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/deployment.py +0 -0
  60. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/deployment_email.py +0 -0
  61. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/deployment_notable.py +0 -0
  62. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/deployment_phantom.py +0 -0
  63. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/deployment_rba.py +0 -0
  64. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/deployment_scheduling.py +0 -0
  65. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/deployment_slack.py +0 -0
  66. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/detection.py +0 -0
  67. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/detection_tags.py +0 -0
  68. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/enums.py +0 -0
  69. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/errors.py +0 -0
  70. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/event_source.py +0 -0
  71. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/integration_test.py +0 -0
  72. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/integration_test_result.py +0 -0
  73. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/investigation.py +0 -0
  74. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/investigation_tags.py +0 -0
  75. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/lookup.py +0 -0
  76. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/macro.py +0 -0
  77. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/mitre_attack_enrichment.py +0 -0
  78. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/notable_action.py +0 -0
  79. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/notable_event.py +0 -0
  80. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/observable.py +0 -0
  81. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/playbook.py +0 -0
  82. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/playbook_tags.py +0 -0
  83. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/risk_analysis_action.py +0 -0
  84. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/risk_event.py +0 -0
  85. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/risk_object.py +0 -0
  86. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/security_content_object.py +0 -0
  87. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/ssa_detection.py +0 -0
  88. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/ssa_detection_tags.py +0 -0
  89. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/story.py +0 -0
  90. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/story_tags.py +0 -0
  91. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/test_group.py +0 -0
  92. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/threat_object.py +0 -0
  93. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/unit_test.py +0 -0
  94. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/unit_test_attack_data.py +0 -0
  95. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/unit_test_baseline.py +0 -0
  96. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/unit_test_old.py +0 -0
  97. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/unit_test_result.py +0 -0
  98. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/objects/unit_test_ssa.py +0 -0
  99. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/api_json_output.py +0 -0
  100. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/attack_nav_output.py +0 -0
  101. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/attack_nav_writer.py +0 -0
  102. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/ba_yml_output.py +0 -0
  103. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/conf_writer.py +0 -0
  104. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/data_source_writer.py +0 -0
  105. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/detection_writer.py +0 -0
  106. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/doc_md_output.py +0 -0
  107. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/finding_report_writer.py +0 -0
  108. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/jinja_writer.py +0 -0
  109. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/json_writer.py +0 -0
  110. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/new_content_yml_output.py +0 -0
  111. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/svg_output.py +0 -0
  112. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/analyticstories_detections.j2 +0 -0
  113. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/analyticstories_investigations.j2 +0 -0
  114. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/analyticstories_stories.j2 +0 -0
  115. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/app.conf.j2 +0 -0
  116. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/app.manifest.j2 +0 -0
  117. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/collections.j2 +0 -0
  118. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/content-version.j2 +0 -0
  119. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/detection_count.j2 +0 -0
  120. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/detection_coverage.j2 +0 -0
  121. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/doc_detection_page.j2 +0 -0
  122. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/doc_detections.j2 +0 -0
  123. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/doc_navigation.j2 +0 -0
  124. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/doc_navigation_pages.j2 +0 -0
  125. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/doc_playbooks.j2 +0 -0
  126. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/doc_playbooks_page.j2 +0 -0
  127. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/doc_stories.j2 +0 -0
  128. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/doc_story_page.j2 +0 -0
  129. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/es_investigations_investigations.j2 +0 -0
  130. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/es_investigations_stories.j2 +0 -0
  131. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/finding_report.j2 +0 -0
  132. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/header.j2 +0 -0
  133. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/macros.j2 +0 -0
  134. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/panel.j2 +0 -0
  135. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/savedsearches_baselines.j2 +0 -0
  136. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/savedsearches_detections.j2 +0 -0
  137. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/savedsearches_investigations.j2 +0 -0
  138. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/transforms.j2 +0 -0
  139. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/templates/workflow_actions.j2 +0 -0
  140. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/yml_output.py +0 -0
  141. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/output/yml_writer.py +0 -0
  142. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/app_default.yml +0 -0
  143. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/app_template/README/essoc_story_detail.txt +0 -0
  144. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/app_template/README/essoc_summary.txt +0 -0
  145. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/app_template/README/essoc_usage_dashboard.txt +0 -0
  146. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/app_template/README.md +0 -0
  147. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/app_template/default/analytic_stories.conf +0 -0
  148. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/app_template/default/app.conf +0 -0
  149. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/app_template/default/commands.conf +0 -0
  150. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/app_template/default/content-version.conf +0 -0
  151. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/app_template/default/data/ui/nav/default.xml +0 -0
  152. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/app_template/default/data/ui/views/escu_summary.xml +0 -0
  153. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/app_template/default/data/ui/views/feedback.xml +0 -0
  154. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/app_template/default/use_case_library.conf +0 -0
  155. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/app_template/lookups/mitre_enrichment.csv +0 -0
  156. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/app_template/metadata/default.meta +0 -0
  157. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/app_template/static/appIcon.png +0 -0
  158. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/app_template/static/appIconAlt.png +0 -0
  159. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/app_template/static/appIconAlt_2x.png +0 -0
  160. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/app_template/static/appIcon_2x.png +0 -0
  161. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/data_sources/sysmon_eventid_1.yml +0 -0
  162. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/datamodels_cim.conf +0 -0
  163. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/datamodels_custom.conf +0 -0
  164. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/deployments/escu_default_configuration_anomaly.yml +0 -0
  165. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/deployments/escu_default_configuration_baseline.yml +0 -0
  166. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/deployments/escu_default_configuration_correlation.yml +0 -0
  167. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/deployments/escu_default_configuration_hunting.yml +0 -0
  168. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/deployments/escu_default_configuration_ttp.yml +0 -0
  169. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/detections/application/.gitkeep +0 -0
  170. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/detections/cloud/.gitkeep +0 -0
  171. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/detections/endpoint/anomalous_usage_of_7zip.yml +0 -0
  172. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/detections/network/.gitkeep +0 -0
  173. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/detections/web/.gitkeep +0 -0
  174. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/macros/security_content_ctime.yml +0 -0
  175. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/macros/security_content_summariesonly.yml +0 -0
  176. {contentctl-4.2.4 → contentctl-4.2.5}/contentctl/templates/stories/cobalt_strike.yml +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: contentctl
3
- Version: 4.2.4
3
+ Version: 4.2.5
4
4
  Summary: Splunk Content Control Tool
5
5
  License: Apache 2.0
6
6
  Author: STRT
@@ -12,7 +12,7 @@ Classifier: Programming Language :: Python :: 3.11
12
12
  Classifier: Programming Language :: Python :: 3.12
13
13
  Requires-Dist: Jinja2 (>=3.1.4,<4.0.0)
14
14
  Requires-Dist: PyYAML (>=6.0.1,<7.0.0)
15
- Requires-Dist: attackcti (>=0.3.7,<0.4.0)
15
+ Requires-Dist: attackcti (>=0.3.7,<0.5.0)
16
16
  Requires-Dist: bottle (>=0.12.25,<0.13.0)
17
17
  Requires-Dist: docker (>=7.1.0,<8.0.0)
18
18
  Requires-Dist: gitpython (>=3.1.43,<4.0.0)
@@ -37,8 +37,9 @@ class Initialize:
37
37
  #Throw an exception if the target exists
38
38
  shutil.copytree(source_directory, target_directory, dirs_exist_ok=False)
39
39
 
40
- #Create the config file as well
41
- shutil.copyfile(pathlib.Path(os.path.dirname(__file__))/'../templates/README','README')
40
+ # Create a README.md file. Note that this is the README.md for the repository, not the
41
+ # one which will actually be packaged into the app. That is located in the app_template folder.
42
+ shutil.copyfile(pathlib.Path(os.path.dirname(__file__))/'../templates/README.md','README.md')
42
43
 
43
44
 
44
45
  print(f"The app '{config.app.title}' has been initialized. "
@@ -229,4 +229,7 @@ def main():
229
229
  print(e)
230
230
 
231
231
  sys.exit(1)
232
-
232
+
233
+
234
+ if __name__ == "__main__":
235
+ main()
@@ -104,8 +104,12 @@ class TimeoutConfig(int, Enum):
104
104
  # base amount to sleep for before beginning exponential backoff during testing
105
105
  BASE_SLEEP = 60
106
106
 
107
- # max amount to wait before timing out during exponential backoff
108
- MAX_SLEEP = 210
107
+ # NOTE: Some detections take longer to generate their risk/notables than other; testing has
108
+ # shown 270s to likely be sufficient for all detections in 99% of runs; however we have
109
+ # encountered a handful of transient failures in the last few months. Since our success rate
110
+ # is at 100% now, we will round this to a flat 300s to accomodate these outliers.
111
+ # Max amount to wait before timing out during exponential backoff
112
+ MAX_SLEEP = 300
109
113
 
110
114
 
111
115
  # TODO (#226): evaluate sane defaults for timeframe for integration testing (e.g. 5y is good
@@ -169,15 +169,8 @@ class ConfOutput:
169
169
 
170
170
  def packageAppSlim(self) -> None:
171
171
 
172
-
173
- # input_app_path = pathlib.Path(self.config.build.path_root)/f"{self.config.build.name}"
174
-
175
- # readme_file = pathlib.Path("README")
176
- # if not readme_file.is_file():
177
- # raise Exception("The README file does not exist in this directory. Cannot build app.")
178
- # shutil.copyfile(readme_file, input_app_path/readme_file.name)
179
-
180
-
172
+ raise Exception("Packaging with splunk-packaging-toolkit not currently supported as slim only supports Python 3.7. "
173
+ "Please raise an issue in the contentctl GitHub if you encounter this exception.")
181
174
  try:
182
175
  import slim
183
176
  from slim.utils import SlimLogger
@@ -0,0 +1,10 @@
1
+ # Contentctl App Readme
2
+
3
+ This README file was automatically created by contentctl init.
4
+ Please fill it with meaningful information that describes your app.
5
+
6
+ Note that this file can contain Markdown and will be richly rendered in GitHub or most other Version Control Systems.
7
+
8
+
9
+ Note: This readme file is actually DIFFERENT from the one that will be packaged as part of your App.
10
+ That file is located at app_template/README.md.
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "contentctl"
3
- version = "4.2.4"
3
+ version = "4.2.5"
4
4
  description = "Splunk Content Control Tool"
5
5
  authors = ["STRT <research@splunk.com>"]
6
6
  license = "Apache 2.0"
@@ -16,7 +16,7 @@ PyYAML = "^6.0.1"
16
16
  requests = "~2.32.2"
17
17
  pycvesearch = "^1.2"
18
18
  xmltodict = "^0.13.0"
19
- attackcti = "^0.3.7"
19
+ attackcti = ">=0.3.7,<0.5.0"
20
20
  Jinja2 = "^3.1.4"
21
21
  questionary = "^2.0.1"
22
22
  docker = "^7.1.0"
@@ -1,2 +0,0 @@
1
- This README file was automatically created by contentctl init.
2
- Please fill it with meaningful information that describes your app.
File without changes
File without changes
File without changes