Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions services/automation/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# stackit.automation
API endpoints for automation management .


This package is part of the STACKIT Python SDK. For additional information, please visit the [GitHub repository](https://github.com/stackitcloud/stackit-sdk-python) of the SDK.


## Installation & Usage
### pip install

```sh
pip install stackit-automation
```

Then import the package:
```python
import stackit.automation
```

## Getting Started

[Examples](https://github.com/stackitcloud/stackit-sdk-python/tree/main/examples) for the usage of the package can be found in the [GitHub repository](https://github.com/stackitcloud/stackit-sdk-python) of the SDK.
1 change: 1 addition & 0 deletions services/automation/oas_commit
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
e0004861a738bbce1cd3d921c230b0cda3d64987
111 changes: 111 additions & 0 deletions services/automation/pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
[project]
name = "stackit-automation"
version = "v0.0.1a"
description = "STACKIT Automation Service API"
authors = [{name = "STACKIT Developer Tools", email = "developer-tools@stackit.cloud"}]
requires-python = ">=3.9,<4.0"
readme = "README.md"
classifiers = [
"Programming Language :: Python :: 3",
"License :: OSI Approved :: Apache Software License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
]
dependencies = [
"stackit-core>=0.0.1a",
"requests>=2.32.3",
"pydantic>=2.9.2",
"python-dateutil>=2.9.0.post0",
]

[project.urls]
Homepage = "https://github.com/stackitcloud/stackit-sdk-python"
Issues = "https://github.com/stackitcloud/stackit-sdk-python/issues"

[dependency-groups]
dev = [
"black>=24.8.0",
"pytest>=8.3.3",
"flake8>=5.0.3 ; python_full_version < '3.12'",
"flake8>=6.0.1 ; python_full_version >= '3.12'",
"flake8-black>=0.3.6",
"flake8-pyproject>=1.2.3",
"autoimport>=1.6.1",
"flake8-eol>=0.0.8",
"flake8-eradicate>=1.5.0",
"flake8-bandit>=4.1.1",
"flake8-bugbear>=23.1.14",
"flake8-quotes>=3.4.0",
"isort>=5.13.2",
]

[tool.uv]
default-groups = "all"

[tool.uv.sources]
stackit-core = { path = "../../core" }

[tool.hatch.build.targets.sdist]
include = ["src/stackit"]

[tool.hatch.build.targets.wheel]
include = ["src/stackit"]

[tool.hatch.build.targets.wheel-sources]
"src/stackit" = "stackit"

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[tool.pytest.ini_options]
pythonpath = [
"src"
]
testpaths = [
"tests"
]

[tool.black]
line-length = 120
exclude = """
/(
.eggs
| .git
| .hg
| .mypy_cache
| .nox
| .pants.d
| .tox
| .venv
| _build
| buck-out
| build
| dist
| node_modules
| venv
)/
"""

[tool.isort]
profile = 'black'

[tool.flake8]
exclude= [".eggs", ".git", ".hg", ".mypy_cache", ".tox", ".venv", ".devcontainer", "venv", "_build", "buck-out", "build", "dist"]
statistics = true
show-source = false
max-line-length = 120
# E203,W503 and E704 are incompatible with the formatter black
# W291 needs to be disabled because some doc-strings get generated with trailing whitespace but black won't re-format comments
ignore = ["E203", "W503", "E704", "W291"]
inline-quotes = '"'
docstring-quotes = '"""'
multiline-quotes = '"""'
ban-relative-imports = true
# Exclude generated code
extend-exclude = [ "src/stackit/*/models/*", "src/stackit/*/api/*", "src/stackit/*/*.py" ]
198 changes: 198 additions & 0 deletions services/automation/src/stackit/automation/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,198 @@
# coding: utf-8

# flake8: noqa

"""
STACKIT Automation Service API

API endpoints for automation management .

The version of the OpenAPI document: 1beta.0
Contact: support@stackit.de
Generated by OpenAPI Generator (https://openapi-generator.tech)

Do not edit the class manually.
""" # noqa: E501


__version__ = "1.0.0"

# Define package exports
__all__ = [
"DefaultApi",
"ApiResponse",
"ApiClient",
"HostConfiguration",
"OpenApiException",
"ApiTypeError",
"ApiValueError",
"ApiKeyError",
"ApiAttributeError",
"ApiException",
"AutomationScheduleTrigger",
"AutomationTriggers",
"CreateSnapshotsResult",
"CreateVolumeAutomationPayload",
"ErrorInfoDetail",
"ErrorResponse",
"ErrorResponseContent",
"ErrorResponseContentDetails",
"EventCreateResponse",
"GenericInput",
"GetVolumeIDsResult",
"GetVolumeTemplateResponse",
"HelpErrorDetail",
"ListAutomationsItem",
"ListAutomationsResponse",
"ListExecutionsItem",
"ListExecutionsResponse",
"ListTemplatesResponse",
"LocalizedMessageErrorDetail",
"PartialUpdateVolumeAutomationPayload",
"Schedule",
"ScheduleDetails",
"SchedulePatchRequest",
"ScheduleRequest",
"SnapshotRetentionPolicy",
"SnapshotRetentionPolicyCount",
"SnapshotRetentionPolicyIndefinitely",
"Template",
"VolumeAutomation",
"VolumeAutomationInput",
"VolumeExecutionAutomation",
"VolumeExecutionDetails",
"VolumeExecutionOutput",
"VolumeExecutionOutputStep",
"VolumeExecutionResponse",
"VolumeOutput",
"VolumeOutputStep",
"VolumeOutputStepResult",
"VolumeRecoveryPointManagementInput",
"VolumeTemplateAutomationInput",
]

# import apis into sdk package
from stackit.automation.api.default_api import DefaultApi as DefaultApi
from stackit.automation.api_client import ApiClient as ApiClient

# import ApiClient
from stackit.automation.api_response import ApiResponse as ApiResponse
from stackit.automation.configuration import HostConfiguration as HostConfiguration
from stackit.automation.exceptions import ApiAttributeError as ApiAttributeError
from stackit.automation.exceptions import ApiException as ApiException
from stackit.automation.exceptions import ApiKeyError as ApiKeyError
from stackit.automation.exceptions import ApiTypeError as ApiTypeError
from stackit.automation.exceptions import ApiValueError as ApiValueError
from stackit.automation.exceptions import OpenApiException as OpenApiException

# import models into sdk package
from stackit.automation.models.automation_schedule_trigger import (
AutomationScheduleTrigger as AutomationScheduleTrigger,
)
from stackit.automation.models.automation_triggers import (
AutomationTriggers as AutomationTriggers,
)
from stackit.automation.models.create_snapshots_result import (
CreateSnapshotsResult as CreateSnapshotsResult,
)
from stackit.automation.models.create_volume_automation_payload import (
CreateVolumeAutomationPayload as CreateVolumeAutomationPayload,
)
from stackit.automation.models.error_info_detail import (
ErrorInfoDetail as ErrorInfoDetail,
)
from stackit.automation.models.error_response import ErrorResponse as ErrorResponse
from stackit.automation.models.error_response_content import (
ErrorResponseContent as ErrorResponseContent,
)
from stackit.automation.models.error_response_content_details import (
ErrorResponseContentDetails as ErrorResponseContentDetails,
)
from stackit.automation.models.event_create_response import (
EventCreateResponse as EventCreateResponse,
)
from stackit.automation.models.generic_input import GenericInput as GenericInput
from stackit.automation.models.get_volume_ids_result import (
GetVolumeIDsResult as GetVolumeIDsResult,
)
from stackit.automation.models.get_volume_template_response import (
GetVolumeTemplateResponse as GetVolumeTemplateResponse,
)
from stackit.automation.models.help_error_detail import (
HelpErrorDetail as HelpErrorDetail,
)
from stackit.automation.models.list_automations_item import (
ListAutomationsItem as ListAutomationsItem,
)
from stackit.automation.models.list_automations_response import (
ListAutomationsResponse as ListAutomationsResponse,
)
from stackit.automation.models.list_executions_item import (
ListExecutionsItem as ListExecutionsItem,
)
from stackit.automation.models.list_executions_response import (
ListExecutionsResponse as ListExecutionsResponse,
)
from stackit.automation.models.list_templates_response import (
ListTemplatesResponse as ListTemplatesResponse,
)
from stackit.automation.models.localized_message_error_detail import (
LocalizedMessageErrorDetail as LocalizedMessageErrorDetail,
)
from stackit.automation.models.partial_update_volume_automation_payload import (
PartialUpdateVolumeAutomationPayload as PartialUpdateVolumeAutomationPayload,
)
from stackit.automation.models.schedule import Schedule as Schedule
from stackit.automation.models.schedule_details import (
ScheduleDetails as ScheduleDetails,
)
from stackit.automation.models.schedule_patch_request import (
SchedulePatchRequest as SchedulePatchRequest,
)
from stackit.automation.models.schedule_request import (
ScheduleRequest as ScheduleRequest,
)
from stackit.automation.models.snapshot_retention_policy import (
SnapshotRetentionPolicy as SnapshotRetentionPolicy,
)
from stackit.automation.models.snapshot_retention_policy_count import (
SnapshotRetentionPolicyCount as SnapshotRetentionPolicyCount,
)
from stackit.automation.models.snapshot_retention_policy_indefinitely import (
SnapshotRetentionPolicyIndefinitely as SnapshotRetentionPolicyIndefinitely,
)
from stackit.automation.models.template import Template as Template
from stackit.automation.models.volume_automation import (
VolumeAutomation as VolumeAutomation,
)
from stackit.automation.models.volume_automation_input import (
VolumeAutomationInput as VolumeAutomationInput,
)
from stackit.automation.models.volume_execution_automation import (
VolumeExecutionAutomation as VolumeExecutionAutomation,
)
from stackit.automation.models.volume_execution_details import (
VolumeExecutionDetails as VolumeExecutionDetails,
)
from stackit.automation.models.volume_execution_output import (
VolumeExecutionOutput as VolumeExecutionOutput,
)
from stackit.automation.models.volume_execution_output_step import (
VolumeExecutionOutputStep as VolumeExecutionOutputStep,
)
from stackit.automation.models.volume_execution_response import (
VolumeExecutionResponse as VolumeExecutionResponse,
)
from stackit.automation.models.volume_output import VolumeOutput as VolumeOutput
from stackit.automation.models.volume_output_step import (
VolumeOutputStep as VolumeOutputStep,
)
from stackit.automation.models.volume_output_step_result import (
VolumeOutputStepResult as VolumeOutputStepResult,
)
from stackit.automation.models.volume_recovery_point_management_input import (
VolumeRecoveryPointManagementInput as VolumeRecoveryPointManagementInput,
)
from stackit.automation.models.volume_template_automation_input import (
VolumeTemplateAutomationInput as VolumeTemplateAutomationInput,
)
4 changes: 4 additions & 0 deletions services/automation/src/stackit/automation/api/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# flake8: noqa

# import apis into api package
from stackit.automation.api.default_api import DefaultApi
Loading
Loading