# Copyright 2021 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.
# [START anthosconfig_kustomize_pipeline_cloudbuild]
steps:
- name: 'gcr.io/google-samples/cloudbuild-kustomize:latest'
  id: kustomize-render
  entrypoint: 'bash'
  args:
  - '-eEuo'
  - 'pipefail'
  - '-c'
  - |-
    kustomize build source-config --output deploy-config/
  secretEnv: ['GITHUB_TOKEN']
- name: 'gcr.io/google-samples/cloudbuild-kustomize:latest'
  id: commit-output
  entrypoint: 'bash'
  args:
  - '-eEuo'
  - 'pipefail'
  - '-c'
  - |-
    REPO_URL=`git config --get remote.origin.url`
    REPO_NAME=`echo $${REPO_URL} | sed -Ene's#https://github.com/([^/]*)/(.*).git#\2#p'`
    GITHUB_USERNAME=`echo $${REPO_URL} | sed -Ene's#https://github.com/([^/]*)/(.*).git#\1#p'`

    git config user.name "Cloud Build"
    git config user.email "robot@noreply.kustomize.io"
    git remote set-url origin https://$${GITHUB_USERNAME}:$$GITHUB_TOKEN@github.com/$${GITHUB_USERNAME}/$${REPO_NAME}.git

    sed -i "s/Last sync: \`.......\`/Last sync: \`${SHORT_SHA}\`/g" deploy-config/README.md
    git add deploy-config/

    git commit -m "Rendered: ${SHORT_SHA}
    Built from commit ${COMMIT_SHA} of source-config/"
    git push origin HEAD:main
  secretEnv: ['GITHUB_TOKEN']
availableSecrets:
  secretManager:
  - versionName: projects/${PROJECT_ID}/secrets/github-token/versions/1 
    env: 'GITHUB_TOKEN'
# [END anthosconfig_kustomize_pipeline_cloudbuild]
