insightconnect-plugin-runtime 6.2.2__tar.gz → 6.2.3__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 (91) hide show
  1. {insightconnect_plugin_runtime-6.2.2/insightconnect_plugin_runtime.egg-info → insightconnect_plugin_runtime-6.2.3}/PKG-INFO +24 -15
  2. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/README.md +6 -5
  3. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/api/endpoints.py +14 -15
  4. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/schema.py +6 -9
  5. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3/insightconnect_plugin_runtime.egg-info}/PKG-INFO +24 -15
  6. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime.egg-info/requires.txt +8 -8
  7. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/setup.py +9 -9
  8. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/MANIFEST.in +0 -0
  9. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect-plugin-swagger.json +0 -0
  10. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/__init__.py +0 -0
  11. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/action.py +0 -0
  12. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/api/__init__.py +0 -0
  13. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/api/schemas.py +0 -0
  14. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/cli.py +0 -0
  15. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/clients/__init__.py +0 -0
  16. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/clients/aws_client.py +0 -0
  17. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/clients/oauth.py +0 -0
  18. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/connection.py +0 -0
  19. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/data/input_message_schema.json +0 -0
  20. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/data/output_message_schema.json +0 -0
  21. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/dispatcher.py +0 -0
  22. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/exceptions.py +0 -0
  23. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/helper.py +0 -0
  24. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/metrics.py +0 -0
  25. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/plugin.py +0 -0
  26. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/server.py +0 -0
  27. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/step.py +0 -0
  28. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/task.py +0 -0
  29. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/trigger.py +0 -0
  30. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/util.py +0 -0
  31. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime/variables.py +0 -0
  32. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime.egg-info/SOURCES.txt +0 -0
  33. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime.egg-info/dependency_links.txt +0 -0
  34. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/insightconnect_plugin_runtime.egg-info/top_level.txt +0 -0
  35. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/setup.cfg +0 -0
  36. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/__init__.py +0 -0
  37. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/__init__.py +0 -0
  38. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/__init__.py +0 -0
  39. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/__init__.py +0 -0
  40. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/__init__.py +0 -0
  41. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/actions/__init__.py +0 -0
  42. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/actions/hello/__init__.py +0 -0
  43. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/actions/hello/action.py +0 -0
  44. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/actions/hello/schema.py +0 -0
  45. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/actions/return_bad_json/__init__.py +0 -0
  46. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/actions/return_bad_json/action.py +0 -0
  47. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/actions/return_bad_json/schema.py +0 -0
  48. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/actions/throw_exception/__init__.py +0 -0
  49. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/actions/throw_exception/action.py +0 -0
  50. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/actions/throw_exception/schema.py +0 -0
  51. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/connection/__init__.py +0 -0
  52. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/connection/connection.py +0 -0
  53. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/connection/schema.py +0 -0
  54. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/tasks/__init__.py +0 -0
  55. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/tasks/monitor_events/__init__.py +0 -0
  56. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/tasks/monitor_events/schema.py +0 -0
  57. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/tasks/monitor_events/task.py +0 -0
  58. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/triggers/__init__.py +0 -0
  59. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/triggers/hello_trigger/__init__.py +0 -0
  60. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/triggers/hello_trigger/schema.py +0 -0
  61. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/triggers/hello_trigger/trigger.py +0 -0
  62. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/triggers/return_bad_json_trigger/__init__.py +0 -0
  63. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/triggers/return_bad_json_trigger/schema.py +0 -0
  64. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/triggers/return_bad_json_trigger/trigger.py +0 -0
  65. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/triggers/throw_exception_trigger/__init__.py +0 -0
  66. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/triggers/throw_exception_trigger/schema.py +0 -0
  67. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/triggers/throw_exception_trigger/trigger.py +0 -0
  68. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/komand_hello_world/util/__init__.py +0 -0
  69. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/hello_world/setup.py +0 -0
  70. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/tests/__init__.py +0 -0
  71. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/tests/conftest.py +0 -0
  72. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/tests/test_cli.py +0 -0
  73. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/tests/test_hello_world.py +0 -0
  74. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/plugin/hello_world/tests/test_server.py +0 -0
  75. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/unit/__init__.py +0 -0
  76. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/unit/test_action.py +0 -0
  77. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/unit/test_api.py +0 -0
  78. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/unit/test_aws_action.py +0 -0
  79. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/unit/test_custom_encoder.py +0 -0
  80. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/unit/test_endpoints.py +0 -0
  81. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/unit/test_exceptions.py +0 -0
  82. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/unit/test_helpers.py +0 -0
  83. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/unit/test_metrics.py +0 -0
  84. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/unit/test_oauth.py +0 -0
  85. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/unit/test_plugin.py +0 -0
  86. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/unit/test_schema.py +0 -0
  87. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/unit/test_server_cloud_plugins.py +0 -0
  88. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/unit/test_server_spec.py +0 -0
  89. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/unit/test_trigger.py +0 -0
  90. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/unit/test_variables.py +0 -0
  91. {insightconnect_plugin_runtime-6.2.2 → insightconnect_plugin_runtime-6.2.3}/tests/unit/utils.py +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.2
