apiVersion: cloud.pingcap.com/v1
kind: Provider
metadata:
  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: asia-northeast1
      zones:
        - asia-northeast1-a
        - asia-northeast1-b
        - asia-northeast1-c
    - name: asia-southeast1
      zones:
        - asia-southeast1-a
        - asia-southeast1-b
        - asia-southeast1-c
    - name: asia-southeast2
      zones:
        - asia-southeast2-a
        - asia-southeast2-b
        - asia-southeast2-c
    - name: us-central1
      zones:
        - us-central1-a
        - us-central1-b
        - us-central1-c
    - name: asia-east1
      zones:
        - asia-east1-a
        - asia-east1-b
        - asia-east1-c
    - name: asia-northeast2
      zones:
        - asia-northeast2-a
        - asia-northeast2-b
        - asia-northeast2-c
    - name: us-east4
      zones:
        - us-east4-a
        - us-east4-b
        - us-east4-c
    - name: asia-east2
      zones:
        - asia-east2-a
        - asia-east2-b
        - asia-east2-c
    - name: europe-west3
      zones:
        - europe-west3-a
        - europe-west3-b
        - europe-west3-c
    - name: asia-south1
      zones:
        - asia-south1-a
        - asia-south1-b
        - asia-south1-c
  instanceTypes:
    - name: n1-standard-1
      regions:
        - us-west1
        - asia-northeast1
        - asia-southeast1
        - asia-southeast2
        - us-central1
        - asia-east1
        - asia-northeast2
        - us-east4
        - europe-west3
        - asia-south1
      arch: amd64
      cpu: 1
      memory: 3Gi
      minStorage: 0Gi
      maxStorage: 100Gi
    - name: n1-standard-2
      regions:
        - us-west1
        - asia-northeast1
        - asia-southeast1
        - asia-southeast2
        - us-central1
        - asia-east1
        - asia-northeast2
        - us-east4
        - asia-east2
        - europe-west3
        - asia-south1
      arch: amd64
      cpu: 2
      # machine memory actual 7.5Gi
      # align with https://github.com/tidbcloud/cluster-tier-config/pull/25/files
      memory: 7Gi
    - name: n1-standard-4
      regions:
        - us-west1
        - asia-northeast1
        - asia-southeast1
        - asia-southeast2
        - us-central1
        - asia-east1
        - asia-northeast2
        - us-east4
        - asia-east2
        - europe-west3
        - asia-south1
      arch: amd64
      cpu: 4
      memory: 15Gi
    - cpu: "8"
      memory: 30Gi
      name: n1-standard-8
      regions:
        - us-west1
        - asia-northeast1
        - asia-southeast1
        - asia-southeast2
        - us-central1
        - asia-east1
        - asia-northeast2
        - us-east4
        - europe-west3
        - asia-south1
      arch: amd64
    - cpu: 8
      memory: 52Gi
      name: n1-highmem-8
      regions:
        - us-west1
        - asia-northeast1
        - asia-southeast1
        - asia-southeast2
        - us-central1
        - asia-east1
        - asia-northeast2
        - us-east4
        - europe-west3
        - asia-south1
      arch: amd64
    - cpu: 32
      memory: 120Gi
      name: n1-standard-32
      regions:
        - us-west1
        - asia-northeast1
        - asia-southeast1
        - asia-southeast2
        - us-central1
        - asia-east1
        - asia-northeast2
        - us-east4
        - europe-west3
        - asia-south1
      arch: amd64
    - name: n2-custom-4-8192
      regions:
        - us-west1
        - asia-northeast1
        - asia-southeast1
        - asia-southeast2
        - us-central1
        - asia-east1
        - asia-northeast2
        - us-east4
        - europe-west3
        - asia-south1
      arch: amd64
      cpu: 4
      memory: 8Gi
    - name: n2-custom-8-16384
      regions:
        - us-west1
        - asia-northeast1
        - asia-southeast1
        - asia-southeast2
        - us-central1
        - asia-east1
        - asia-northeast2
        - us-east4
        - asia-east2
        - europe-west3
        - asia-south1
      arch: amd64
      cpu: 8
      memory: 16Gi
    - name: n2-standard-4
      regions:
        - us-west1
        - asia-northeast1
        - asia-southeast1
        - asia-southeast2
        - us-central1
        - asia-east1
        - asia-northeast2
        - us-east4
        - asia-east2
        - europe-west3
        - asia-south1
      arch: amd64
      cpu: 4
      memory: 16Gi
    - name: n2-standard-8
      regions:
        - us-west1
        - asia-northeast1
        - asia-southeast1
        - asia-southeast2
        - us-central1
        - asia-east1
        - asia-northeast2
        - us-east4
        - asia-east2
        - europe-west3
        - asia-south1
      arch: amd64
      cpu: 8
      memory: 32Gi
    - name: n2-standard-16
      regions:
        - us-west1
        - asia-northeast1
        - asia-southeast1
        - asia-southeast2
        - us-central1
        - asia-east1
        - asia-northeast2
        - us-east4
        - asia-east2
        - europe-west3
        - asia-south1
      arch: amd64
      cpu: 16
      memory: 64Gi
    - name: t2d-standard-16
      regions:
        - us-west1
        - asia-northeast1
        - asia-southeast1
        - us-central1
        - asia-east1
        - asia-northeast2
        - us-east4
        - asia-east2
        - europe-west3
        - asia-south1
      arch: amd64
      cpu: 16
      memory: 64Gi
      unavailableMemory: 2Gi
    - name: n2-custom-16-32768
      regions:
        - us-west1
        - asia-northeast1
        - asia-southeast1
        - asia-southeast2
        - us-central1
        - asia-east1
        - asia-northeast2
        - us-east4
        - asia-east2
        - europe-west3
        - asia-south1
      arch: amd64
      cpu: 16
      memory: 32Gi
    - name: n2-highmem-8
      regions:
        - us-west1
        - asia-northeast1
        - asia-southeast1
        - asia-southeast2
        - us-central1
        - asia-east1
        - asia-northeast2
        - us-east4
        - asia-east2
        - europe-west3
        - asia-south1
      arch: amd64
      cpu: 8
      memory: 64Gi
      localStorageSize: 1500Gi
      minStorage: 1500Gi
      maxStorage: 1500Gi
    - name: n2-highmem-16
      regions:
        - us-west1
        - asia-northeast1
        - asia-southeast1
        - asia-southeast2
        - us-central1
        - asia-east1
        - asia-northeast2
        - us-east4
        - asia-east2
        - europe-west3
        - asia-south1
      arch: amd64
      cpu: 16
      memory: 128Gi
    - name: n2-highmem-32
      regions:
        - us-west1
        - asia-northeast1
        - asia-southeast1
        - asia-southeast2
        - us-central1
        - asia-east1
        - asia-northeast2
        - us-east4
        - europe-west3
        - asia-south1
      arch: amd64
      cpu: 32
      memory: 256Gi
      minStorage: 2048Gi
      maxStorage: 2048Gi
    - name: n2-standard-2
      regions:
        - us-west1
        - asia-northeast1
        - asia-southeast1
        - asia-southeast2
        - us-central1
        - asia-east1
        - asia-northeast2
        - us-east4
        - asia-east2
        - europe-west3
        - asia-south1
      arch: amd64
      cpu: 2
      memory: 8Gi
      minStorage: 0Gi
      maxStorage: 500Gi
    - name: g1-small
      regions:
        - us-west1
        - asia-northeast1
        - asia-southeast1
        - asia-southeast2
        - us-central1
        - asia-east1
        - asia-northeast2
        - us-east4
        - europe-west3
        - asia-south1
      arch: amd64
      cpu: 1
      memory: 1.7Gi
      minStorage: 0Gi
      maxStorage: 50Gi
    - name: n2-standard-32
      regions: [ "asia-east2", "asia-southeast2", "asia-east1", "asia-northeast1", "us-west1" ]
      arch: amd64
      cpu: 32
      memory: 128Gi
  forProvider:
    apiVersion: cloud.pingcap.com/v1
    kind: GardenerProviderSpec
    # TODO: the relate.. reporter in dbaas
    enableGracefulShutdownWebhook: true
    reporter:
      image: "dbaas/prod/billing-reporter:v0.1.2"
      sqsEndpoint: "https://sqs.us-west-2.amazonaws.com/380838443567/prod-billing.fifo"
      region: "us-west-2"
    sliReporter:
      image: "dbaas/prod/sli-reporter:v2.0.1"
      deliveryStreamName: "sli-prod-metrics"
      deliveryStreamRoleArn: "arn:aws:iam::557537366020:role/sli-cross-account-role"
      region: "us-west-2"
    proxy:
      image: "dbaas/prod/cluster-proxy:v1.2.28"
      auth0Audience: "prod-proxy-service"
      auth0Domain: "tidb.auth0.com"
      loadBalancerSourceRanges:
        - "54.188.27.23/32"
        - "44.231.162.131/32"
        - "100.20.198.224/32"
        - "52.41.43.61/32"
    dataflowAgent:
      image: "gcr.io/dbaas-prod/dbaas/prod/dataflow-agent:release-v20240903"
    topsql:
      image: "dbaas/prod/topsql-agent:v0.2.2"
    gcp:
      publicHostedZoneDomain: prod.gcp.tidbcloud.com
      publicHostedZoneId: "5428832898776974204"
      crossplaneProvider: provider-gcp
      projectID: "dbaas-prod"
      certManagerRole: "projects/dbaas-prod/roles/prodCertManager"
    aws:
      accountID: "380838443567"
      crossplaneProvider: provider-aws
      pcaArn: "arn:aws:acm-pca:us-west-2:380838443567:certificate-authority/ed5106d3-0890-4af9-bd60-b6df4f6299ca"
      pcaRegion: "us-west-2"
