insightconnect-plugin-runtime 6.2.2__py3-none-any.whl → 6.2.3__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.
@@ -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`
@@ -7,7 +7,7 @@ insightconnect_plugin_runtime/exceptions.py,sha256=Pvcdkx81o6qC2qU661x-DzNjuIMP8
7
7
  insightconnect_plugin_runtime/helper.py,sha256=WiCFu4S33BL8wugBmyFH-06inkcXPmdC5cv0UGlSHfA,32646
8
8
  insightconnect_plugin_runtime/metrics.py,sha256=hf_Aoufip_s4k4o8Gtzz90ymZthkaT2e5sXh5B4LcF0,3186
9
9
  insightconnect_plugin_runtime/plugin.py,sha256=Yf4LNczykDVc31F9G8uuJ9gxEsgmxmAr0n4pcZzichM,26393
10
- insightconnect_plugin_runtime/schema.py,sha256=jTNc6KAMqFpaDVWrAYhkVC6e8I63P3X7uVlJkAr1hiY,583
10
+ insightconnect_plugin_runtime/schema.py,sha256=6MVw5hqGATU1VLgwfOWfPsP3hy1OnsugCTsgX8sknes,521
11
11
  insightconnect_plugin_runtime/server.py,sha256=09fxsbKf2ZZvSqRP2Bv9e9-fspDyEFR8_YgIFeMnXqQ,12578
12
12
  insightconnect_plugin_runtime/step.py,sha256=KdERg-789-s99IEKN61DR08naz-YPxyinPT0C_T81C4,855
13
13
  insightconnect_plugin_runtime/task.py,sha256=d-H1EAzVnmSdDEJtXyIK5JySprxpF9cetVoFGtWlHrg,123
@@ -15,7 +15,7 @@ insightconnect_plugin_runtime/trigger.py,sha256=Zq3cy68N3QxAGbNZKCID6CZF05Zi7YD2
15
15
  insightconnect_plugin_runtime/util.py,sha256=qPkZ3LA55nYuNYdansEbnCnBccQkpzIpp9NA1B64Kvw,8444
16
16
  insightconnect_plugin_runtime/variables.py,sha256=7FjJGnU7KUR7m9o-_tRq7Q3KiaB1Pp0Apj1NGgOwrJk,3056
17
17
  insightconnect_plugin_runtime/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
18
- insightconnect_plugin_runtime/api/endpoints.py,sha256=gIxuxO7AFqmic0k9b_2gWjjJ8ICtWDa88X4Tl4fEgik,33333
18
+ insightconnect_plugin_runtime/api/endpoints.py,sha256=8QQrxzW8jmQIkalud8fqYwB05uUw8sTiDNgO5ZekOCA,33353
19
19
  insightconnect_plugin_runtime/api/schemas.py,sha256=jRmDrwLJTBl-iQOnyZkSwyJlCWg4eNjAnKfD9Eko4z0,2754
20
20
  insightconnect_plugin_runtime/clients/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
21
21
  insightconnect_plugin_runtime/clients/aws_client.py,sha256=bgSK3Txr1YonDiUN5JFEZ5cAyCXFM14JjfMus6lRV8o,23017
@@ -78,7 +78,7 @@ tests/unit/test_server_spec.py,sha256=je97BaktgK0Fiz3AwFPkcmHzYtOJJNqJV_Fw5hrvqX
78
78
  tests/unit/test_trigger.py,sha256=E53mAUoVyponWu_4IQZ0IC1gQ9lakBnTn_9vKN2IZfg,1692
79
79
  tests/unit/test_variables.py,sha256=OUEOqGYZA3Nd5oKk5GVY3hcrWKHpZpxysBJcO_v5gzs,291
80
80
  tests/unit/utils.py,sha256=VooVmfpIgxmglNdtmT32AkEDFxHxyRHLK8RsCWjjYRY,2153
81
- insightconnect_plugin_runtime-6.2.2.dist-info/METADATA,sha256=aQsntlkFksgMSHJvZyCnixCTdVSbzypDrq81UQVzBFU,15275
82
- insightconnect_plugin_runtime-6.2.2.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
83
- insightconnect_plugin_runtime-6.2.2.dist-info/top_level.txt,sha256=AJtyJOpiFzHxsbHUICTcUKXyrGQ3tZxhrEHsPjJBvEA,36
84
- insightconnect_plugin_runtime-6.2.2.dist-info/RECORD,,
81
+ insightconnect_plugin_runtime-6.2.3.dist-info/METADATA,sha256=m0fZClkhAwEVwvC34tDdEfursS7-CuHs5bhYZJNJab8,15610
82
+ insightconnect_plugin_runtime-6.2.3.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
83
+ insightconnect_plugin_runtime-6.2.3.dist-info/top_level.txt,sha256=AJtyJOpiFzHxsbHUICTcUKXyrGQ3tZxhrEHsPjJBvEA,36
84
+ insightconnect_plugin_runtime-6.2.3.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.6.0)
2
+ Generator: setuptools (75.8.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5