2
2
  Name: insightconnect-plugin-runtime
3
- Version: 6.2.2
3
+ Version: 6.2.3
4
4
  Summary: InsightConnect Plugin Runtime
5
5
  Home-page: https://github.com/rapid7/komand-plugin-sdk-python
6
6
  Author: Rapid7 Integrations Alliance
@@ -12,20 +12,28 @@ Classifier: License :: OSI Approved :: MIT License
12
12
  Classifier: Natural Language :: English
13
13
  Classifier: Topic :: Software Development :: Build Tools
14
14
  Description-Content-Type: text/markdown
15
- Requires-Dist: requests==2.32.2
15
+ Requires-Dist: requests==2.32.3
16
16
  Requires-Dist: python_jsonschema_objects==0.5.2
17
- Requires-Dist: jsonschema==4.21.1
18
- Requires-Dist: certifi==2024.07.04
19
- Requires-Dist: Flask==3.0.2
20
- Requires-Dist: gunicorn==22.0.0
17
+ Requires-Dist: jsonschema==4.22.0
18
+ Requires-Dist: certifi==2024.12.14
19
+ Requires-Dist: Flask==3.1.0
20
+ Requires-Dist: gunicorn==23.0.0
21
21
  Requires-Dist: greenlet==3.1.1
22
- Requires-Dist: gevent==24.10.1
22
+ Requires-Dist: gevent==24.11.1
23
23
  Requires-Dist: marshmallow==3.21.0
24
24
  Requires-Dist: apispec==6.5.0
25
25
  Requires-Dist: apispec-webframeworks==1.0.0
26
- Requires-Dist: blinker==1.7.0
27
- Requires-Dist: structlog==24.1.0
26
+ Requires-Dist: blinker==1.9.0
27
+ Requires-Dist: structlog==24.4.0
28
28
  Requires-Dist: python-json-logger==2.0.7
29
+ Dynamic: author
30
+ Dynamic: author-email
31
+ Dynamic: classifier
32
+ Dynamic: description
33
+ Dynamic: description-content-type
34
+ Dynamic: home-page
35
+ Dynamic: requires-dist
36
+ Dynamic: summary
29
37
 
30
38
 
31
39
  # InsightConnect Python Plugin Runtime ![Build Status](https://github.com/rapid7/komand-plugin-sdk-python/workflows/Continuous%20Integration/badge.svg)
@@ -48,10 +56,10 @@ to get started.
48
56
 
49
57
  ## Development of the InsightConnect Plugin Runtime
50
58
 
51
- The Python Runtime codebase is built to support Python 3.11.10 as of version 6.2.0. The following dependencies will need
59
+ The Python Runtime codebase is built to support Python 3.11.11 as of version 6.2.3. The following dependencies will need
52
60
  to be installed when developing or testing the Plugin Runtime:
53
61
 
54
- - Python 3.11.10
62
+ - Python 3.11.11
55
63
  - Docker
56
64
  - make
57
65
  - tox
