1*882aa7c7SMatt Gilbride#!/bin/bash 2*882aa7c7SMatt Gilbride# Copyright 2020 Google LLC. 3*882aa7c7SMatt Gilbride# 4*882aa7c7SMatt Gilbride# Licensed under the Apache License, Version 2.0 (the "License"); 5*882aa7c7SMatt Gilbride# you may not use this file except in compliance with the License. 6*882aa7c7SMatt Gilbride# You may obtain a copy of the License at 7*882aa7c7SMatt Gilbride# 8*882aa7c7SMatt Gilbride# http://www.apache.org/licenses/LICENSE-2.0 9*882aa7c7SMatt Gilbride# 10*882aa7c7SMatt Gilbride# Unless required by applicable law or agreed to in writing, software 11*882aa7c7SMatt Gilbride# distributed under the License is distributed on an "AS IS" BASIS, 12*882aa7c7SMatt Gilbride# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13*882aa7c7SMatt Gilbride# See the License for the specific language governing permissions and 14*882aa7c7SMatt Gilbride# limitations under the License. 15*882aa7c7SMatt Gilbride 16*882aa7c7SMatt Gilbrideset -eo pipefail 17*882aa7c7SMatt Gilbride 18*882aa7c7SMatt Gilbridefunction now { date +"%Y-%m-%d %H:%M:%S" | tr -d '\n' ;} 19*882aa7c7SMatt Gilbridefunction msg { println "$*" >&2 ;} 20*882aa7c7SMatt Gilbridefunction println { printf '%s\n' "$(now) $*" ;} 21*882aa7c7SMatt Gilbride 22*882aa7c7SMatt Gilbride 23*882aa7c7SMatt Gilbride# Populates requested secrets set in SECRET_MANAGER_KEYS from service account: 24*882aa7c7SMatt Gilbride# kokoro-trampoline@cloud-devrel-kokoro-resources.iam.gserviceaccount.com 25*882aa7c7SMatt GilbrideSECRET_LOCATION="${KOKORO_GFILE_DIR}/secret_manager" 26*882aa7c7SMatt Gilbridemsg "Creating folder on disk for secrets: ${SECRET_LOCATION}" 27*882aa7c7SMatt Gilbridemkdir -p ${SECRET_LOCATION} 28*882aa7c7SMatt Gilbridefor key in $(echo ${SECRET_MANAGER_KEYS} | sed "s/,/ /g") 29*882aa7c7SMatt Gilbridedo 30*882aa7c7SMatt Gilbride msg "Retrieving secret ${key}" 31*882aa7c7SMatt Gilbride docker run --entrypoint=gcloud \ 32*882aa7c7SMatt Gilbride --volume=${KOKORO_GFILE_DIR}:${KOKORO_GFILE_DIR} \ 33*882aa7c7SMatt Gilbride gcr.io/google.com/cloudsdktool/cloud-sdk \ 34*882aa7c7SMatt Gilbride secrets versions access latest \ 35*882aa7c7SMatt Gilbride --project cloud-devrel-kokoro-resources \ 36*882aa7c7SMatt Gilbride --secret ${key} > \ 37*882aa7c7SMatt Gilbride "${SECRET_LOCATION}/${key}" 38*882aa7c7SMatt Gilbride if [[ $? == 0 ]]; then 39*882aa7c7SMatt Gilbride msg "Secret written to ${SECRET_LOCATION}/${key}" 40*882aa7c7SMatt Gilbride else 41*882aa7c7SMatt Gilbride msg "Error retrieving secret ${key}" 42*882aa7c7SMatt Gilbride fi 43*882aa7c7SMatt Gilbridedone 44