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
23 changes: 23 additions & 0 deletions services/pubsub/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# stackit.pubsub
This API provides endpoints for managing PubSubs.



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-pubsub
```

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

## 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/pubsub/oas_commit
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
1b4e383a63b4f8144eb8431fd22d86f7da9cab44
111 changes: 111 additions & 0 deletions services/pubsub/pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
[project]
name = "stackit-pubsub"
version = "v0.0.1a"
description = "STACKIT PubSub API"
authors = [{name = "STACKIT Developer Tools", email = "developer-tools@stackit.cloud"}]
requires-python = ">=3.10,<4.0"
readme = "README.md"
classifiers = [
"Programming Language :: Python :: 3",
"License :: OSI Approved :: Apache Software License",
"Operating System :: OS Independent",
"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",
"Programming Language :: Python :: 3.15",
]
dependencies = [
"stackit-core>=0.0.1a",
"requests>=2.33.0",
"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>=26.3.1",
"pytest>=9.1.1",
"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" ]
102 changes: 102 additions & 0 deletions services/pubsub/src/stackit/pubsub/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
# coding: utf-8

# flake8: noqa

"""
STACKIT PubSub API

This API provides endpoints for managing PubSubs.

The version of the OpenAPI document: 1beta.0.0
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",
"CreateSubscriptionPayload",
"CreateTopicPayload",
"GrantSubscriptionSubscriberAccessPayload",
"GrantTopicPublisherAccessPayload",
"ListEmailAddressesResponse",
"ListSubscriptionsResponse",
"ListTopicsResponse",
"SubscriptionResponse",
"SubscriptionSettings",
"TopicResponse",
"TopicSettings",
"UpdatePublisherAccessPayload",
"UpdateSubscriptionPayload",
"UpdateSubscriptionSubscriberAccessPayload",
"UpdateTopicPayload",
]

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

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

# import models into sdk package
from stackit.pubsub.models.create_subscription_payload import (
CreateSubscriptionPayload as CreateSubscriptionPayload,
)
from stackit.pubsub.models.create_topic_payload import (
CreateTopicPayload as CreateTopicPayload,
)
from stackit.pubsub.models.grant_subscription_subscriber_access_payload import (
GrantSubscriptionSubscriberAccessPayload as GrantSubscriptionSubscriberAccessPayload,
)
from stackit.pubsub.models.grant_topic_publisher_access_payload import (
GrantTopicPublisherAccessPayload as GrantTopicPublisherAccessPayload,
)
from stackit.pubsub.models.list_email_addresses_response import (
ListEmailAddressesResponse as ListEmailAddressesResponse,
)
from stackit.pubsub.models.list_subscriptions_response import (
ListSubscriptionsResponse as ListSubscriptionsResponse,
)
from stackit.pubsub.models.list_topics_response import (
ListTopicsResponse as ListTopicsResponse,
)
from stackit.pubsub.models.subscription_response import (
SubscriptionResponse as SubscriptionResponse,
)
from stackit.pubsub.models.subscription_settings import (
SubscriptionSettings as SubscriptionSettings,
)
from stackit.pubsub.models.topic_response import TopicResponse as TopicResponse
from stackit.pubsub.models.topic_settings import TopicSettings as TopicSettings
from stackit.pubsub.models.update_publisher_access_payload import (
UpdatePublisherAccessPayload as UpdatePublisherAccessPayload,
)
from stackit.pubsub.models.update_subscription_payload import (
UpdateSubscriptionPayload as UpdateSubscriptionPayload,
)
from stackit.pubsub.models.update_subscription_subscriber_access_payload import (
UpdateSubscriptionSubscriberAccessPayload as UpdateSubscriptionSubscriberAccessPayload,
)
from stackit.pubsub.models.update_topic_payload import (
UpdateTopicPayload as UpdateTopicPayload,
)
4 changes: 4 additions & 0 deletions services/pubsub/src/stackit/pubsub/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.pubsub.api.default_api import DefaultApi
Loading
Loading