@@ -67,7 +75,7 @@ version and activate it. Then build, install, and confirm the package has been i
67
75
  > source venv/bin/activate
68
76
  > pip install -e ./
69
77
  > pip list | grep insightconnect-plugin-runtime
70
- insightconnect-plugin-runtime 5.2.2
78
+ insightconnect-plugin-runtime 6.2.3
71
79
  ```
72
80
 
73
81
  #### Building the InsightConnect Plugin Runtime Docker Images
@@ -123,7 +131,7 @@ name as a parameter:
123
131
 
124
132
  The plugin will be started in `http` mode and listening at `http:0.0.0.0:10001`:
125
133
  ```
126
- [2020-02-13 23:21:13 -0500] [56567] [INFO] Starting gunicorn 19.7.1
134
+ [2020-02-13 23:21:13 -0500] [56567] [INFO] Starting gunicorn 23.0.0
127
135
  [2020-02-13 23:21:13 -0500] [56567] [INFO] Listening at: http://0.0.0.0:10001 (56567)
128
136
  [2020-02-13 23:21:13 -0500] [56567] [INFO] Using worker: threads
129
137
  [2020-02-13 23:21:13 -0500] [56571] [INFO] Booting worker with pid: 56571
@@ -184,7 +192,7 @@ Running a specific test file:
184
192
 
185
193
  | | Plugin | Slim Plugin |
186
194
  |:------------------|:-------:|:-----------:|
187
- | Python Version | 3.11.10 | 3.11.10 |
195
+ | Python Version | 3.11.11 | 3.11.11 |
188
196
  | OS | Alpine | Bullseye |
189
197
  | Package installer | apk | apt |
190
198
  | Shell | /bin/sh | /bin/bash |
@@ -211,6 +219,7 @@ contributed. Black is installed as a test dependency and the hook can be initial
211
219
  after cloning this repository.
212
220
 
213
221
  ## Changelog
222
+ * 6.2.3 - Updated dockerfiles for both `slim` and `full` SDK types to use Python 3.11.11 | Updated dependencies | Removed `pkg_resources` usage due to deprecation
214
223
  * 6.2.2 - Fix instances where logging errors would lead to duplicate entries being output | Add option to hash only on provided keys for `hash_sha1` function
215
224
  * 6.2.1 - Fix instances where logging would lead to duplicate entries being output
216
225
  * 6.2.0 - Update base images to pull Python 3.11.10 | changed the pep-8 check in tox to `pycodestyle`
@@ -19,10 +19,10 @@ to get started.
19
19
 
20
20
  ## Development of the InsightConnect Plugin Runtime
21
21
 
22
- The Python Runtime codebase is built to support Python 3.11.10 as of version 6.2.0. The following dependencies will need
22
+ The Python Runtime codebase is built to support Python 3.11.11 as of version 6.2.3. The following dependencies will need
23
23
  to be installed when developing or testing the Plugin Runtime:
24
24
 
25
- - Python 3.11.10
25
+ - Python 3.11.11
26
26
  - Docker
27
27
  - make
28
28
  - tox
@@ -38,7 +38,7 @@ version and activate it. Then build, install, and confirm the package has been i
38
38
  > source venv/bin/activate
39
39
  > pip install -e ./
40
40
  > pip list | grep insightconnect-plugin-runtime
41
- insightconnect-plugin-runtime 5.2.2
41
+ insightconnect-plugin-runtime 6.2.3
42
42
  ```
43
43
 
44
44
  #### Building the InsightConnect Plugin Runtime Docker Images
@@ -94,7 +94,7 @@ name as a parameter:
94
94
 
95
95
  The plugin will be started in `http` mode and listening at `http:0.0.0.0:10001`:
96
96
  ```
97
- [2020-02-13 23:21:13 -0500] [56567] [INFO] Starting gunicorn 19.7.1
97
+ [2020-02-13 23:21:13 -0500] [56567] [INFO] Starting gunicorn 23.0.0
98
98
  [2020-02-13 23:21:13 -0500] [56567] [INFO] Listening at: http://0.0.0.0:10001 (56567)
99
99
  [2020-02-13 23:21:13 -0500] [56567] [INFO] Using worker: threads
