Skip to content

Commit

Permalink
Merge pull request #291 from amithadary/feature/AX-46291_add_support_…
Browse files Browse the repository at this point in the history
…to_tenants_in_adapter_connection

feature/AX-46291 | added support to internal_axon_tenant_id when creating an adapter connection
  • Loading branch information
ViDoHub committed Mar 13, 2024
2 parents d9db6e1 + fa77c73 commit 057fd3c
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 11 deletions.
30 changes: 19 additions & 11 deletions axonius_api_client/api/adapters/cnx.py
Expand Up @@ -392,6 +392,7 @@ def add(
kwargs_config: Optional[dict] = None,
new_config: Optional[dict] = None,
parse_config: bool = True,
internal_axon_tenant_id: Optional[str] = None,
**kwargs,
) -> dict:
"""Add a connection to an adapter on a node.
Expand Down Expand Up @@ -425,6 +426,7 @@ def add(
kwargs_config: connection args that conflict with this methods signature
new_config: connection args that conflict with this methods signature
parse_config: perform api client side parsing of connection args
internal_axon_tenant_id: The ID of the Tenant that the connection is associated with
**kwargs: configuration of new connection
Raises:
Expand Down Expand Up @@ -471,6 +473,7 @@ def add(
connection_label=connection_label,
response_status_hook=response_status_hook,
tunnel_id=tunnel_id,
internal_axon_tenant_id=internal_axon_tenant_id
)
cnx_new = self.get_by_uuid(
cnx_uuid=result.id,
Expand Down Expand Up @@ -901,20 +904,25 @@ def _add(
connection_label: Optional[str] = None,
tunnel_id: Optional[str] = None,
response_status_hook: Optional[Callable] = None,
internal_axon_tenant_id: Optional[str] = None,
) -> CnxCreate:
"""Pass."""
api_endpoint = ApiEndpoints.adapters.cnx_create
request_obj = api_endpoint.load_request(
connection=connection,
connection_discovery=connection_discovery,
instance=instance_id,
instance_name=instance_name,
is_instances_mode=is_instances_mode,
active=active,
save_and_fetch=save_and_fetch,
connection_label=connection_label,
tunnel_id=tunnel_id,
)
request_payload: dict = {
"connection": connection,
"connection_discovery": connection_discovery,
"instance": instance_id,
"instance_name": instance_name,
"is_instances_mode": is_instances_mode,
"active": active,
"save_and_fetch": save_and_fetch,
"connection_label": connection_label,
"tunnel_id": tunnel_id,
}
if internal_axon_tenant_id:
request_payload["internal_axon_tenant_id"] = internal_axon_tenant_id

request_obj = api_endpoint.load_request(**request_payload)
return api_endpoint.perform_request(
http=self.auth.http,
request_obj=request_obj,
Expand Down
Expand Up @@ -62,6 +62,13 @@ class CnxCreateRequestSchema(BaseSchemaJson):
description="Tunnel ID",
)

internal_axon_tenant_id = mm_fields.Str(
load_default=None,
dump_default=None,
allow_none=True,
description="Internal Axonius tenant ID",
)

@staticmethod
def get_model_cls() -> t.Any:
"""Get the model for this schema."""
Expand Down Expand Up @@ -101,6 +108,7 @@ class CnxCreateRequest(BaseModel):
save_and_fetch: bool = field_from_mm(SCHEMA, "save_and_fetch")
is_instances_mode: bool = field_from_mm(SCHEMA, "is_instances_mode")
tunnel_id: t.Optional[str] = field_from_mm(SCHEMA, "tunnel_id")
internal_axon_tenant_id: t.Optional[str] = field_from_mm(SCHEMA, "internal_axon_tenant_id")

SCHEMA: t.ClassVar[BaseSchemaJson] = SCHEMA

Expand Down

0 comments on commit 057fd3c

Please sign in to comment.