dt-extensions-sdk 1.1.8__tar.gz → 1.1.9__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 (80) hide show
  1. dt_extensions_sdk-1.1.9/.github/workflows/publish.yml +107 -0
  2. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/PKG-INFO +1 -1
  3. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/__about__.py +1 -1
  4. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/cli/main.py +9 -1
  5. dt_extensions_sdk-1.1.8/.github/workflows/publish.yml +0 -49
  6. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/.github/workflows/gh-pages-docs.yml +0 -0
  7. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/.gitignore +0 -0
  8. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/LICENSE.txt +0 -0
  9. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/README.md +0 -0
  10. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/_static/dt-sdk-header.png +0 -0
  11. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/_static/dt-sdk-logo.png +0 -0
  12. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/_static/favicon.ico +0 -0
  13. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/_static/img/migrate-01-new-extension.png +0 -0
  14. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/_static/img/migrate-02-type.png +0 -0
  15. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/_static/img/migrate-03-import.png +0 -0
  16. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/_static/img/migrate-04-import-remote.png +0 -0
  17. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/_static/img/migrate-05-activation.png +0 -0
  18. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/_static/img/migrate-06-activation-config.png +0 -0
  19. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/api/events/event_severity.rst +0 -0
  20. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/api/events/event_type.rst +0 -0
  21. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/api/events/index.rst +0 -0
  22. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/api/extension.rst +0 -0
  23. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/api/metrics/index.rst +0 -0
  24. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/api/metrics/metric.rst +0 -0
  25. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/api/metrics/metric_type.rst +0 -0
  26. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/cli/assemble.rst +0 -0
  27. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/cli/build.rst +0 -0
  28. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/cli/create.rst +0 -0
  29. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/cli/gencerts.rst +0 -0
  30. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/cli/help.rst +0 -0
  31. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/cli/run.rst +0 -0
  32. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/cli/sign.rst +0 -0
  33. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/cli/upload.rst +0 -0
  34. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/cli/wheel.rst +0 -0
  35. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/conf.py +0 -0
  36. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/guides/extension_structure.rst +0 -0
  37. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/guides/installation.rst +0 -0
  38. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/guides/migration.rst +0 -0
  39. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/index.rst +0 -0
  40. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/docs/requirements.txt +0 -0
  41. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/__init__.py +0 -0
  42. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/cli/__init__.py +0 -0
  43. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/cli/create/__init__.py +0 -0
  44. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/cli/create/create.py +0 -0
  45. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/cli/create/extension_template/.gitignore.template +0 -0
  46. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/cli/create/extension_template/README.md.template +0 -0
  47. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/cli/create/extension_template/activation.json.template +0 -0
  48. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/cli/create/extension_template/extension/activationSchema.json.template +0 -0
  49. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/cli/create/extension_template/extension/extension.yaml.template +0 -0
  50. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/cli/create/extension_template/extension_name/__init__.py.template +0 -0
  51. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/cli/create/extension_template/extension_name/__main__.py.template +0 -0
  52. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/cli/create/extension_template/setup.py.template +0 -0
  53. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/cli/schema.py +0 -0
  54. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/sdk/__init__.py +0 -0
  55. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/sdk/activation.py +0 -0
  56. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/sdk/callback.py +0 -0
  57. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/sdk/communication.py +0 -0
  58. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/sdk/event.py +0 -0
  59. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/sdk/extension.py +0 -0
  60. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/sdk/helper.py +0 -0
  61. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/sdk/metric.py +0 -0
  62. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/sdk/runtime.py +0 -0
  63. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/sdk/vendor/__init__.py +0 -0
  64. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/sdk/vendor/mureq/LICENSE +0 -0
  65. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/sdk/vendor/mureq/__init__.py +0 -0
  66. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/dynatrace_extension/sdk/vendor/mureq/mureq.py +0 -0
  67. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/pyproject.toml +0 -0
  68. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/tests/__init__.py +0 -0
  69. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/tests/cli/__init__.py +0 -0
  70. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/tests/cli/test_dt_sdk.py +0 -0
  71. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/tests/cli/test_templates.py +0 -0
  72. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/tests/cli/test_types.py +0 -0
  73. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/tests/sdk/__init__.py +0 -0
  74. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/tests/sdk/test_activation.py +0 -0
  75. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/tests/sdk/test_callback.py +0 -0
  76. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/tests/sdk/test_communication.py +0 -0
  77. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/tests/sdk/test_extension.py +0 -0
  78. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/tests/sdk/test_metric.py +0 -0
  79. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/tests/sdk/test_runtime_properties.py +0 -0
  80. {dt_extensions_sdk-1.1.8 → dt_extensions_sdk-1.1.9}/tests/sdk/test_status.py +0 -0
