dt-extensions-sdk 1.2.0__py3-none-any.whl → 1.2.2__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,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: dt-extensions-sdk
3
- Version: 1.2.0
3
+ Version: 1.2.2
4
4
  Project-URL: Documentation, https://github.com/dynatrace-extensions/dt-extensions-python-sdk#readme
5
5
  Project-URL: Issues, https://github.com/dynatrace-extensions/dt-extensions-python-sdk/issues
6
6
  Project-URL: Source, https://github.com/dynatrace-extensions/dt-extensions-python-sdk
@@ -1,7 +1,7 @@
1
- dynatrace_extension/__about__.py,sha256=-hQjfn7HXgKeXhOFZm2s8gsNaTMN70Nqo9ah6Y9vsrY,109
1
+ dynatrace_extension/__about__.py,sha256=vKIcJH3U52zFvbhd5VoVv58vj26hHKE26IYhtDfDDUo,109
2
2
  dynatrace_extension/__init__.py,sha256=BvQuknmA7ti3WJi3zEXZfY7aAxJrie37VNitWICsUvI,752
3
3
  dynatrace_extension/cli/__init__.py,sha256=HCboY_eJPoqjFmoPDsBL8Jk6aNvank8K7JpkVrgwzUM,123
4
- dynatrace_extension/cli/main.py,sha256=a3wX_5XyVyEV6-jgAW9l9IgObdT0mLpH7dhNa-B8AeM,17005
4
+ dynatrace_extension/cli/main.py,sha256=ZOqxZsaMJRZsqR3Og2a9h2PDlkyJE8tAny-p7Mb7dmA,17254
5
5
  dynatrace_extension/cli/schema.py,sha256=d8wKUodRiaU3hfSZDWVNpD15lBfhmif2oQ-k07IxcaA,3230
6
6
  dynatrace_extension/cli/create/__init__.py,sha256=NfyOJCVlxs8dYtfDAMHS1Q5SJTuZcFzOg5rtaI-ZPRE,72
7
7
  dynatrace_extension/cli/create/create.py,sha256=apXden2M93MDDDm7aa-Os-AEtUtyKbk_PsS56j32NK4,2708
@@ -15,10 +15,10 @@ dynatrace_extension/cli/create/extension_template/extension_name/__init__.py.tem
15
15
  dynatrace_extension/cli/create/extension_template/extension_name/__main__.py.template,sha256=Mr7kfekNfEBUapJh_xbySZD8jPyYDspZx3KAfnhdCUk,1258
16
16
  dynatrace_extension/sdk/__init__.py,sha256=RsqQ1heGyCmSK3fhuEKAcxQIRCg4gEK0-eSkIehL5Nc,86
17
17
  dynatrace_extension/sdk/activation.py,sha256=goTbT1tD2kn8xfyXFdTy_cTZNcFPJpgbvQM8HOzKECA,1480
18
- dynatrace_extension/sdk/callback.py,sha256=1P9uQ388j6q6a-8VgmV5FxcOMH-Mr3zvWXk2ftVD8j4,5828
18
+ dynatrace_extension/sdk/callback.py,sha256=oYtKbIoMChG383BZrDWJvkVvOCsee7rpLXzOaTKo9Xo,5871
19
19
  dynatrace_extension/sdk/communication.py,sha256=gD4GOHOzWdRL_KrUWtC2s8-Jp8Csn5gjZl4mHO5Lk_4,17739
20
20
  dynatrace_extension/sdk/event.py,sha256=J261imbFKpxfuAQ6Nfu3RRcsIQKKivy6fme1nww2g-8,388
21
- dynatrace_extension/sdk/extension.py,sha256=fe6JD7ksLmDF6NmWoo6ZG22r44-J-Ouz6U0c2KWhoCg,41369
21
+ dynatrace_extension/sdk/extension.py,sha256=fOXPjz4hMtpCg4lmzzozZ1jDxuriNkouLEGVbQzHYFY,41541
22
22
  dynatrace_extension/sdk/helper.py,sha256=ZNrO9ao2hE3KQ934vAYD74k0fCr6QTG-_bAvbk9-hi8,6562
23
23
  dynatrace_extension/sdk/metric.py,sha256=7VClzJCFJNDCxA-d69uTu1pdPtDZBTwq7fbafs_L6nQ,3690
24
24
  dynatrace_extension/sdk/runtime.py,sha256=jyYsM1x-gMnW68eWq8IoZZZBarHgIcr_nVeGDDgpRDk,2802
