dt-extensions-sdk 1.1.0__tar.gz → 1.1.1__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 (72) hide show
  1. dt_extensions_sdk-1.1.1/.github/workflows/gh-pages-docs.yml +76 -0
  2. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/.gitignore +10 -2
  3. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/PKG-INFO +58 -12
  4. dt_extensions_sdk-1.1.1/README.md +88 -0
  5. dt_extensions_sdk-1.1.1/docs/_static/dt-sdk-header.png +0 -0
  6. dt_extensions_sdk-1.1.1/docs/_static/dt-sdk-logo.png +0 -0
  7. dt_extensions_sdk-1.1.1/docs/_static/favicon.ico +0 -0
  8. dt_extensions_sdk-1.1.1/docs/api/events/event_severity.rst +13 -0
  9. dt_extensions_sdk-1.1.1/docs/api/events/event_type.rst +14 -0
  10. dt_extensions_sdk-1.1.1/docs/api/events/index.rst +9 -0
  11. dt_extensions_sdk-1.1.1/docs/api/extension.rst +6 -0
  12. dt_extensions_sdk-1.1.1/docs/api/metrics/index.rst +9 -0
  13. dt_extensions_sdk-1.1.1/docs/api/metrics/metric.rst +19 -0
  14. dt_extensions_sdk-1.1.1/docs/api/metrics/metric_type.rst +18 -0
  15. dt_extensions_sdk-1.1.1/docs/cli/assemble.rst +4 -0
  16. dt_extensions_sdk-1.1.1/docs/cli/build.rst +4 -0
  17. dt_extensions_sdk-1.1.1/docs/cli/create.rst +4 -0
  18. dt_extensions_sdk-1.1.1/docs/cli/gencerts.rst +4 -0
  19. dt_extensions_sdk-1.1.1/docs/cli/help.rst +4 -0
  20. dt_extensions_sdk-1.1.1/docs/cli/run.rst +4 -0
  21. dt_extensions_sdk-1.1.1/docs/cli/sign.rst +4 -0
  22. dt_extensions_sdk-1.1.1/docs/cli/upload.rst +4 -0
  23. dt_extensions_sdk-1.1.1/docs/cli/wheel.rst +4 -0
  24. dt_extensions_sdk-1.1.1/docs/conf.py +98 -0
  25. dt_extensions_sdk-1.1.1/docs/guides/extension_structure.rst +292 -0
  26. dt_extensions_sdk-1.1.1/docs/guides/installation.rst +38 -0
  27. dt_extensions_sdk-1.1.1/docs/index.rst +299 -0
  28. dt_extensions_sdk-1.1.1/docs/requirements.txt +2 -0
  29. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/__about__.py +1 -1
  30. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/sdk/event.py +1 -3
  31. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/sdk/extension.py +212 -127
  32. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/sdk/metric.py +0 -2
  33. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/pyproject.toml +32 -8
  34. dt_extensions_sdk-1.1.0/README.md +0 -42
  35. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/LICENSE.txt +0 -0
  36. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/__init__.py +0 -0
  37. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/cli/__init__.py +0 -0
  38. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/cli/create/__init__.py +0 -0
  39. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/cli/create/create.py +0 -0
  40. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/cli/create/extension_template/.gitignore.template +0 -0
  41. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/cli/create/extension_template/README.md.template +0 -0
  42. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/cli/create/extension_template/activation.json.template +0 -0
  43. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/cli/create/extension_template/extension/activationSchema.json.template +0 -0
  44. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/cli/create/extension_template/extension/extension.yaml.template +0 -0
  45. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/cli/create/extension_template/extension_name/__init__.py.template +0 -0
  46. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/cli/create/extension_template/extension_name/__main__.py.template +0 -0
  47. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/cli/create/extension_template/setup.py.template +0 -0
  48. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/cli/main.py +0 -0
  49. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/cli/schema.py +0 -0
  50. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/sdk/__init__.py +0 -0
  51. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/sdk/activation.py +0 -0
  52. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/sdk/callback.py +0 -0
  53. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/sdk/communication.py +0 -0
  54. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/sdk/helper.py +0 -0
  55. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/sdk/runtime.py +0 -0
  56. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/sdk/vendor/__init__.py +0 -0
  57. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/sdk/vendor/mureq/LICENSE +0 -0
  58. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/sdk/vendor/mureq/__init__.py +0 -0
  59. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/dynatrace_extension/sdk/vendor/mureq/mureq.py +0 -0
  60. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/tests/__init__.py +0 -0
  61. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/tests/cli/__init__.py +0 -0
  62. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/tests/cli/test_dt_sdk.py +0 -0
  63. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/tests/cli/test_templates.py +0 -0
  64. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/tests/cli/test_types.py +0 -0
  65. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/tests/sdk/__init__.py +0 -0
  66. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/tests/sdk/test_activation.py +0 -0
  67. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/tests/sdk/test_callback.py +0 -0
  68. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/tests/sdk/test_communication.py +0 -0
  69. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/tests/sdk/test_extension.py +0 -0
  70. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/tests/sdk/test_metric.py +0 -0
  71. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/tests/sdk/test_runtime_properties.py +0 -0
  72. {dt_extensions_sdk-1.1.0 → dt_extensions_sdk-1.1.1}/tests/sdk/test_status.py +0 -0