@@ -0,0 +1,107 @@
1
+ name: Publish to PyPI
2
+ on:
3
+ workflow_dispatch:
4
+
5
+ jobs:
6
+ build-package:
7
+ name: Build distribution 📦
8
+ runs-on: ubuntu-latest
9
+
10
+ steps:
11
+ - id: check_ref
12
+ run: echo "::set-output name=match::$(echo '${{ github.ref }}' | grep -Pq '^refs/tags/v\d+\.\d+\.\d+$' && echo true || echo false)"
13
+ shell: bash
14
+
15
+ - name: Check if tag is valid
16
+ if: steps.check_ref.outputs.match != 'true'
17
+ run: exit 1
18
+
19
+ - uses: actions/checkout@v4
20
+
21
+ - name: Set up Python
22
+ uses: actions/setup-python@v5
23
+ with:
24
+ python-version: "3.10"
25
+
26
+ - name: Install hatch
27
+ run: |
28
+ pip install hatch --user
29
+
30
+ - name: Build a wheel and a source tarball
31
+ run: |
32
+ python3 -m hatch build
33
+
34
+ - name: Store the distribution packages
35
+ uses: actions/upload-artifact@v4
36
+ with:
37
+ name: package
38
+ path: |
39
+ dist/*
40
+
41
+ github-release:
42
+ name: Create GitHub release
43
+ if: startsWith(github.ref, 'refs/tags/v')
44
+ runs-on: ubuntu-latest
45
+ needs:
46
+ - build-package
47
+ steps:
48
+ - uses: actions/checkout@v4
49
+
50
+ - name: Generate changelog
51
+ run: |
52
+ cat > CHANGELOG.md <<EOT
53
+ # CHANGELOG
54
+
55
+ **Release**: dt-cli (${GITHUB_REF#refs/tags/})
56
+
57
+ # Changes
58
+
59
+ EOT
60
+
61
+ git log --format=format:"%ad: %s" --date=short >> CHANGELOG.md
62
+
63
+ - name: Download cached built package
64
+ uses: actions/download-artifact@v4
65
+ with:
66
+ name: package
67
+ path: dist
68
+
69
+ - name: Create GitHub release
70
+ uses: softprops/action-gh-release@v1
71
+ with:
72
+ files: |
73
+ dist/*
74
+ LICENSE
75
+ body_path: CHANGELOG.md
76
+ env:
77
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
78
+
79
+ publish-to-pypi:
80
+ name: Publish to PyPI
81
+ if: startsWith(github.ref, 'refs/tags/v')
82
+ runs-on: ubuntu-latest
83
+ needs:
84
+ - build-package
85
+ steps:
86
+ - uses: actions/checkout@v4
87
+
88
+ - name: Set up Python 3.10
89
+ uses: actions/setup-python@v5
90
+ with:
91
+ python-version: '3.10'
92
+
93
+ - name: Install hatch
94
+ run: |
95
+ pip install hatch --user
96
+
97
+ - name: Download cached built package
98
+ uses: actions/download-artifact@v4
99
+ with:
100
+ name: package
101
+ path: dist
102
+
103
+ - name: Publish to PyPI
104
+ env:
105
+ PYPI_PUBLISH_TOKEN: ${{ secrets.PYPI_PUBLISH_TOKEN }}
106
+ run: |
107
+ hatch publish --user __token__ --auth $PYPI_PUBLISH_TOKEN --no-prompt
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dt-extensions-sdk
3
- Version: 1.1.8
3
+ Version: 1.1.9
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,4 +1,4 @@
1
1
  # SPDX-FileCopyrightText: 2023-present Dynatrace LLC
2
2
  #
3
3
  # SPDX-License-Identifier: MIT
4
- __version__ = "1.1.8"
4
+ __version__ = "1.1.9"
@@ -79,6 +79,7 @@ def build(
79
79
  extra_index_url: Optional[str] = typer.Option(
80
80
  None, "--extra-index-url", "-i", help="Extra index url to use when downloading dependencies"
81
81
  ),
82
+ find_links: Optional[str] = typer.Option( None, "--find-links", "-f", help="Extra index url to use when downloading dependencies" ),
82
83
  ):
83
84
  """
84
85
  Builds and signs an extension using the developer fused key-certificate
@@ -90,6 +91,7 @@ def build(
90
91
  folder
91
92
  :param extra_platforms: Attempt to also download wheels for an extra platform (e.g. manylinux1_x86_64 or win_amd64)
92
93
  :param extra_index_url: Extra index url to use when downloading dependencies
94
+ :param find_links: Extra index url to use when downloading dependencies
93
95
  """
94
96
  console.print(f"Building and signing extension from {extension_dir} to {target_directory}", style="cyan")
95
97
  if target_directory is None:
@@ -98,7 +100,7 @@ def build(
98
100
  target_directory.mkdir()
99
101
 
100
102
  console.print("Stage 1 - Download and build dependencies", style="bold blue")
101
- wheel(extension_dir, extra_platforms, extra_index_url)
103
+ wheel(extension_dir, extra_platforms, extra_index_url, find_links)
102
104
 
103
105
  console.print("Stage 2 - Create the extension zip file", style="bold blue")
104
106
  built_zip = assemble(extension_dir, target_directory)
@@ -163,6 +165,7 @@ def wheel(
163
165
  extra_index_url: Optional[str] = typer.Option(
164
166
  None, "--extra-index-url", "-i", help="Extra index url to use when downloading dependencies"
165
167
  ),
168
+ find_links: Optional[str] = typer.Option( None, "--find-links", "-f", help="Extra index url to use when downloading dependencies" ),
166
169
  ):
167
170
  """
168
171
  Builds the extension and it's dependencies into wheel files
@@ -171,6 +174,7 @@ def wheel(
171
174
  :param extension_dir: The directory of the extension, by default this is the current directory
172
175
  :param extra_platforms: Attempt to also download wheels for an extra platform (e.g. manylinux1_x86_64 or win_amd64)
173
176
  :param extra_index_url: Extra index url to use when downloading dependencies
177
+ :param find_links: Extra index url to use when downloading dependencies
174
178
  """
175
179
  relative_lib_folder_dir = "extension/lib"
176
180
  lib_folder: Path = extension_dir / relative_lib_folder_dir
@@ -182,6 +186,8 @@ def wheel(
182
186
  command = [sys.executable, "-m", "pip", "wheel", "-w", relative_lib_folder_dir]
183
187
  if extra_index_url is not None:
184
188
  command.extend(["--extra-index-url", extra_index_url])
189
+ if find_links is not None:
190
+ command.extend(["--find-links", find_links])
185
191
  command.append(".")
186
192
  run_process(command, cwd=extension_dir)
187
193
 
@@ -201,6 +207,8 @@ def wheel(
201
207
  ]
202
208
  if extra_index_url:
203
209
  command.extend(["--extra-index-url", extra_index_url])
210
+ if find_links:
211
+ command.extend(["--find-links", find_links])
204
212
  command.append(".")
205
213
 
206
214
  run_process(command, cwd=extension_dir)
@@ -1,49 +0,0 @@
1
- name: Publish to PyPI
2
- on: push
3
-
4
- jobs:
5
- build:
6
- name: Build distribution 📦
7
- runs-on: ubuntu-latest
8
-
9
- steps:
10
- - uses: actions/checkout@v4
11
- - name: Set up Python
12
- uses: actions/setup-python@v4
13
- with:
14
- python-version: "3.10"
15
-
16
- - name: Install hatch and build
17
- run: >-
18
- python3 -m
19
- pip install
20
- hatch
21
- --user
22
- - name: Build a binary wheel and a source tarball
23
- run: python3 -m hatch build
24
- - name: Store the distribution packages
25
- uses: actions/upload-artifact@v3
26
- with:
27
- name: python-package-distributions
28
- path: dist/
29
-
30
- publish-to-pypi:
31
- name: >-
32
- Publish to PyPI
33
- if: startsWith(github.ref, 'refs/tags/') # only publish to PyPI on tag pushes
34
- needs:
35
- - build
36
- runs-on: ubuntu-latest
37
- environment:
38
- name: pypi
39
- url: https://pypi.org/p/dt-extensions-sdk
40
- permissions:
41
- id-token: write # IMPORTANT: mandatory for trusted publishing
42
- steps:
43
- - name: Download dist from build
44
- uses: actions/download-artifact@v3
45
- with:
46
- name: python-package-distributions
47
- path: dist/
48
- - name: Publish to PyPI
49
- uses: pypa/gh-action-pypi-publish@release/v1