100
100
  [2020-02-13 23:21:13 -0500] [56571] [INFO] Booting worker with pid: 56571
@@ -155,7 +155,7 @@ Running a specific test file:
155
155
 
156
156
  | | Plugin | Slim Plugin |
157
157
  |:------------------|:-------:|:-----------:|
158
- | Python Version | 3.11.10 | 3.11.10 |
158
+ | Python Version | 3.11.11 | 3.11.11 |
159
159
  | OS | Alpine | Bullseye |
160
160
  | Package installer | apk | apt |
161
161
  | Shell | /bin/sh | /bin/bash |
@@ -182,6 +182,7 @@ contributed. Black is installed as a test dependency and the hook can be initial
182
182
  after cloning this repository.
183
183
 
184
184
  ## Changelog
185
+ * 6.2.3 - Updated dockerfiles for both `slim` and `full` SDK types to use Python 3.11.11 | Updated dependencies | Removed `pkg_resources` usage due to deprecation
185
186
  * 6.2.2 - Fix instances where logging errors would lead to duplicate entries being output | Add option to hash only on provided keys for `hash_sha1` function
186
187
  * 6.2.1 - Fix instances where logging would lead to duplicate entries being output
187
188
  * 6.2.0 - Update base images to pull Python 3.11.10 | changed the pep-8 check in tox to `pycodestyle`
@@ -1,27 +1,27 @@
1
+ import importlib.metadata as importlib_metadata
1
2
  import json
2
- import subprocess
3
- import yaml
4
3
  import os
5
- import pkg_resources
6
4
  import signal
7
- from flask import jsonify, request, abort, make_response, Blueprint
8
- from werkzeug.exceptions import InternalServerError, HTTPException
5
+ import subprocess
9
6
  from typing import Any, Dict
10
7
 
11
8
  import structlog
9
+ import yaml
10
+ from flask import Blueprint, abort, jsonify, make_response, request
11
+ from werkzeug.exceptions import HTTPException, InternalServerError
12
12
 
13
+ from insightconnect_plugin_runtime.api.schemas import (
14
+ ActionTriggerDetailsSchema,
15
+ ConnectionDetailsSchema,
16
+ PluginInfoSchema,
17
+ TaskDetailsSchema,
18
+ )
13
19
  from insightconnect_plugin_runtime.exceptions import (
14
20
  ClientException,
15
- ServerException,
16
- LoggedException,
17
21
  ConnectionTestException,
22
+ LoggedException,
18
23
  PluginException,
19
- )
20
- from insightconnect_plugin_runtime.api.schemas import (
21
- PluginInfoSchema,
22
- ActionTriggerDetailsSchema,
23
- TaskDetailsSchema,
24
- ConnectionDetailsSchema,
24
+ ServerException,
25
25
  )
26
26
  from insightconnect_plugin_runtime.util import OutputMasker
27
27
 
@@ -780,11 +780,10 @@ class Endpoints:
780
780
 
781
781
  def get_plugin_sdk_version(self):
782
782
  try:
783
- version = pkg_resources.require("insightconnect-plugin-runtime")[0].version
783
+ version = importlib_metadata.version("insightconnect-plugin-runtime")
784
784
  except Exception:
785
785
  self.logger.warn("Unable to get SDK version")
786
786
  version = "0.0.0"
787
-
788
787
  return version
789
788
 
