54 lines
1.7 KiB
Python
54 lines
1.7 KiB
Python
from chalicelib.core import log_tools
|
|
from schemas import schemas
|
|
|
|
IN_TY = "sumologic"
|
|
|
|
|
|
async def get_all(tenant_id):
|
|
return await log_tools.get_all_by_tenant(tenant_id=tenant_id, integration=IN_TY)
|
|
|
|
|
|
async def get(project_id):
|
|
return await log_tools.get(project_id=project_id, integration=IN_TY)
|
|
|
|
|
|
async def update(tenant_id, project_id, changes):
|
|
options = {}
|
|
|
|
if "region" in changes:
|
|
options["region"] = changes["region"]
|
|
|
|
if "accessId" in changes:
|
|
options["accessId"] = changes["accessId"]
|
|
|
|
if "accessKey" in changes:
|
|
options["accessKey"] = changes["accessKey"]
|
|
return await log_tools.edit(project_id=project_id, integration=IN_TY, changes=options)
|
|
|
|
|
|
async def add(tenant_id, project_id, access_id, access_key, region):
|
|
options = {
|
|
"accessId": access_id,
|
|
"accessKey": access_key,
|
|
"region": region
|
|
}
|
|
return await log_tools.add(project_id=project_id, integration=IN_TY, options=options)
|
|
|
|
|
|
async def delete(tenant_id, project_id):
|
|
return await log_tools.delete(project_id=project_id, integration=IN_TY)
|
|
|
|
|
|
async def add_edit(tenant_id, project_id, data: schemas.IntegrationSumologicSchema):
|
|
s = await get(project_id)
|
|
if s is not None:
|
|
return await update(tenant_id=tenant_id, project_id=project_id,
|
|
changes={"accessId": data.access_id,
|
|
"accessKey": data.access_key,
|
|
"region": data.region})
|
|
else:
|
|
return await add(tenant_id=tenant_id,
|
|
project_id=project_id,
|
|
access_id=data.access_id,
|
|
access_key=data.access_key,
|
|
region=data.region)
|