# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
apiVersion: sql.cnrm.cloud.google.com/v1beta1
kind: SQLInstance
metadata:
  annotations:
    cnrm.cloud.google.com/blueprint: kpt-fn-live
    cnrm.cloud.google.com/project-id: CHANGE-PROJECTID # kpt-set: ${project-id}
  name: sql-instance
  namespace: CHANGE-NAMESPACE
spec:
  databaseVersion: POSTGRES_13
  region: northamerica-northeast1 # kpt-set: ${region}
  settings:
    activationPolicy: ALWAYS
    availabilityType: ZONAL
    diskAutoresize: true
    diskSize: 10
    diskType: PD_SSD
    ipConfiguration:
      ipv4Enabled: false
      privateNetworkRef:
        external: default # kpt-set: ${network-name}
    tier: db-custom-2-7680
---
apiVersion: sql.cnrm.cloud.google.com/v1beta1
kind: SQLDatabase
metadata:
  annotations:
    cnrm.cloud.google.com/blueprint: kpt-fn-live
    cnrm.cloud.google.com/project-id: CHANGE-PROJECTID # kpt-set: ${project-id}
  name: my-sql-db # kpt-set: ${sql-db-name}
  namespace: CHANGE-NAMESPACE
spec:
  charset: UTF8
  collation: en_US.UTF8
  instanceRef:
    name: sql-instance
    namespace: CHANGE-NAMESPACE
---
apiVersion: sql.cnrm.cloud.google.com/v1beta1
kind: SQLUser
metadata:
  annotations:
    cnrm.cloud.google.com/blueprint: kpt-fn-live
    cnrm.cloud.google.com/project-id: CHANGE-PROJECTID # kpt-set: ${project-id}
  name: my-sql-user # kpt-set: ${sql-user}
  namespace: CHANGE-NAMESPACE
spec:
  instanceRef:
    name: sql-instance
    namespace: CHANGE-NAMESPACE
  password:
    valueFrom:
      secretKeyRef:
        key: password
        name: my-sql-password-secret # kpt-set: ${sql-password-secret-name}
  type: BUILT_IN
