apiVersion: cloud.pingcap.com/v1
kind: Provider
metadata:
  labels:
    cloud.pingcap.com/provider-type: gcp
  name: gcp
spec:
  type: gcp
  storageClasses:
    - name: tikv-pd-ssd
      type: pd-ssd
    - name: tiflash-pd-ssd
      type: pd-ssd
    - name: pd-pd-ssd
      type: pd-ssd
  regions:
    - name: us-west1
      zones:
        - us-west1-a
        - us-west1-b
        - us-west1-c
    - name: us-west2
      zones:
        - us-west2-a
        - us-west2-b
        - us-west2-c
  instanceTypes:
    - name: n1-standard-1
      arch: amd64
      regions: ["us-west1", "us-west2"]
      cpu: '1'
      memory: 3Gi
      minStorage: '0'
      maxStorage: 100Gi
      unavailableMemory: '0'
    - name: n1-standard-2
      arch: amd64
      regions: ["us-west1", "us-west2"]
      cpu: '2'
      # machine memory actual 7.5Gi
      # align with https://github.com/tidbcloud/cluster-tier-config/pull/25/files
      memory: 7Gi
      unavailableMemory: '0'
    - name: n1-standard-4
      arch: amd64
      regions: ["us-west1", "us-west2"]
      cpu: '4'
      memory: 15Gi
      unavailableMemory: '0'
    - cpu: "8"
      memory: 30Gi
      name: n1-standard-8
      arch: amd64
      regions: ["us-west1", "us-west2"]
      unavailableMemory: '0'
    - cpu: "32"
      memory: 120Gi
      name: n1-standard-32
      arch: amd64
      regions: ["us-west1", "asia-northeast1", "asia-southeast1", "us-central1"]
      unavailableMemory: '0'
    - cpu: "8"
      memory: 52Gi
      name: n1-highmem-8
      arch: amd64
      regions: ["us-west1", "us-west2"]
      unavailableMemory: '0'
    - name: n2-custom-4-8192
      arch: amd64
      regions: ["us-west1", "us-west2"]
      cpu: '4'
      memory: 8Gi
      unavailableMemory: '0'
    - name: n2-custom-8-16384
      arch: amd64
      regions: ["us-west1", "us-west2"]
      cpu: '8'
      memory: 16Gi
      unavailableMemory: '0'
    - name: n2-standard-4
      arch: amd64
      regions: ["us-west1", "us-west2"]
      cpu: '4'
      memory: 16Gi
      unavailableMemory: '0'
    - name: n2-standard-8
      arch: amd64
      cpu: '8'
      memory: 32Gi
      regions: ["us-west1", "us-west2"]
      unavailableMemory: '0'
    - name: n2-highmem-8
      arch: amd64
      cpu: '8'
      memory: 64Gi
      localStorageSize: 1500Gi
      minStorage: 1500Gi
      maxStorage: 1500Gi
      regions: ["us-west1", "us-west2"]
      unavailableMemory: '0'
    - name: n2-standard-2
      arch: amd64
      cpu: '2'
      memory: 8Gi
      minStorage: '0'
      maxStorage: 500Gi
      regions: ["us-west1", "us-west2"]
      unavailableMemory: '0'
    - name: g1-small
      arch: amd64
      cpu: '1'
      memory: 1825361100800m #1.7Gi
      minStorage: '0'
      maxStorage: 50Gi
      regions: ["us-west1", "us-west2"]
      unavailableMemory: '0'
    - name: e2-medium
      arch: amd64
      cpu: '2'
      memory: 4Gi
      minStorage: '0'
      maxStorage: 500Gi
      regions: ["us-west1", "us-west2"]
      unavailableMemory: '0'
  forProvider:
    apiVersion: cloud.pingcap.com/v1
    kind: GardenerProviderSpec
    # TODO: the relate.. reporter in dbaas
    enableGracefulShutdownWebhook: true
    reporter:
      image: "dbaas/dev/billing-reporter:5361cfdaede17bc8f46c0cca7d862aa7d88cd8ea"
      sqsEndpoint: "https://sqs.us-west-2.amazonaws.com/385595570414/nightly-billing.fifo"
      region: "us-west-2"
    sliReporter:
      image: "dbaas/dev/sli-reporter:189aa14429727ad1708f334c82ad94ab8bf69f9a"
      region: "us-west-2"
      deliveryStreamName: "sli-dev-metrics"
      deliveryStreamRoleArn: "arn:aws:iam::552185537300:role/sli-cross-account-role"
    proxy:
      # TODO: the proxy.. reporter in dbaas
      image: "dbaas/dev/cluster-proxy:cbdfeb838e589c2cca68ef4df1eeecc14511a43b"
      auth0Audience: "dev-proxy-service"
      auth0Domain: "tidb-dev.us.auth0.com"
      loadBalancerSourceRanges:
        - "54.148.240.60/32"
        - "54.71.2.116/32"
        - "52.13.110.238/32"
    dataflowAgent:
      image: "gcr.io/pingcap-gardener/dbaas/dev/dataflow-agent:38501dec90f250af08836b5e63b9e771fd55b0c5"
    topsql:
      image: "dbaas/dev/topsql-agent:511df4e3c487ed0cc324d306a83fea4633dc4ddb"
    gcp:
      publicHostedZoneDomain: dev.gcp.tidbcloud.com
      publicHostedZoneId: "557076687191963248"
      crossplaneProvider: provider-gcp
      projectID: "pingcap-gardener"
      certManagerRole: "projects/pingcap-gardener/roles/devCertManager"
    # currently gcp cluster also relies some aws resources
    aws:
      accountID: "385595570414"
      crossplaneProvider: provider-aws
      pcaArn: "arn:aws:acm-pca:us-west-2:385595570414:certificate-authority/4668d5cc-1042-4371-9ff4-72ab9493c545"
      pcaRegion: "us-west-2"
