Skip to content

Commit

Permalink
feat: modify plugin skeleton code for DataSourceAccount (#199)
Browse files Browse the repository at this point in the history
  • Loading branch information
ImMin5 committed Apr 24, 2024
1 parent 791e400 commit 7187bcd
Show file tree
Hide file tree
Showing 6 changed files with 36 additions and 21 deletions.
27 changes: 12 additions & 15 deletions src/spaceone/cost_analysis/plugin/data_source/lib/server.py
Original file line number Diff line number Diff line change
@@ -1,28 +1,25 @@
from spaceone.core.pygrpc.server import GRPCServer
from spaceone.core.plugin.server import PluginServer
from spaceone.cost_analysis.plugin.data_source.interface.grpc import app
from spaceone.cost_analysis.plugin.data_source.service.data_source_service import DataSourceService
from spaceone.cost_analysis.plugin.data_source.service.data_source_service import (
DataSourceService,
)
from spaceone.cost_analysis.plugin.data_source.service.job_service import JobService
from spaceone.cost_analysis.plugin.data_source.service.cost_service import CostService

__all__ = ['DataSourcePluginServer']
__all__ = ["DataSourcePluginServer"]


class DataSourcePluginServer(PluginServer):

_grpc_app: GRPCServer = app
_global_conf_path: str = 'spaceone.cost_analysis.plugin.data_source.conf.global_conf:global_conf'
_global_conf_path: str = (
"spaceone.cost_analysis.plugin.data_source.conf.global_conf:global_conf"
)
_plugin_methods = {
'DataSource': {
'service': DataSourceService,
'methods': ['init', 'verify']
},
'Job': {
'service': JobService,
'methods': ['get_tasks']
"DataSource": {"service": DataSourceService, "methods": ["init", "verify"]},
"Job": {"service": JobService, "methods": ["get_tasks"]},
"Cost": {
"service": CostService,
"methods": ["get_data", "get_linked_accounts"],
},
'Cost': {
'service': CostService,
'methods': ['get_data']
}
}
14 changes: 11 additions & 3 deletions src/spaceone/cost_analysis/plugin/data_source/model/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,14 @@
from spaceone.cost_analysis.plugin.data_source.model.cost_request import *
from spaceone.cost_analysis.plugin.data_source.model.cost_response import *


__all__ = ['DataSourceInitRequest', 'DataSourceVerifyRequest', 'PluginResponse', 'JobGetTaskRequest', 'TasksResponse',
'CostGetDataRequest', 'CostsResponse']
__all__ = [
"DataSourceInitRequest",
"DataSourceVerifyRequest",
"PluginResponse",
"JobGetTaskRequest",
"TasksResponse",
"CostGetDataRequest",
"CostsResponse",
"CostGetLinkedAccountsRequest",
"AccountsResponse",
]
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,14 @@
from pydantic import BaseModel, Field
from datetime import datetime

__all__ = ['JobGetTaskRequest']
__all__ = ["JobGetTaskRequest"]


class JobGetTaskRequest(BaseModel):
options: dict
secret_data: dict
schema_name: Union[str, None] = Field(None, alias='schema')
linked_accounts: Union[list, None] = None
schema_name: Union[str, None] = Field(None, alias="schema")
start: Union[str, None] = None
last_synchronized_at: Union[datetime, None] = None
domain_id: str
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
from typing import List, Union
from pydantic import BaseModel

__all__ = ['TasksResponse']
__all__ = ["TasksResponse"]


class Task(BaseModel):
Expand All @@ -13,6 +13,11 @@ class Changed(BaseModel):
end: Union[str, None] = None


class SyncedAccount(BaseModel):
account_id: str


class TasksResponse(BaseModel):
tasks: List[Task]
changed: List[Changed] = []
synced_accounts: Union[List[SyncedAccount], None] = None
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ def get_tasks(self, params: JobGetTaskRequest) -> Union[TasksResponse, dict]:
params (JobGetTaskRequest): {
'options': 'dict', # Required
'secret_data': 'dict', # Required
'linked_accounts': 'list', # optional
'schema': 'str',
'start': 'str',
'last_synchronized_at': 'datetime',
Expand All @@ -32,6 +33,7 @@ def get_tasks(self, params: JobGetTaskRequest) -> Union[TasksResponse, dict]:
TasksResponse: {
'tasks': 'list',
'changed': 'list'
'synced_accounts': 'list'
}
"""
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ def job_get_tasks(params: dict) -> dict:
params (JobGetTaskRequest): {
'options': 'dict', # Required
'secret_data': 'dict', # Required
'linked_accounts': 'list', # optional
'schema': 'str',
'start': 'str',
'last_synchronized_at': 'datetime',
Expand All @@ -58,6 +59,7 @@ def job_get_tasks(params: dict) -> dict:
TasksResponse: {
'tasks': 'list',
'changed': 'list'
'synced_accounts': 'list'
}
"""
Expand Down

0 comments on commit 7187bcd

Please sign in to comment.