parameters:
- name: storage.class
  brief: |
    Name of the existing Kubernetes storage class.
    This class will be used to provision PVs for Kubeflow such and notebooks and databases

    To check for available storage classes run: `kubectl get sc`

    See more: https://kubernetes.io/docs/concepts/storage/storage-classes/
  fromEnv: KUBERNETES_STORAGE_CLASS

- name: gcp
  parameters:
  - name: roles
    brief: Enables pre-deployment check if user have got sufficient roles
    value: >-
      roles/dns.admin
      roles/container.admin
      roles/iam.workloadIdentityUser
      roles/storage.admin
      roles/iam.serviceAccountTokenCreator
  - name: serviceAccount
    fromEnv: KUBEFLOW_SA_NAME
    brief: |
      Name of the Google Service Account
      If service account is not provided, it will be created automatically. 

      This service account will be used to provision DNS records therefore it will be bound to the following roles:
      - roles/dns.admin
      - roles/storage.admin
      - roles/iam.workloadIdentityUser

      To be used by following components
      - external-dns
      - cert-manager
      - gsbucket

      For technical details see deployment hooks in ./bin directory
    default: hubctl-dns-manager

# - name: gcloud.credentials
#   fromEnv: GOOGLE_CREDENTIALS
# - name: gcloud.impersonate.serviceAccount
#   default: "${dns.domain}"
#   fromEnv: GOOGLE_SERVICE_ACCOUNT

# Currently not using this addon
# - name: gke.addons.required
#   value: >-
#     configConnectorConfig

- name: gke.addons.incompatible
  brief: Enables pre-deployment check for unsupported GKE addons
  value: >-
    httpLoadBalancing   

# - name: projectId
#   fromEnv: GOOGLE_PROJECT
# - name: stateBucketName
#   fromEnv: HUB_STATE_BUCKET
# - name: hubStackName
#   fromEnv: HUB_STACK_NAME
- name: dns.name
  fromEnv: HUB_STACK_NAME
- name: dns.domain
  fromEnv: HUB_DOMAIN_NAME

- name: gke
  parameters:
  - name: name
    fromEnv: GOOGLE_GKE_CLUSTER
  - name: gke.zone
    fromEnv: GOOGLE_ZONE
  - name: gke.serviceAccount
    fromEnv: GOOGLE_GKE_CLUSTER_SA

- name: bucket.name
  value: ${dns.name}-mlpipelines

- name: dex
  parameters:
  - name: namespace
    value: kube-ingress
  - name: passwordDb.email
    brief: Kubeflow admin user name
    fromEnv: USER
    default: admin@kubeflow.local
  - name: passwordDb.password
    brief: Kubeflow admin user password
    fromEnv: DEX_PASSWORD
