version: 0.1

remote:
  - type: oss-standalone
  - setup: modules-m5

exporter:
  redistimeseries:
    timemetric: "$.StartTime"
    metrics:
      - "$.Totals.overallQuantiles.all_queries.q0"
      - "$.Totals.overallQuantiles.all_queries.q50"
      - "$.Totals.overallQuantiles.all_queries.q95"
      - "$.Totals.overallQuantiles.all_queries.q99"
      - "$.Totals.overallQuantiles.all_queries.q100"
      - "$.Totals.overallQueryRates.all_queries"
      - "$.Tests.Overall.rps"
      - "$.Tests.Overall.avg_latency_ms"
      - "$.Tests.Overall.p50_latency_ms"
      - "$.Tests.Overall.p95_latency_ms"
      - "$.Tests.Overall.p99_latency_ms"
      - "$.Tests.Overall.max_latency_ms"
      - "$.Tests.Overall.min_latency_ms"
      - '$."ALL STATS".*."Ops/sec"'
      - '$."ALL STATS".*."Latency"'
  comparison:
    metrics:
      - "Ops/sec"
      - "$.Tests.Overall.rps"
      - "$.OverallRates.overallOpsRate"
      - "$.Totals.overallQueryRates.all_queries"
    mode: higher-better
    baseline-branch: master
clusterconfig:
  init_commands:
  - commands:
    - 'timeseries.REFRESHCLUSTER'

spec:
  setups:
  - name: oss-standalone
    type: oss-standalone
    redis_topology:
      primaries: 1
      replicas: 0
    resources:
      requests:
        cpus: "1"
        memory: "10g"

  - name: oss-standalone-1replica
    type: oss-standalone
    redis_topology:
      primaries: 1
      replicas: 1
      placement: "sparse"
    resources:
      requests:
        cpus: "2"
        memory: "10g"

  - name: oss-cluster-01-primaries
    type: oss-cluster
    redis_topology:
      primaries: 1
      replicas: 0
      placement: "sparse"
    resources:
      requests:
        cpus: "1"
        memory: "10g"

  - name: oss-cluster-02-primaries
    type: oss-cluster
    redis_topology:
      primaries: 2
      replicas: 0
      placement: "sparse"
    resources:
      requests:
        cpus: "2"
        memory: "10g"

  - name: oss-cluster-03-primaries
    type: oss-cluster
    redis_topology:
      primaries: 3
      replicas: 0
      placement: "sparse"
    resources:
      requests:
        cpus: "3"
        memory: "30g"

  - name: oss-cluster-05-primaries
    type: oss-cluster
    redis_topology:
      primaries: 5
      replicas: 0
      placement: "sparse"
    resources:
      requests:
        cpus: "5"
        memory: "50g"

  - name: oss-cluster-09-primaries
    type: oss-cluster
    redis_topology:
      primaries: 9
      replicas: 0
      placement: "sparse"
    resources:
      requests:
        cpus: "10"
        memory: "90g"

  - name: oss-cluster-15-primaries
    type: oss-cluster
    redis_topology:
      primaries: 15
      replicas: 0
      placement: "sparse"
    resources:
      requests:
        cpus: "15"
        memory: "150g"

  - name: oss-cluster-30-primaries
    type: oss-cluster
    redis_topology:
      primaries: 30
      replicas: 0
      placement: "sparse"
    resources:
      requests:
        cpus: "30"
        memory: "300g"
