Skip to content

Commit

Permalink
[QI2-1175] Auth Config
Browse files Browse the repository at this point in the history
  • Loading branch information
Mythir committed Dec 20, 2024
1 parent feea72b commit 9fe162c
Show file tree
Hide file tree
Showing 12 changed files with 584 additions and 2 deletions.
4 changes: 4 additions & 0 deletions .openapi-generator/FILES
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
compute_api_client/__init__.py
compute_api_client/api/__init__.py
compute_api_client/api/algorithms_api.py
compute_api_client/api/auth_config_api.py
compute_api_client/api/backend_api.py
compute_api_client/api/backend_types_api.py
compute_api_client/api/batch_jobs_api.py
Expand All @@ -26,6 +27,8 @@ compute_api_client/docs/Algorithm.md
compute_api_client/docs/AlgorithmIn.md
compute_api_client/docs/AlgorithmType.md
compute_api_client/docs/AlgorithmsApi.md
compute_api_client/docs/AuthConfig.md
compute_api_client/docs/AuthConfigApi.md
compute_api_client/docs/Backend.md
compute_api_client/docs/BackendApi.md
compute_api_client/docs/BackendIn.md
Expand Down Expand Up @@ -114,6 +117,7 @@ compute_api_client/models/__init__.py
compute_api_client/models/algorithm.py
compute_api_client/models/algorithm_in.py
compute_api_client/models/algorithm_type.py
compute_api_client/models/auth_config.py
compute_api_client/models/backend.py
compute_api_client/models/backend_in.py
compute_api_client/models/backend_patch.py
Expand Down
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,7 @@ Class | Method | HTTP request | Description
*AlgorithmsApi* | [**read_algorithm_algorithms_id_get**](compute_api_client/docs/AlgorithmsApi.md#read_algorithm_algorithms_id_get) | **GET** /algorithms/{id} | Retrieve algorithm
*AlgorithmsApi* | [**read_algorithms_algorithms_get**](compute_api_client/docs/AlgorithmsApi.md#read_algorithms_algorithms_get) | **GET** /algorithms | List algorithms
*AlgorithmsApi* | [**update_algorithm_algorithms_id_put**](compute_api_client/docs/AlgorithmsApi.md#update_algorithm_algorithms_id_put) | **PUT** /algorithms/{id} | Update algorithm
*AuthConfigApi* | [**auth_config_auth_config_get**](compute_api_client/docs/AuthConfigApi.md#auth_config_auth_config_get) | **GET** /auth_config | Get suggested authentication configuration
*BackendApi* | [**create_backend_backends_post**](compute_api_client/docs/BackendApi.md#create_backend_backends_post) | **POST** /backends | Create backend
*BackendApi* | [**read_backend_backends_id_get**](compute_api_client/docs/BackendApi.md#read_backend_backends_id_get) | **GET** /backends/{id} | Retrieve backend
*BackendApi* | [**read_backend_self_backends_me_get**](compute_api_client/docs/BackendApi.md#read_backend_self_backends_me_get) | **GET** /backends/me | Retrieve backend
Expand Down Expand Up @@ -150,6 +151,7 @@ Class | Method | HTTP request | Description
- [Algorithm](compute_api_client/docs/Algorithm.md)
- [AlgorithmIn](compute_api_client/docs/AlgorithmIn.md)
- [AlgorithmType](compute_api_client/docs/AlgorithmType.md)
- [AuthConfig](compute_api_client/docs/AuthConfig.md)
- [Backend](compute_api_client/docs/Backend.md)
- [BackendIn](compute_api_client/docs/BackendIn.md)
- [BackendPatch](compute_api_client/docs/BackendPatch.md)
Expand Down Expand Up @@ -227,7 +229,7 @@ Authentication schemes defined for the API:

- **Type**: OAuth
- **Flow**: accessCode
- **Authorization URL**: https://auth.qi2.quantum-inspire.com/realms/oidc_staging/protocol/openid-connect/auth
- **Authorization URL**: https://auth.qi2.quantum-inspire.com/realms/oidc_development/protocol/openid-connect/auth
- **Scopes**: N/A

<a id="backend"></a>
Expand Down
2 changes: 2 additions & 0 deletions compute_api_client/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@

# import apis into sdk package
from compute_api_client.api.algorithms_api import AlgorithmsApi
from compute_api_client.api.auth_config_api import AuthConfigApi
from compute_api_client.api.backend_api import BackendApi
from compute_api_client.api.backend_types_api import BackendTypesApi
from compute_api_client.api.batch_jobs_api import BatchJobsApi
Expand Down Expand Up @@ -52,6 +53,7 @@
from compute_api_client.models.algorithm import Algorithm
from compute_api_client.models.algorithm_in import AlgorithmIn
from compute_api_client.models.algorithm_type import AlgorithmType
from compute_api_client.models.auth_config import AuthConfig
from compute_api_client.models.backend import Backend
from compute_api_client.models.backend_in import BackendIn
from compute_api_client.models.backend_patch import BackendPatch
Expand Down
1 change: 1 addition & 0 deletions compute_api_client/api/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

# import apis into api package
from compute_api_client.api.algorithms_api import AlgorithmsApi
from compute_api_client.api.auth_config_api import AuthConfigApi
from compute_api_client.api.backend_api import BackendApi
from compute_api_client.api.backend_types_api import BackendTypesApi
from compute_api_client.api.batch_jobs_api import BatchJobsApi
Expand Down
286 changes: 286 additions & 0 deletions compute_api_client/api/auth_config_api.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,286 @@
# coding: utf-8

"""
Quantum Inspire 2
No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
The version of the OpenAPI document: 0.1.0
Generated by OpenAPI Generator (https://openapi-generator.tech)
Do not edit the class manually.
""" # noqa: E501


import io
import warnings

from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
from typing import Dict, List, Optional, Tuple, Union, Any

try:
from typing import Annotated
except ImportError:
from typing_extensions import Annotated

from compute_api_client.models.auth_config import AuthConfig

from compute_api_client.api_client import ApiClient
from compute_api_client.api_response import ApiResponse
from compute_api_client.rest import RESTResponseType


class AuthConfigApi:
"""NOTE: This class is auto generated by OpenAPI Generator
Ref: https://openapi-generator.tech
Do not edit the class manually.
"""

def __init__(self, api_client=None) -> None:
if api_client is None:
api_client = ApiClient.get_default()
self.api_client = api_client


@validate_call
async def auth_config_auth_config_get(
self,
_request_timeout: Union[
None,
Annotated[StrictFloat, Field(gt=0)],
Tuple[
Annotated[StrictFloat, Field(gt=0)],
Annotated[StrictFloat, Field(gt=0)]
]
] = None,
_request_auth: Optional[Dict[StrictStr, Any]] = None,
_content_type: Optional[StrictStr] = None,
_headers: Optional[Dict[StrictStr, Any]] = None,
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
) -> AuthConfig:
"""Get suggested authentication configuration
:param _request_timeout: timeout setting for this request. If one
number provided, it will be total request
timeout. It can also be a pair (tuple) of
(connection, read) timeouts.
:type _request_timeout: int, tuple(int, int), optional
:param _request_auth: set to override the auth_settings for an a single
request; this effectively ignores the
authentication in the spec for a single request.
:type _request_auth: dict, optional
:param _content_type: force content-type for the request.
:type _content_type: str, Optional
:param _headers: set to override the headers for a single
request; this effectively ignores the headers
in the spec for a single request.
:type _headers: dict, optional
:param _host_index: set to override the host_index for a single
request; this effectively ignores the host_index
in the spec for a single request.
:type _host_index: int, optional
:return: Returns the result object.
""" # noqa: E501

_param = self._auth_config_auth_config_get_serialize(
_request_auth=_request_auth,
_content_type=_content_type,
_headers=_headers,
_host_index=_host_index
)

_response_types_map: Dict[str, Optional[str]] = {
'200': "AuthConfig"

}
response_data = await self.api_client.call_api(
*_param,
_request_timeout=_request_timeout
)
await response_data.read()
return self.api_client.response_deserialize(
response_data=response_data,
response_types_map=_response_types_map,
).data


@validate_call
async def auth_config_auth_config_get_with_http_info(
self,
_request_timeout: Union[
None,
Annotated[StrictFloat, Field(gt=0)],
Tuple[
Annotated[StrictFloat, Field(gt=0)],
Annotated[StrictFloat, Field(gt=0)]
]
] = None,
_request_auth: Optional[Dict[StrictStr, Any]] = None,
_content_type: Optional[StrictStr] = None,
_headers: Optional[Dict[StrictStr, Any]] = None,
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
) -> ApiResponse[AuthConfig]:
"""Get suggested authentication configuration
:param _request_timeout: timeout setting for this request. If one
number provided, it will be total request
timeout. It can also be a pair (tuple) of
(connection, read) timeouts.
:type _request_timeout: int, tuple(int, int), optional
:param _request_auth: set to override the auth_settings for an a single
request; this effectively ignores the
authentication in the spec for a single request.
:type _request_auth: dict, optional
:param _content_type: force content-type for the request.
:type _content_type: str, Optional
:param _headers: set to override the headers for a single
request; this effectively ignores the headers
in the spec for a single request.
:type _headers: dict, optional
:param _host_index: set to override the host_index for a single
request; this effectively ignores the host_index
in the spec for a single request.
:type _host_index: int, optional
:return: Returns the result object.
""" # noqa: E501

_param = self._auth_config_auth_config_get_serialize(
_request_auth=_request_auth,
_content_type=_content_type,
_headers=_headers,
_host_index=_host_index
)

_response_types_map: Dict[str, Optional[str]] = {
'200': "AuthConfig"

}
response_data = await self.api_client.call_api(
*_param,
_request_timeout=_request_timeout
)
await response_data.read()
return self.api_client.response_deserialize(
response_data=response_data,
response_types_map=_response_types_map,
)


@validate_call
async def auth_config_auth_config_get_without_preload_content(
self,
_request_timeout: Union[
None,
Annotated[StrictFloat, Field(gt=0)],
Tuple[
Annotated[StrictFloat, Field(gt=0)],
Annotated[StrictFloat, Field(gt=0)]
]
] = None,
_request_auth: Optional[Dict[StrictStr, Any]] = None,
_content_type: Optional[StrictStr] = None,
_headers: Optional[Dict[StrictStr, Any]] = None,
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
) -> RESTResponseType:
"""Get suggested authentication configuration
:param _request_timeout: timeout setting for this request. If one
number provided, it will be total request
timeout. It can also be a pair (tuple) of
(connection, read) timeouts.
:type _request_timeout: int, tuple(int, int), optional
:param _request_auth: set to override the auth_settings for an a single
request; this effectively ignores the
authentication in the spec for a single request.
:type _request_auth: dict, optional
:param _content_type: force content-type for the request.
:type _content_type: str, Optional
:param _headers: set to override the headers for a single
request; this effectively ignores the headers
in the spec for a single request.
:type _headers: dict, optional
:param _host_index: set to override the host_index for a single
request; this effectively ignores the host_index
in the spec for a single request.
:type _host_index: int, optional
:return: Returns the result object.
""" # noqa: E501

_param = self._auth_config_auth_config_get_serialize(
_request_auth=_request_auth,
_content_type=_content_type,
_headers=_headers,
_host_index=_host_index
)

_response_types_map: Dict[str, Optional[str]] = {
'200': "AuthConfig"

}
response_data = await self.api_client.call_api(
*_param,
_request_timeout=_request_timeout
)
return response_data.response


def _auth_config_auth_config_get_serialize(
self,
_request_auth,
_content_type,
_headers,
_host_index,
) -> Tuple:

_host = None

_collection_formats: Dict[str, str] = {

}

_path_params: Dict[str, str] = {}
_query_params: List[Tuple[str, str]] = []
_header_params: Dict[str, Optional[str]] = _headers or {}
_form_params: List[Tuple[str, str]] = []
_files: Dict[str, str] = {}
_body_params: Optional[bytes] = None

# process the path parameters
# process the query parameters
# process the header parameters
# process the form parameters
# process the body parameter


# set the HTTP header `Accept`
_header_params['Accept'] = self.api_client.select_header_accept(
[
'application/json'
]
)


# authentication setting
_auth_settings: List[str] = [
]

return self.api_client.param_serialize(
method='GET',
resource_path='/auth_config',
path_params=_path_params,
query_params=_query_params,
header_params=_header_params,
body=_body_params,
post_params=_form_params,
files=_files,
auth_settings=_auth_settings,
collection_formats=_collection_formats,
_host=_host,
_request_auth=_request_auth
)


30 changes: 30 additions & 0 deletions compute_api_client/docs/AuthConfig.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# AuthConfig


## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**client_id** | **str** | |
**audience** | **str** | |
**well_known_endpoint** | **str** | |

## Example

```python
from compute_api_client.models.auth_config import AuthConfig

# TODO update the JSON string below
json = "{}"
# create an instance of AuthConfig from a JSON string
auth_config_instance = AuthConfig.from_json(json)
# print the JSON string representation of the object
print AuthConfig.to_json()

# convert the object into a dict
auth_config_dict = auth_config_instance.to_dict()
# create an instance of AuthConfig from a dict
auth_config_form_dict = auth_config.from_dict(auth_config_dict)
```
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)


Loading

0 comments on commit 9fe162c

Please sign in to comment.