apiVersion: api/v1
kind: Plan
name: conprof
tags: []
schedule: "@daily"
testbed:
    generateName: testbed-endless-conprof-
    items:
        - name: tiup
          type: WORKLOAD_NODE
          spec:
              container:
                  name: node
                  image: hub.pingcap.net/qa/base-image
                  resources:
                      requests:
                          memory: 4Gi
                          cpu: 2000m
                  securityContext:
                      capabilities:
                          add: ["SYS_ADMIN", "SYS_PTRACE", "NET_ADMIN"]

        - name: ngm
          type: WORKLOAD_NODE
          spec:
              container:
                  name: node
                  image: hub.pingcap.net/qa/base-image
                  resources:
                      requests:
                          memory: 4Gi
                          cpu: 2000m
                  securityContext:
                      capabilities:
                          add: ["SYS_ADMIN", "SYS_PTRACE", "NET_ADMIN"]

        - name: tidb
          type: WORKLOAD_NODE
          spec:
              container:
                  name: node
                  image: hub.pingcap.net/qa/base-image
                  resources:
                      requests:
                          memory: 4Gi
                          cpu: 2000m
                  securityContext:
                      capabilities:
                          add: ["SYS_ADMIN", "SYS_PTRACE", "NET_ADMIN"]

        - name: tikv
          type: WORKLOAD_NODE
          spec:
              container:
                  name: node
                  image: hub.pingcap.net/qa/base-image
                  resources:
                      requests:
                          memory: 8Gi
                          cpu: 4000m
                  securityContext:
                      capabilities:
                          add: ["SYS_ADMIN", "SYS_PTRACE", "NET_ADMIN"]

        - name: pd
          type: WORKLOAD_NODE
          spec:
              container:
                  name: node
                  image: hub.pingcap.net/qa/base-image
                  resources:
                      requests:
                          memory: 4Gi
                          cpu: 2000m
                  securityContext:
                      capabilities:
                          add: ["SYS_ADMIN", "SYS_PTRACE", "NET_ADMIN"]

        - name: sysbench
          type: WORKLOAD_NODE
          spec:
              container:
                  name: node
                  image: "{{meta.parameters.bench_toolset_image}}"
                  command:
                      - tail
                      - "-f"
                      - "/dev/null"
                  resources:
                      requests:
                          memory: 2Gi
                          cpu: 1000m
                  securityContext:
                      capabilities:
                          add: ["SYS_ADMIN", "SYS_PTRACE", "NET_ADMIN"]

steps:
    - name: conprof-network-partition
      caseName: conprof_network_partition
      arguments:
          - name: tiup
            value: "{{testbed.tiup}}"
          - name: ngm
            value: "{{testbed.ngm}}"
          - name: tidb
            value: "{{testbed.tidb}}"
          - name: tikv
            value: "{{testbed.tikv}}"
          - name: pd
            value: "{{testbed.pd}}"
          - name: sysbench
            value: "{{testbed.sysbench}}"
    - name: conprof-restart-target
      caseName: conprof_restart_target
      arguments:
          - name: tiup
            value: "{{testbed.tiup}}"
          - name: ngm
            value: "{{testbed.ngm}}"
          - name: tidb
            value: "{{testbed.tidb}}"
          - name: tikv
            value: "{{testbed.tikv}}"
          - name: pd
            value: "{{testbed.pd}}"
          - name: sysbench
            value: "{{testbed.sysbench}}"
    - name: conprof-scale-target
      caseName: conprof_scale_target
      arguments:
          - name: tiup
            value: "{{testbed.tiup}}"
          - name: ngm
            value: "{{testbed.ngm}}"
          - name: tidb
            value: "{{testbed.tidb}}"
          - name: tikv
            value: "{{testbed.tikv}}"
          - name: pd
            value: "{{testbed.pd}}"
          - name: sysbench
            value: "{{testbed.sysbench}}"