790
789
  def add_plugin_custom_config(
@@ -1,21 +1,18 @@
1
1
  import json
2
+ from pathlib import Path
2
3
 
3
- import pkg_resources
4
4
 
5
-
6
- def load_schema(file_name):
5
+ def load_schema(file_name: str) -> dict:
7
6
  """
8
7
  Loads a json schema from the packages data folder.
9
8
  :param file_name: name of the file
10
9
  :return: JSON object as a dictionary
11
10
  """
12
11
 
13
- schema = pkg_resources.resource_stream(__name__, "/".join(("data", file_name)))
14
- schema = schema.read()
15
- if isinstance(schema, bytes):
16
- schema = schema.decode("utf-8")
17
- schema = json.loads(schema)
18
- return schema
12
+ with open(
13
+ Path(__file__).parent / "data" / file_name, "r", encoding="utf-8"
14
+ ) as schema_file:
15
+ return json.loads(schema_file.read())
19
16
 
20
17
 
21
18
  input_message_schema = load_schema("input_message_schema.json")
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.2
2
2
  Name: insightconnect-plugin-runtime
3
- Version: 6.2.2
3
+ Version: 6.2.3
4
4
  Summary: InsightConnect Plugin Runtime
5
5
  Home-page: https://github.com/rapid7/komand-plugin-sdk-python
6
6
  Author: Rapid7 Integrations Alliance
@@ -12,20 +12,28 @@ Classifier: License :: OSI Approved :: MIT License
12
12
  Classifier: Natural Language :: English
13
13
  Classifier: Topic :: Software Development :: Build Tools
14
14
  Description-Content-Type: text/markdown
15
- Requires-Dist: requests==2.32.2
15
+ Requires-Dist: requests==2.32.3
16
16
  Requires-Dist: python_jsonschema_objects==0.5.2
17
- Requires-Dist: jsonschema==4.21.1
18
- Requires-Dist: certifi==2024.07.04
19
- Requires-Dist: Flask==3.0.2
20
- Requires-Dist: gunicorn==22.0.0
17
+ Requires-Dist: jsonschema==4.22.0
18
+ Requires-Dist: certifi==2024.12.14
19
+ Requires-Dist: Flask==3.1.0
20
+ Requires-Dist: gunicorn==23.0.0
21
21
  Requires-Dist: greenlet==3.1.1
22
- Requires-Dist: gevent==24.10.1
22
+ Requires-Dist: gevent==24.11.1
23
23
  Requires-Dist: marshmallow==3.21.0
24
24
  Requires-Dist: apispec==6.5.0
25
25
  Requires-Dist: apispec-webframeworks==1.0.0
26
- Requires-Dist: blinker==1.7.0
27
- Requires-Dist: structlog==24.1.0
26
+ Requires-Dist: blinker==1.9.0
27
+ Requires-Dist: structlog==24.4.0
28
28
  Requires-Dist: python-json-logger==2.0.7
29
+ Dynamic: author
30
+ Dynamic: author-email
31
+ Dynamic: classifier
32
+ Dynamic: description
33
+ Dynamic: description-content-type
34
+ Dynamic: home-page
35
+ Dynamic: requires-dist
36
+ Dynamic: summary
29
37
 
30
38
 
31
39
  # InsightConnect Python Plugin Runtime ![Build Status](https://github.com/rapid7/komand-plugin-sdk-python/workflows/Continuous%20Integration/badge.svg)
@@ -48,10 +56,10 @@ to get started.
48
56
 
49
57
  ## Development of the InsightConnect Plugin Runtime
50
58
 
51
- The Python Runtime codebase is built to support Python 3.11.10 as of version 6.2.0. The following dependencies will need
59
+ The Python Runtime codebase is built to support Python 3.11.11 as of version 6.2.3. The following dependencies will need
52
60
  to be installed when developing or testing the Plugin Runtime:
53
61
 
54
- - Python 3.11.10
62
+ - Python 3.11.11
55
63
  - Docker
56
64
  - make
57
65
  - tox
@@ -67,7 +75,7 @@ version and activate it. Then build, install, and confirm the package has been i
67
75
  > source venv/bin/activate
68
76
  > pip install -e ./
69
77
  > pip list | grep insightconnect-plugin-runtime
70
- insightconnect-plugin-runtime 5.2.2
78
+ insightconnect-plugin-runtime 6.2.3
71
79
  ```
72
80
 
73
81
  #### Building the InsightConnect Plugin Runtime Docker Images
@@ -123,7 +131,7 @@ name as a parameter:
123
131
 
124
132
  The plugin will be started in `http` mode and listening at `http:0.0.0.0:10001`:
125
133
  ```
126
- [2020-02-13 23:21:13 -0500] [56567] [INFO] Starting gunicorn 19.7.1
134
+ [2020-02-13 23:21:13 -0500] [56567] [INFO] Starting gunicorn 23.0.0
127
135
  [2020-02-13 23:21:13 -0500] [56567] [INFO] Listening at: http://0.0.0.0:10001 (56567)
128
136
  [2020-02-13 23:21:13 -0500] [56567] [INFO] Using worker: threads
129
137
  [2020-02-13 23:21:13 -0500] [56571] [INFO] Booting worker with pid: 56571
@@ -184,7 +192,7 @@ Running a specific test file:
184
192
 
185
193
  | | Plugin | Slim Plugin |
186
194
  |:------------------|:-------:|:-----------:|
187
- | Python Version | 3.11.10 | 3.11.10 |
195
+ | Python Version | 3.11.11 | 3.11.11 |
188
196
  | OS | Alpine | Bullseye |
189
197
  | Package installer | apk | apt |
190
198
  | Shell | /bin/sh | /bin/bash |
@@ -211,6 +219,7 @@ contributed. Black is installed as a test dependency and the hook can be initial
211
219
  after cloning this repository.
212
220
 
213
221
  ## Changelog
222
+ * 6.2.3 - Updated dockerfiles for both `slim` and `full` SDK types to use Python 3.11.11 | Updated dependencies | Removed `pkg_resources` usage due to deprecation
214
223
  * 6.2.2 - Fix instances where logging errors would lead to duplicate entries being output | Add option to hash only on provided keys for `hash_sha1` function
215
224
  * 6.2.1 - Fix instances where logging would lead to duplicate entries being output
216
225
  * 6.2.0 - Update base images to pull Python 3.11.10 | changed the pep-8 check in tox to `pycodestyle`
@@ -1,14 +1,14 @@
1
- requests==2.32.2
1
+ requests==2.32.3
2
2
  python_jsonschema_objects==0.5.2
3
- jsonschema==4.21.1
4
- certifi==2024.07.04
5
- Flask==3.0.2
6
- gunicorn==22.0.0
3
+ jsonschema==4.22.0
4
+ certifi==2024.12.14
5
+ Flask==3.1.0
6
+ gunicorn==23.0.0
7
7
  greenlet==3.1.1
8
- gevent==24.10.1
8
+ gevent==24.11.1
9
9
  marshmallow==3.21.0
10
10
  apispec==6.5.0
11
11
  apispec-webframeworks==1.0.0
12
- blinker==1.7.0
13
- structlog==24.1.0
12
+ blinker==1.9.0
13
+ structlog==24.4.0
14
14
  python-json-logger==2.0.7
@@ -5,7 +5,7 @@ with open("README.md", "r") as fh:
5
5
 
6
6
  setup(
7
7
  name="insightconnect-plugin-runtime",
8
- version="6.2.2",
8
+ version="6.2.3",
9
9
  description="InsightConnect Plugin Runtime",
10
10
  long_description=long_description,
11
11
  long_description_content_type="text/markdown",
@@ -14,19 +14,19 @@ setup(
14
14
  url="https://github.com/rapid7/komand-plugin-sdk-python",
15
15
  packages=find_packages(),
16
16
  install_requires=[
17
- "requests==2.32.2",
17
+ "requests==2.32.3",
18
18
  "python_jsonschema_objects==0.5.2",
19
- "jsonschema==4.21.1",
20
- "certifi==2024.07.04",
21
- "Flask==3.0.2",
22
- "gunicorn==22.0.0",
19
+ "jsonschema==4.22.0",
20
+ "certifi==2024.12.14",
21
+ "Flask==3.1.0",
22
+ "gunicorn==23.0.0",
23
23
  "greenlet==3.1.1",
24
- "gevent==24.10.1",
24
+ "gevent==24.11.1",
25
25
  "marshmallow==3.21.0",
26
26
  "apispec==6.5.0",
27
27
  "apispec-webframeworks==1.0.0",
28
- "blinker==1.7.0",
29
- "structlog==24.1.0",
28
+ "blinker==1.9.0",
29
+ "structlog==24.4.0",
30
30
  "python-json-logger==2.0.7"
31
31
  ],
32
32
  tests_require=[