@@ -27,8 +27,8 @@ dynatrace_extension/sdk/vendor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5
27
27
  dynatrace_extension/sdk/vendor/mureq/LICENSE,sha256=8AVcgZgiT_mvK1fOofXtRRr2f1dRXS_K21NuxQgP4VM,671
28
28
  dynatrace_extension/sdk/vendor/mureq/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
29
  dynatrace_extension/sdk/vendor/mureq/mureq.py,sha256=znF4mvzk5L03CLNozRz8UpK-fMijmSkObDFwlbhwLUg,14656
30
- dt_extensions_sdk-1.2.0.dist-info/METADATA,sha256=vf1OFqkWooDTrxJz7uuSfzQBc6RvjqD9xNMlcQepJ8k,2793
31
- dt_extensions_sdk-1.2.0.dist-info/WHEEL,sha256=zEMcRr9Kr03x1ozGwg5v9NQBKn3kndp6LSoSlVg-jhU,87
32
- dt_extensions_sdk-1.2.0.dist-info/entry_points.txt,sha256=pweyOCgENGHjOlT6_kXYaBPOrE3p18K0UettqnNlnoE,55
33
- dt_extensions_sdk-1.2.0.dist-info/licenses/LICENSE.txt,sha256=3Zihv0lOVYHNfDkJC-tUAU6euP9r2NexsDW4w-zqgVk,1078
34
- dt_extensions_sdk-1.2.0.dist-info/RECORD,,
30
+ dt_extensions_sdk-1.2.2.dist-info/METADATA,sha256=ez3XwZcPPgfJS9-qYWXfzV283ed2HVzAxbZ1aj1icT4,2793
31
+ dt_extensions_sdk-1.2.2.dist-info/WHEEL,sha256=zEMcRr9Kr03x1ozGwg5v9NQBKn3kndp6LSoSlVg-jhU,87
32
+ dt_extensions_sdk-1.2.2.dist-info/entry_points.txt,sha256=pweyOCgENGHjOlT6_kXYaBPOrE3p18K0UettqnNlnoE,55
33
+ dt_extensions_sdk-1.2.2.dist-info/licenses/LICENSE.txt,sha256=3Zihv0lOVYHNfDkJC-tUAU6euP9r2NexsDW4w-zqgVk,1078
34
+ dt_extensions_sdk-1.2.2.dist-info/RECORD,,
@@ -2,4 +2,4 @@
2
2
  #
3
3
  # SPDX-License-Identifier: MIT
4
4
 
5
- __version__ = "1.2.0"
5
+ __version__ = "1.2.2"
@@ -18,6 +18,11 @@ from .schema import ExtensionYaml
18
18
  app = typer.Typer(pretty_exceptions_show_locals=False, pretty_exceptions_enable=False)
19
19
  console = Console()
20
20
 
21
+ # if we are not python 3.10.X, exit with an error
22
+ if sys.version_info < (3, 10) or sys.version_info >= (3, 11):
23
+ console.print(f"Python 3.10.X is required to build extensions, you are using {sys.version_info}", style="bold red")
24
+ sys.exit(1)
25
+
21
26
  CERT_DIR_ENVIRONMENT_VAR = "DT_CERTIFICATES_FOLDER"
22
27
  CERTIFICATE_DEFAULT_PATH = Path.home() / ".dynatrace" / "certificates"
23
28
 
@@ -51,7 +51,8 @@ class WrappedCallback:
51
51
 
52
52
  def __call__(self):
53
53
  self.logger.debug(f"Running scheduled callback {self}")
54
- self.start_timestamp = self.get_current_time_with_cluster_diff()
54
+ if self.executions_total == 0:
55
+ self.start_timestamp = self.get_current_time_with_cluster_diff()
55
56
  self.running = True
56
57
  self.executions_total += 1
57
58
  self.executions_per_interval += 1
@@ -342,6 +342,10 @@ class Extension:
342
342
  if isinstance(interval, int):
343
343
  interval = timedelta(seconds=interval)
344
344
 
345
+ if interval.total_seconds() < 1:
346
+ msg = f"Interval must be at least 1 second, got {interval.total_seconds()} seconds"
347
+ raise ValueError(msg)
348
+
345
349
  callback = WrappedCallback(interval, callback, api_logger, args, activation_type=activation_type)
346
350
  if self._is_fastcheck:
347
351
  self._scheduled_callbacks_before_run.append(callback)