# SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
# SPDX-License-Identifier: LicenseRef-NvidiaProprietary
#
# NVIDIA CORPORATION, its affiliates and licensors retain all intellectual
# property and proprietary rights in and to this material, related
# documentation and any modifications thereto. Any use, reproduction,
# disclosure or distribution of this material and related documentation
# without an express license agreement from NVIDIA CORPORATION or
# its affiliates is strictly prohibited.

specVersion: 2.5.0

version: 0.1.0

name: animation-pipeline

description: A basic deployment configuration for NVIDIA's animation pipeline

dependencies:
  - ucf.svc.audio2face:1.2.4
  - ucf.svc.ia-animation-graph-microservice:1.1.0
  - ucf.svc.ia-unreal-renderer-microservice:0.1.3
  - ucf.svc.core.redis:0.0.17
  - ucf.svc.ace-configurator:1.0.0

secrets:
  k8sSecret/ngc-api-key-secret/NGC_CLI_API_KEY:
    k8sSecret:
      secretName: ngc-api-key-secret
      key: NGC_CLI_API_KEY

components:
  - name: ace-configurator
    type: ucf.svc.ace-configurator
    parameters:
      imagePullSecrets:
        - name: ngc-docker-reg-secret
  - name: redis
    type: ucf.svc.core.redis
    parameters:
      imagePullSecrets:
        - name: ngc-docker-reg-secret
  - name: audio2face
    type: ucf.svc.audio2face
    parameters:
      imagePullSecrets:
        - name: ngc-docker-reg-secret
      configs:
        deployment_config.yaml:
          endpoints:
            use_bidirectional: false
  - name: animation-graph
    type: ucf.svc.ia-animation-graph-microservice
    parameters:
      imagePullSecrets:
        - name: ngc-docker-reg-secret
  - name: unreal-renderer
    type: ucf.svc.ia-unreal-renderer-microservice
    parameters:
      imagePullSecrets:
        - name: ngc-docker-reg-secret
        - name: ghcr-docker-reg-secret
  - name: otlp
    type: ucf.svc.external-endpoint
    parameters:
      service: 127.0.0.1
      port: 4318

connections:
  audio2face/a2f-grpc-client: animation-graph/anim-server
  unreal-renderer/anim-source: animation-graph/anim-server
  animation-graph/redis: redis/redis
  animation-graph/otlp: otlp/endpoint
