apiVersion: api/v1
kind: Plan
name: deploy-plugin-tiup
steps:
- arguments:
  - name: tiup
    value: '{{testbed.tiup}}'
  - name: tidb
    value: '{{testbed.tidb}}'
  - name: tikv
    value: '{{testbed.tikv}}'
  - name: pd
    value: '{{testbed.pd}}'
  - name: plugin_url
    value: '{{meta.parameters.plugin_url}}'
  - name: tiup_mirror
    value: '{{meta.parameters.tiup_mirror}}'
  - name: tiup_target_version
    value: '{{meta.parameters.tiup_target_version}}'
  caseName: plugin-works-on-tiup-cluster
  name: plugin-works-on-tiup-cluster
# schedule: '@daily'
testbed:
  generateName: deploy-plugin-op-
  reclaimPolicy:
    gcStrategy:
      onFailure:
        artifact:
          monitor: true
          log: true
        reserveEnv:
          durationOnWorkingHour: 3h
  items:
  - name: tiup
    type: WORKLOAD_NODE # 测试资源类型: WORKLOAD_NODE
    spec:
      container:
        name: node
        image: hub.pingcap.net/qa/base-image
        imagePullPolicy: IfNotPresent
        resources:
          requests:
            memory: 4Gi
            cpu: 4000m
        securityContext:
          capabilities:
            add: ["SYS_ADMIN", "SYS_PTRACE", "NET_ADMIN"]
  - name: tidb
    type: WORKLOAD_NODE # 测试资源类型: WORKLOAD_NODE
    spec:
      container:
        name: node
        image: hub.pingcap.net/qa/base-image
        imagePullPolicy: IfNotPresent
        # labels: # 用于极端性能场景的 LB，可忽略
        #   workload-app: tidb
        resources:
          requests:
            memory: 2Gi
            cpu: 1000m
            storage: 100Gi
        securityContext:
          capabilities:
            add: ["SYS_ADMIN", "SYS_PTRACE", "NET_ADMIN"]
        volumeMount:
          mountPath: "/tiup"
  - name: tikv
    type: WORKLOAD_NODE # 测试资源类型: WORKLOAD_NODE
    spec:
      container:
        name: node
        image: hub.pingcap.net/qa/base-image
        imagePullPolicy: IfNotPresent
        resources:
          requests:
            memory: 2Gi
            cpu: 4000m
            storage: 100Gi
        securityContext:
          capabilities:
            add: ["SYS_ADMIN", "SYS_PTRACE", "NET_ADMIN"]
        volumeMount:
          mountPath: "/tiup"
  - name: pd
    type: WORKLOAD_NODE # 测试资源类型: WORKLOAD_NODE
    spec:
      container:
        name: node
        image: hub.pingcap.net/qa/base-image
        imagePullPolicy: IfNotPresent
        resources:
          requests:
            memory: 2Gi
            cpu: 1000m
            storage: 100Gi
        securityContext:
          capabilities:
            add: ["SYS_ADMIN", "SYS_PTRACE", "NET_ADMIN"]
        volumeMount:
          mountPath: "/tiup"