@@ -0,0 +1,76 @@
1
+ name: Update Docs
2
+ on:
3
+ push:
4
+ branches:
5
+ - main
6
+ workflow_dispatch:
7
+
8
+ jobs:
9
+ build-docs:
10
+ runs-on: ubuntu-latest
11
+
12
+ steps:
13
+ - uses: actions/checkout@v2
14
+
15
+ - uses: actions/setup-python@v2
16
+ with:
17
+ python-version: "3.10"
18
+
19
+ - name: Install hatch
20
+ run: |
21
+ pip install hatch
22
+
23
+ - name: Install dependencies
24
+ run: |
25
+ hatch env create
26
+
27
+ - name: Build the docs
28
+ run: |
29
+ hatch run docs:build
30
+
31
+ - name: Cache built docs as artifact
32
+ uses: actions/upload-artifact@v2
33
+ with:
34
+ name: rendered-docs
35
+ path: |
36
+ docs/_build/**
37
+
38
+ upload-docs:
39
+ runs-on: ubuntu-latest
40
+ needs:
41
+ - build-docs
42
+
43
+ steps:
44
+ - name: Download built docs as cached artifact
45
+ uses: actions/download-artifact@v2
46
+ with:
47
+ name: rendered-docs
48
+
49
+ - name: Change Git username for gh-pages branch
50
+ run: |
51
+ git config --global user.name "${GITHUB_ACTOR}"
52
+ git config --global user.email "${GITHUB_ACTOR}@users.noreply.github.com"
53
+
54
+ - name: Initialize gh-pages branch
55
+ run: |
56
+ git init
57
+ git remote add deploy "https://token:${{ secrets.GITHUB_TOKEN }}@github.com/${GITHUB_REPOSITORY}.git"
58
+ git checkout -b gh-pages
59
+
60
+ - name: Add README disclaimer
61
+ run: |
62
+ echo '# GitHub Pages for `dt-extensions-sdk`' > README.md
63
+ echo "" >> README.md
64
+ echo "The contents of this branch are built using GitHub Actions workflow and Sphinx." >> README.md
65
+ echo "" >> README.md
66
+ echo "*commit ${GITHUB_SHA:0:6}*" >> README.md
67
+
68
+ - name: Add .nojekyll file to prevent the contents from being built by GitHub pages second time
69
+ run: |
70
+ touch .nojekyll
71
+
72
+ - name: Push everything to gh-pages branch on GitHub
73
+ run: |
74
+ git add .
75
+ git commit -m "📝 Rebuilt docs: commit ${GITHUB_SHA:0:6}"
76
+ git push deploy gh-pages --force
@@ -1,3 +1,7 @@
1
+ # Docs
2
+ docs/_build
3
+ docs/my_extension
4
+
1
5
  # Byte-compiled / optimized / DLL files
2
6
  __pycache__/
3
7
  *.py[cod]
@@ -85,7 +89,7 @@ ipython_config.py
85
89
  # pyenv
86
90
  # For a library or package, you might want to ignore these files since the code is
87
91
  # intended to run in multiple environments; otherwise, check them in:
88
- # .python-version
92
+ .python-version
89
93
 
90
94
  # pipenv
91
95
  # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
@@ -159,4 +163,8 @@ cython_debug/
159
163
  # option (not recommended) you can uncomment the following to ignore the entire idea folder.
160
164
  .idea/
161
165
 
162
- test_temp/
166
+ test_temp/
167
+
168
+ # Thumbnails
169
+ .DS_Store
170
+ Thumb.db
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dt-extensions-sdk
3
- Version: 1.1.0
4
- Project-URL: Documentation, https://github.com/unknown/dynatrace-extensions-sdk#readme
5
- Project-URL: Issues, https://github.com/unknown/dynatrace-extensions-sdk/issues
6
- Project-URL: Source, https://github.com/unknown/dynatrace-extensions-sdk
3
+ Version: 1.1.1
4
+ Project-URL: Documentation, https://github.com/dynatrace-extensions/dt-extensions-python-sdk#readme
5
+ Project-URL: Issues, https://github.com/dynatrace-extensions/dt-extensions-python-sdk/issues
6
+ Project-URL: Source, https://github.com/dynatrace-extensions/dt-extensions-python-sdk
7
7
  Author-email: dlopes7 <davidribeirolopes@gmail.com>
8
8
  License-Expression: MIT
9
9
  License-File: LICENSE.txt
@@ -16,7 +16,7 @@ Classifier: Programming Language :: Python :: 3.10
16
16
  Classifier: Programming Language :: Python :: 3.11
17
17
  Classifier: Programming Language :: Python :: Implementation :: CPython
18
18
  Classifier: Programming Language :: Python :: Implementation :: PyPy
19
- Requires-Python: >=3.7
19
+ Requires-Python: >=3.10
20
20
  Provides-Extra: cli
21
21
  Requires-Dist: dt-cli==1.6.13; extra == 'cli'
22
22
  Requires-Dist: pyyaml; extra == 'cli'
@@ -32,19 +32,55 @@ Description-Content-Type: text/markdown
32
32
 
33
33
  **Table of Contents**
34
34
 
35
- - [Installation](#installation)
35
+ - [Quick Start](#quick-start)
36
36
  - [License](#license)
37
37
  - [Developing](#developing)
38
38
 
39
- ## Installation
39
+ ## Quick Start
40
40
 
41
- ```console
42
- pip install dt-extensions-sdk
41
+ ### Requirements:
42
+
43
+ * Python 3.10+
44
+
45
+ ### Install the SDK
46
+
47
+ ```bash
48
+ pip install dt-extensions-sdk[cli]
49
+ # Note, on some shells like zsh you may need to escape the brackets - pip install dt-extensions-sdk\[cli\]
43
50
  ```
44
51
 
45
- ## License
52
+ ### Create signing certificates
53
+
54
+ ```bash
55
+ dt-sdk gencerts
56
+ ```
46
57
 
47
- `dt-extensions-sdk` is distributed under the terms of the [MIT](https://spdx.org/licenses/MIT.html) license.
58
+ ### Create a new extension
59
+
60
+ ```bash
61
+ dt-sdk create my_first_extension
62
+ ```
63
+
64
+ ### Simulate
65
+
66
+ ```bash
67
+ cd my_first_extension
68
+ dt-sdk run
69
+ ```
70
+
71
+ ### Build
72
+
73
+ ```bash
74
+ dt-sdk build
75
+ ```
76
+
77
+
78
+ ### Upload
79
+
80
+ ```bash
81
+ # Note, you need to either set environment variables DT_API_URL and DT_API_TOKEN or pass them as arguments
82
+ dt-sdk upload
83
+ ```
48
84
 
49
85
  ## Developing
50
86
 
@@ -64,4 +100,14 @@ hatch run lint:all
64
100
 
65
101
  ```console
66
102
  hatch build
67
- ```
103
+ ```
104
+
105
+ ### Building docs
106
+
107
+ ```console
108
+ hatch run docs:build
109
+ ```
110
+
111
+ ## License
112
+
113
+ `dt-extensions-sdk` is distributed under the terms of the [MIT](https://spdx.org/licenses/MIT.html) license.
@@ -0,0 +1,88 @@
1
+ # Dynatrace Extensions Python SDK
2
+
3
+ [![PyPI - Version](https://img.shields.io/pypi/v/dt-extensions-sdk.svg)](https://pypi.org/project/dt-extensions-sdk)
4
+ [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/dt-extensions-sdk.svg)](https://pypi.org/project/dt-extensions-sdk)
5
+
6
+ -----
7
+
8
+ **Table of Contents**
9
+
10
+ - [Quick Start](#quick-start)
11
+ - [License](#license)
12
+ - [Developing](#developing)
13
+
14
+ ## Quick Start
15
+
16
+ ### Requirements:
17
+
18
+ * Python 3.10+
19
+
20
+ ### Install the SDK
21
+
22
+ ```bash
23
+ pip install dt-extensions-sdk[cli]
24
+ # Note, on some shells like zsh you may need to escape the brackets - pip install dt-extensions-sdk\[cli\]
25
+ ```
26
+
27
+ ### Create signing certificates
28
+
29
+ ```bash
30
+ dt-sdk gencerts
31
+ ```
32
+
33
+ ### Create a new extension
34
+
35
+ ```bash
36
+ dt-sdk create my_first_extension
37
+ ```
38
+
39
+ ### Simulate
40
+
41
+ ```bash
42
+ cd my_first_extension
43
+ dt-sdk run
44
+ ```
45
+
46
+ ### Build
47
+
48
+ ```bash
49
+ dt-sdk build
50
+ ```
51
+
52
+
53
+ ### Upload
54
+
55
+ ```bash
56
+ # Note, you need to either set environment variables DT_API_URL and DT_API_TOKEN or pass them as arguments
57
+ dt-sdk upload
58
+ ```
59
+
60
+ ## Developing
61
+
62
+ ### Testing
63
+
64
+ ```console
65
+ hatch run test
66
+ ```
67
+
68
+ ### Linting
69
+
70
+ ```console
71
+ hatch run lint:all
72
+ ```
73
+
74
+ ### Building
75
+
76
+ ```console
77
+ hatch build
78
+ ```
79
+
80
+ ### Building docs
81
+
82
+ ```console
83
+ hatch run docs:build
84
+ ```
85
+
86
+ ## License
87
+
88
+ `dt-extensions-sdk` is distributed under the terms of the [MIT](https://spdx.org/licenses/MIT.html) license.
@@ -0,0 +1,13 @@
1
+ Event Severity
2
+ ==============
3
+
4
+ The :class:`Severity` class is used to define the severity of a log event.
5
+ This enum can only be used in the context of a log ingestion when calling
6
+ the :meth:`dynatrace_extension.Extension.report_event` method.
7
+
8
+ Members
9
+ ^^^^^^^
10
+
11
+ .. autoclass:: dynatrace_extension.Severity
12
+ :members:
13
+ :undoc-members:
@@ -0,0 +1,14 @@
1
+ Event Type
2
+ ==========
3
+
4
+ The :class:`DtEventType` class is utilized to define the type event as
5
+ ingested through the Events V2 API.
6
+ This enum can only be used in the context of a event ingestion when
7
+ calling the :meth:`dynatrace_extension.Extension.report_dt_event` method.
8
+
9
+ Members
10
+ ^^^^^^^
11
+
12
+ .. autoclass:: dynatrace_extension.DtEventType
13
+ :members:
14
+ :undoc-members:
@@ -0,0 +1,9 @@
1
+ Events
2
+ ======
3
+
4
+ .. toctree::
5
+ :caption: Submodules and Classes
6
+ :maxdepth: 1
7
+
8
+ event_severity
9
+ event_type
@@ -0,0 +1,6 @@
1
+ Extension
2
+ =========
3
+
4
+ .. autoclass:: dynatrace_extension.Extension
5
+ :members:
6
+ :undoc-members:
@@ -0,0 +1,9 @@
1
+ Metrics
2
+ =======
3
+
4
+ .. toctree::
5
+ :caption: Submodules and Classes
6
+ :maxdepth: 1
7
+
8
+ metric
9
+ metric_type
@@ -0,0 +1,19 @@
1
+ Metric
2
+ ======
3
+
4
+ The :class:`dynatrace_extension.Metric` class is mostly used internally to
5
+ construct metrics that comply with the MINT protocol which is what Extension
6
+ Framework uses to send event to the environment.
7
+
8
+ When the :meth:`dynatrace_extension.Extension.report_metric` method is
9
+ called, it builds a :class:`Metric` object, which is. then added to the list
10
+ of metrics to be sent to the environment. The class has a useful method called
11
+ :meth:`dynatrace_extension.Metric.to_mint_line` which allows you to convert
12
+ the metric to a string that complies with the MINT protocol.
13
+
14
+ Members
15
+ ^^^^^^^
16
+
17
+ .. autoclass:: dynatrace_extension.Metric
18
+ :members:
19
+ :undoc-members:
@@ -0,0 +1,18 @@
1
+ Metric Type
2
+ ===========
3
+
4
+ There are two types of metrics that can be sent to Dynatrace:
5
+
6
+ * **Gauge** - A gauge is a metric that represents a single numerical value
7
+ that can arbitrarily go up and down. For example, current percentage of
8
+ the CPU usage.
9
+ * **Counters** - A counter is a metric that is continuously increasing.
10
+ For example, the number of bytes received over a network interface since
11
+ the start of the process.
12
+
13
+ Members
14
+ ^^^^^^^
15
+
16
+ .. autoclass:: dynatrace_extension.MetricType
17
+ :members:
18
+ :undoc-members:
@@ -0,0 +1,4 @@
1
+ Assemble
2
+ ========
3
+
4
+ .. command-output:: dt-sdk assemble --help
@@ -0,0 +1,4 @@
1
+ Build
2
+ =====
3
+
4
+ .. command-output:: dt-sdk build --help
@@ -0,0 +1,4 @@
1
+ Create
2
+ ======
3
+
4
+ .. command-output:: dt-sdk create --help
@@ -0,0 +1,4 @@
1
+ Generate Certificates
2
+ =====================
3
+
4
+ .. command-output:: dt-sdk gencerts --help
@@ -0,0 +1,4 @@
1
+ Help
2
+ ====
3
+
4
+ .. command-output:: dt-sdk --help
@@ -0,0 +1,4 @@
1
+ Run
2
+ ===
3
+
4
+ .. command-output:: dt-sdk run --help
@@ -0,0 +1,4 @@
1
+ Sign
2
+ ====
3
+
4
+ .. command-output:: dt-sdk sign --help
@@ -0,0 +1,4 @@
1
+ Upload
2
+ ======
3
+
4
+ .. command-output:: dt-sdk upload --help
@@ -0,0 +1,4 @@
1
+ Wheel
2
+ =====
3
+
4
+ .. command-output:: dt-sdk wheel --help
@@ -0,0 +1,98 @@
1
+ # Configuration file for the Sphinx documentation builder.
2
+ #
3
+ # This file only contains a selection of the most common options. For a full
4
+ # list see the documentation:
5
+ # https://www.sphinx-doc.org/en/master/usage/configuration.html
6
+
7
+ # -- Path setup --------------------------------------------------------------
8
+
9
+ # If extensions (or modules to document with autodoc) are in another directory,
10
+ # add these directories to sys.path here. If the directory is relative to the
11
+ # documentation root, use os.path.abspath to make it absolute, like shown here.
12
+ #
13
+ import os
14
+ import sys
15
+ from datetime import datetime
16
+
17
+ sys.path.insert(0, os.path.abspath("."))
18
+
19
+
20
+ # -- Project information -----------------------------------------------------
21
+ project = "dt-sdk"
22
+ copyright = f"2023–{datetime.now().year}, Dynatrace LLC"
23
+ author = "Dynatrace"
24
+
25
+ # Short version
26
+ version = "1.0.0"
27
+ # The full version, including alpha/beta/rc tags
28
+ release = version
29
+
30
+ # The language for content autogenerated by Sphinx. Refer to documentation
31
+ # for a list of supported languages.
32
+ #
33
+ # This is also used if you do content translation via gettext catalogs.
34
+ # Usually you set "language" from the command line for these cases.
35
+ language = "en"
36
+
37
+
38
+ # -- General configuration ---------------------------------------------------
39
+
40
+ # Add any Sphinx extension module names here, as strings. They can be
41
+ # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
42
+ # ones.
43
+ extensions = [
44
+ "sphinx.ext.autodoc",
45
+ "sphinx.ext.napoleon",
46
+ "sphinx.ext.viewcode",
47
+ "sphinx.ext.autosectionlabel",
48
+ "sphinx_wagtail_theme",
49
+ "sphinxcontrib.programoutput",
50
+ ]
51
+
52
+ # Add any paths that contain templates here, relative to this directory.
53
+ templates_path = ["_templates"]
54
+
55
+ # List of patterns, relative to source directory, that match files and
56
+ # directories to ignore when looking for source files.
57
+ # This pattern also affects html_static_path and html_extra_path.
58
+ exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"]
59
+
60
+ # True to prefix each section label with the name of the document it is in,
61
+ # followed by a colon. For example, index:Introduction for a section called
62
+ # Introduction that appears in document index.rst. Useful for avoiding
63
+ # ambiguity when the same section heading appears in different documents.
64
+ autosectionlabel_prefix_document = True
65
+
66
+ # -- Autodoc -----------------------------------------------------------------
67
+
68
+ autodoc_default_options = {"member-order": "bysource", "undoc-members": True}
69
+
70
+ # -- Options for HTML output -------------------------------------------------
71
+
72
+ # The theme to use for HTML and HTML Help pages. See the documentation for
73
+ # a list of builtin themes.
74
+ #
75
+ html_theme = "sphinx_wagtail_theme"
76
+ html_favicon = "_static/favicon.ico"
77
+ html_show_copyright = True
78
+
79
+ # Add any paths that contain custom static files (such as style sheets) here,
80
+ # relative to this directory. They are copied after the builtin static files,
81
+ # so a file named "default.css" will overwrite the builtin "default.css".
82
+ html_static_path = ["_static"]
83
+
84
+ # html_sidebars = {"**": ["search-field.html", "sidebar-nav-bs.html"]}
85
+
86
+ html_theme_options = {
87
+ "project_name": "dt-sdk",
88
+ "logo": "dt-sdk-logo.png",
89
+ "logo_alt": "dt-sdk",
90
+ "logo_url": "/",
91
+ "github_url": "https://github.com/dynatrace-extensions/dt-extensions-python-sdk",
92
+ "footer_links": ",".join(
93
+ [
94
+ "Dynatrace|https://dynatrace.com/",
95
+ "Extensions Team|mailto:extenions@dynatrace.com",
96
+ ]
97
+ ),
98
+ }