Google cloud platform git推送后未刷新Google函数源

Google cloud platform git推送后未刷新Google函数源,google-cloud-platform,google-cloud-functions,google-cloud-repository,Google Cloud Platform,Google Cloud Functions,Google Cloud Repository,我将google云函数的源定义为google云存储库。 我更改了我的函数源代码,提交它,并通过“git push--all google”将其推入存储库。 我在存储库中看到了新版本的函数代码,但云函数采用了旧版本 因此,我需要部署新版本的函数。 我明白我不能用控制台来做这件事。 当我尝试使用SDK部署它时,我收到 gcloud functions deploy json_in_out --runtime nodejs8 --source https://source.developers.goo

我将google云函数的源定义为google云存储库。 我更改了我的函数源代码,提交它,并通过“git push--all google”将其推入存储库。 我在存储库中看到了新版本的函数代码,但云函数采用了旧版本


因此,我需要部署新版本的函数。 我明白我不能用控制台来做这件事。 当我尝试使用SDK部署它时,我收到

gcloud functions deploy json_in_out --runtime nodejs8 --source https://source.developers.google.com/projects/mot_cz/repos/functions/demo/master/paths/json_in_out --trigger-http
ERROR: (gcloud.functions.deploy) ResponseError: status=[400], code=[Bad Request], message=[The request has errors
Problems:
Source repository URL is invalid https://source.developers.google.com/projects/mot_cz/repos/functions/demo/master/paths/json_in_out does not match the expected pattern

如果不部署修改后的函数,则不会发生任何更改。仅仅将代码推送到源代码管理是不够的——您必须部署新代码才能开始运行它。

正如@Doug Stevenson所提到的,将代码推送到云源代码库和将其部署为云函数的新版本是两件不同的事情。但是,您可以使用云构建轻松地自动化此过程。基本实施包括两个步骤:

1.使用以下内容将cloudbuild.yaml文件添加到源代码中:

steps:
- name: 'gcr.io/cloud-builders/gcloud'
  args: ['functions', 'deploy', '[YOUR_DEPLOYED_FUNCTION_NAME]', '[YOUR_FUNCTION_TRIGGER]', '--runtime', '[YOUR_RUNTIME]', '--entry-point', '[YOUR_FUNCTION_NAME_IN_CODE]']
2.在设置中创建生成触发器,以便在提交到存储库上的特定分支或标记时部署代码


您将发现一个更复杂的用例,它涉及在需要时进行测试。

因此,我需要部署新版本的函数。