Bitbucket和Azure DevOps之间的集成

Bitbucket和Azure DevOps之间的集成,azure,azure-devops,continuous-integration,bitbucket,webhooks,Azure,Azure Devops,Continuous Integration,Bitbucket,Webhooks,我的要求是我想将我的Bitbucket repo与Azure DevOps CI服务器集成,以便在我推送Bitbucket repo中的代码时,我的管道应该在Azure DevOps CI服务器中触发,因为我已经在Bitbucket repo中创建了一个webhook 我已经在URL部分添加了Azure DevOps CI服务器URL,并在Bitbucket的webhook的机密部分添加了secret。秘密是在Azure DevOps服务器中生成的个人访问令牌。 但在创建webhook时,我得到

我的要求是我想将我的Bitbucket repo与Azure DevOps CI服务器集成,以便在我推送Bitbucket repo中的代码时,我的管道应该在Azure DevOps CI服务器中触发,因为我已经在Bitbucket repo中创建了一个webhook

我已经在URL部分添加了Azure DevOps CI服务器URL,并在Bitbucket的webhook的机密部分添加了secret。秘密是在Azure DevOps服务器中生成的个人访问令牌。 但在创建webhook时,我得到了

Resource not available for anonymous access. Client authentication required. - Azure DevOps server
即使我添加了一个秘密,为什么它会给出客户端身份验证所需的错误?原因可能是什么

另外,关于Bitbucket repo和Azure DevOps CI服务器之间集成的文档很少

更新:我已经按照Vito Liu MSFT在回答中的建议在触发器选项卡上启用了持续集成,但当我将代码推送到bitbucket中的feature/POC分支时,我的管道仍然没有自动触发

Yml文件如下

resources:
  repositories:
  - repository: myRepo
    type: externalgit
    name: 'myRepo' 
    endpoint: myrepo
    ref: feature/POC 

trigger:
  - feature/POC
我在我的管道应该在Azure DevOps CI服务器中触发的bitbucket repo中推送代码

我们可以在Azure DevOps中创建服务连接,在Azure DevOps中创建管道并选择Bitbucket云作为源,然后在
触发器
选项卡上选择
启用持续集成
。我们可以参考此了解更多详细信息

更新1

是的,如果我们在触发器选项卡上启用持续集成,则Bitbucket中不需要Webhook。我已经分享了我的测试结果,你可以查看下面的图片

更新2

根据图片,似乎您正在使用Azure Repos Git作为源,而不是Bitbucket Cloud,请注意源图标

更新3

在Azure DevOps中创建yaml管道,我们需要选择Bitbucket云作为代码资源

然后选择Bitbucket repository,它会将yaml文件保存在Bitbucket Repo中而不是Azure DevOps Repo中,然后我们可以配置CI触发器

我使用默认的yaml模板进行测试

注意:我们需要更新字段触发器,Azure DevOps已将默认分支更新为main,而不是master

注意:如果yml文件保存在Azure DevOps repo中,那么如果我们在Bitbucket repo中推送代码,它将不会触发构建

结果:


我最终通过替换{}大括号中的值从下面的URL创建了webhook。现在我在webhook上得到了200条回复

       https://{hostName}/{collectionName}/_apis/public/pipelines/webhooks/{projectName}/{buildDefinitionId}/{repositoryKey}?api-version=6.0-preview.1 

如果我们在“触发器”选项卡上启用持续集成,则不需要Webhook?是的,您可以检查更新1,然后在此处共享结果。我已按照您建议的过程进行操作,但我的管道仍不会自动触发。您可以检查我编辑的答案。发布答案