Skip to content

[Bug]: Cannot deploy a provider with AWS Auth policy from UI #2685

Description

@malinthaprasan

Please select the area the issue is related to

AI Workspace, Platform API, Gateway

Please select the aspect the issue is related to

Aspect/API (API backends, definitions, contracts, interfaces, OpenAPI)

Description

Image
gateway-controller-1  | time=2026-07-15T06:11:29.424Z level=INFO source=/build/pkg/controlplane/client.go:1301 msg="Received WebSocket event" type=llmprovider.deployed payload="{\"type\":\"llmprovider.deployed\",\"payload\":{\"providerId\":\"019f6462-9425-7bee-bc93-512d7f225e68\",\"deploymentId\":\"019f6466-cd93-7198-b523-356ae83a5ad0\",\"performedAt\":\"2026-07-15T06:11:26.744Z\"},\"timestamp\":\"2026-07-15T06:11:26Z\",\"correlationId\":\"f49093f2-3b7a-4180-b0e4-44c590daf8c3\"}"
gateway-controller-1  | time=2026-07-15T06:11:29.424Z level=INFO source=/build/pkg/controlplane/client.go:2052 msg="LLM Provider Deployment Event" payload="map[deploymentId:019f6466-cd93-7198-b523-356ae83a5ad0 performedAt:2026-07-15T06:11:26.744Z providerId:019f6462-9425-7bee-bc93-512d7f225e68]" timestamp=2026-07-15T06:11:26Z correlationId=f49093f2-3b7a-4180-b0e4-44c590daf8c3
gateway-controller-1  | time=2026-07-15T06:11:29.425Z level=INFO source=/build/pkg/controlplane/client.go:2081 msg="Processing LLM provider deployment" provider_id=019f6462-9425-7bee-bc93-512d7f225e68 deployment_id=019f6466-cd93-7198-b523-356ae83a5ad0 correlation_id=f49093f2-3b7a-4180-b0e4-44c590daf8c3
gateway-controller-1  | time=2026-07-15T06:11:29.425Z level=INFO source=/build/pkg/utils/api_utils.go:175 msg="Fetching LLM provider definition" provider_id=019f6462-9425-7bee-bc93-512d7f225e68 url=https://54.156.84.209:9243/api/internal/v1/llm-providers/019f6462-9425-7bee-bc93-512d7f225e68
gateway-controller-1  | time=2026-07-15T06:11:29.434Z level=INFO source=/build/pkg/utils/api_utils.go:209 msg="Successfully fetched LLM provider definition" provider_id=019f6462-9425-7bee-bc93-512d7f225e68 size_bytes=698
gateway-controller-1  | time=2026-07-15T06:11:29.434Z level=INFO source=/build/pkg/utils/api_utils.go:494 msg="Found YAML file in zip" filename=llm-provider-019f6462-9425-7bee-bc93-512d7f225e68.yaml
gateway-controller-1  | time=2026-07-15T06:11:29.434Z level=INFO source=/build/pkg/controlplane/sync_secrets.go:191 msg="Fetching secret referenced in artifact" secret_handle=d4ec4502-c96a-4dd7-8178-620c6b3d7c75 correlation_id=f49093f2-3b7a-4180-b0e4-44c590daf8c3
gateway-controller-1  | time=2026-07-15T06:11:29.436Z level=INFO source=/build/pkg/secrets/service.go:178 msg="Retrieving secret" secret_handle=d4ec4502-c96a-4dd7-8178-620c6b3d7c75 correlation_id=""
gateway-controller-1  | time=2026-07-15T06:11:29.436Z level=INFO source=/build/pkg/secrets/service.go:226 msg="Secret retrieved successfully" secret_handle=d4ec4502-c96a-4dd7-8178-620c6b3d7c75 correlation_id="" provider=aesgcm key_version=aesgcm256-v1
gateway-controller-1  | time=2026-07-15T06:11:29.436Z level=WARN source=/build/pkg/utils/llm_deployment.go:300 msg="Policy validation error" field=spec.globalPolicies[1].params.awsRoleExternalID message="String length must be greater than or equal to 1"
gateway-controller-1  | time=2026-07-15T06:11:29.436Z level=WARN source=/build/pkg/utils/llm_deployment.go:300 msg="Policy validation error" field=spec.globalPolicies[1].params.awsSecretAccessKey message="String length must be greater than or equal to 1"
gateway-controller-1  | time=2026-07-15T06:11:29.436Z level=WARN source=/build/pkg/utils/llm_deployment.go:300 msg="Policy validation error" field=spec.globalPolicies[1].params.awsSessionToken message="String length must be greater than or equal to 1"
gateway-controller-1  | time=2026-07-15T06:11:29.436Z level=WARN source=/build/pkg/utils/llm_deployment.go:300 msg="Policy validation error" field=spec.globalPolicies[1].params.awsAccessKeyID message="String length must be greater than or equal to 1"
gateway-controller-1  | time=2026-07-15T06:11:29.436Z level=ERROR source=/build/pkg/controlplane/client.go:2137 msg="Failed to create LLM provider from YAML" provider_id=019f6462-9425-7bee-bc93-512d7f225e68 error="failed to deploy LLM provider configuration from YAML: provider policy validation failed with 4 error(s): 1. spec.globalPolicies[1].params.awsRoleExternalID: String length must be greater than or equal to 1; 2. spec.globalPolicies[1].params.awsSecretAccessKey: String length must be greater than or equal to 1; 3. spec.globalPolicies[1].params.awsSessionToken: String length must be greater than or equal to 1; 4. spec.globalPolicies[1].params.awsAccessKeyID: String length must be greater than or equal to 1"
gateway-controller-1  | time=2026-07-15T06:11:29.437Z level=INFO source=/build/pkg/controlplane/client.go:705 msg="Deployment ack sent" deployment_id=019f6466-cd93-7198-b523-356ae83a5ad0 artifact_id=019f6462-9425-7bee-bc93-512d7f225e68 resource_type=llmprovider action=deploy status=failed

UI seems to be sending empty values to optional properties, causing this issue
Image

The following provider was created from bottom-up approach, which works fine.

Image

Steps to Reproduce

  1. Create an LLM Provider
  2. Attach AWS authentication policy with authenticationType: sts-assume-role, service, region and awsRoleARN
  3. Deploy to gateway

Severity Level of the Issue

Severity/Blocker (Core functionality is broken and consumer is blocked. Need immediate attention)

Environment Details (with versions)

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    Fields

    No fields configured for Bug.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions