Как создать триггер с переменной множественных подстановок в сборке Google Cloud с Python - PullRequest
0 голосов
/ 08 апреля 2020

Я работаю над кодом Python для создания триггера Google Cloud, я не могу добавить переменную подстановки.

В настоящее время у меня есть код ниже

from google.cloud.devtools import cloudbuild_v1

client = cloudbuild_v1.CloudBuildClient()

build_trigger_template = cloudbuild_v1.types.BuildTrigger()

build_trigger_template.description = 'test to create trigger'
build_trigger_template.name = 'github-cloudbuild-trigger1'
build_trigger_template.github.name = 'github-cloudbuild'
build_trigger_template.github.pull_request.branch = 'master'
build_trigger_template.filename = 'cloudbuild.yaml'

response = client.create_build_trigger('dev',
                                       build_trigger_template)

Я хочу добавить две переменные подстановки _ENV и _PROJECT, я пробовал нижеупомянутым способом, но не работает.

build_trigger_template.substitutions = {'_ENV': 'test',
                                        '_PROJECT': 'pro-test'}

Ошибка: AttributeError: Назначение не допускается для повторных полей "подстановки" в объекте сообщения протокола.

Спасибо,

Рагхунатх.

1 Ответ

1 голос
/ 15 апреля 2020

Это проблема с назначением объекта protobuf.

Если вы посмотрите на объект, используя dir(build_trigger_template.substitutions)

, вы найдете метод .update, который будет принимать словарь.

, поэтому попробуйте следующее, вернуть None но ваша структура будет обновлена.

build_trigger_template.substitutions.update({'_ENV': 'test', '_PROJECT': 'pro-test'})

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...