# Template generated from load test configurations by loadtest_template.py.
#
# Configuration templates contain client and server configurations for multiple
# languages, and may contain template substitution keys. These templates are
# used to generate load test configurations by selecting clients and servers for
# the required languages. The source files for template generation may be load
# test configurations or load test configuration templates. Load test
# configuration generation is performed by loadtest_config.py. See documentation
# below:
# https://github.com/grpc/grpc/blob/master/tools/run_tests/performance/README.md
apiVersion: e2etest.grpc.io/v1
kind: LoadTest
metadata:
  name: prebuilt_all_languages
spec:
  clients:
  - language: cxx
    pool: ${client_pool}
    run:
    - args:
      - -c
      - |
        GRPC_EXPERIMENTS="${grpc_experiment}" \
        timeout --kill-after="${KILL_AFTER}" "${POD_TIMEOUT}" \
            /source/code/bazel-bin/test/cpp/qps/qps_worker \
            --driver_port="${DRIVER_PORT}"
      command:
      - bash
      image: ${prebuilt_image_prefix}/cxx:${prebuilt_image_tag}
      name: main
  driver:
    language: cxx
    pool: ${driver_pool}
    run:
    - image: ${driver_image}
      name: main
  results:
    bigQueryTable: ${big_query_table}
  servers:
  - language: cxx
    pool: ${server_pool}
    run:
    - args:
      - -c
      - |
        GRPC_EXPERIMENTS="${grpc_experiment}" \
        timeout --kill-after="${KILL_AFTER}" "${POD_TIMEOUT}" \
            /source/code/bazel-bin/test/cpp/qps/qps_worker \
            --driver_port="${DRIVER_PORT}" --server_port=10010
      command:
      - bash
      image: ${prebuilt_image_prefix}/cxx:${prebuilt_image_tag}
      name: main
  timeoutSeconds: ${timeout_seconds}
  ttlSeconds: 86400
