У меня установлен Jenkins на виртуальной машине GCE (Debian) в проекте xxxx.
Мне нужно развернуть облачную функцию с источником в облачном хранилище Google для проекта гггг.
Я делаю это успешно из оболочки Дженкинс В.М. Чтобы развернуть функцию из конвейера, я сделал следующее:
Создайте учетную запись службы в проекте гггг.
Загрузите ключ (json файл) в ВМ.
Активация учетной записи gcloud auth activit-service-account yyyy-sa@yyyy.iam.gservice account.com - ключ-файл jenkins-test. json
Определить конвейер:
конвейер {
agent any
stages {
stage('Build') {
steps {
sh 'gcloud config set account yyyy@yyyy.iam.gserviceaccount.com'
sh '''
gcloud functions deploy helloWorld --region=us-central1 --runtime nodejs8 --trigger-http --project yyyy \
--source https://source.developers.google.com/projects/xxxx/repos/test1/moveable-aliases/master/paths/HelloWorld/
'''
}
}
}
}
В любом случае, я получаю:
gcloud functions deploy helloWorld --region=us-central1 --runtime nodejs8 --trigger-http
--project yyyy --source https://source.developers.google.com/projects/xxxx/repos/test1/moveable-
aliases/master/paths/HelloWorld/
ERROR: (gcloud.functions.deploy) Your current active account [yyyy@yyyy.iam.gserviceaccount.com] **does not have any valid credentials**