Я пытаюсь создать облачную функцию, слушающую тему cloudbuilds и вызывающую API для запуска сборки. Я думаю, что чего-то не хватает в моем файле index.js (я новичок в Node.js). Можете ли вы привести пример того, как облачная функция выполняет API-вызов к Cloud Build API?
Вот моя функция:
const request = require('request')
const accessToken = '$(gcloud config config-helper --format='value(credential.access_token)')';
request({
url: 'https://cloudbuild.googleapis.com/v1/projects/[PROJECT_ID]/builds',
auth: {
'bearer': accessToken
},
method: 'POST',
json: {"steps": [{"name":"gcr.io/cloud-builders/gsutil", "args": ['cp','gs://adolfo-test-cloudbuilds/cloudbuild.yaml', 'gs://adolfo-test_cloudbuild/cloudbuild.yaml']}]},
},
module.exports.build = (err, res) => {
console.log(res.body);
});
Я выполнял команду gcloud config config-helper --format='value(credential.access_token)'
, копировал токен и помещал его в качестве значения в переменную accessToken. Но это не сработало для меня.
Вот ошибка: { error: { code: 403, message: 'The caller does not have permission', status: 'PERMISSION_DENIED' } }