Azure devops 如何设置Azure DevOps管道,以便在推送到BitBucket存储库时触发?
我有一个BitBucket存储库,到目前为止看起来像这样:Azure devops 如何设置Azure DevOps管道,以便在推送到BitBucket存储库时触发?,azure-devops,continuous-integration,bitbucket,azure-pipelines,devops,Azure Devops,Continuous Integration,Bitbucket,Azure Pipelines,Devops,我有一个BitBucket存储库,到目前为止看起来像这样: # Branches that should trigger the CI pipeline upon change trigger: - master - develop - feature/* pool: vmImage: 'macos-latest' variables: buildConfiguration: 'Release' outputDirectory: '$(build.binariesDirector
# Branches that should trigger the CI pipeline upon change
trigger:
- master
- develop
- feature/*
pool:
vmImage: 'macos-latest'
variables:
buildConfiguration: 'Release'
outputDirectory: '$(build.binariesDirectory)/$(buildConfiguration)'
steps:
- task: NuGetToolInstaller@1
- task: NuGetCommand@2
inputs:
restoreSolution: '**/*.sln'
- task: SonarCloudPrepare@1
inputs:
SonarCloud: 'Sonar Cloud'
organization: 'org-name'
scannerMode: 'MSBuild'
projectKey: 'project-key'
projectName: 'Project Name'
- task: XamarinAndroid@1
inputs:
projectFile: '**/*droid*.csproj'
outputDirectory: '$(outputDirectory)'
configuration: '$(buildConfiguration)'
- task: XamariniOS@2
inputs:
solutionFile: '**/*.sln'
configuration: 'Release'
clean: true
packageApp: true
buildForSimulator: true
runNugetRestore: false
- task: SonarCloudAnalyze@1
- task: SonarCloudPublish@1
inputs:
pollingTimeoutSec: '300'
- 主人
- 发展
- 特征/a
- 功能/b
- 功能/c
# Branches that should trigger the CI pipeline upon change
trigger:
- master
- develop
- feature/*
pool:
vmImage: 'macos-latest'
variables:
buildConfiguration: 'Release'
outputDirectory: '$(build.binariesDirectory)/$(buildConfiguration)'
steps:
- task: NuGetToolInstaller@1
- task: NuGetCommand@2
inputs:
restoreSolution: '**/*.sln'
- task: SonarCloudPrepare@1
inputs:
SonarCloud: 'Sonar Cloud'
organization: 'org-name'
scannerMode: 'MSBuild'
projectKey: 'project-key'
projectName: 'Project Name'
- task: XamarinAndroid@1
inputs:
projectFile: '**/*droid*.csproj'
outputDirectory: '$(outputDirectory)'
configuration: '$(buildConfiguration)'
- task: XamariniOS@2
inputs:
solutionFile: '**/*.sln'
configuration: 'Release'
clean: true
packageApp: true
buildForSimulator: true
runNugetRestore: false
- task: SonarCloudAnalyze@1
- task: SonarCloudPublish@1
inputs:
pollingTimeoutSec: '300'
但是,即使在我推到一个远程功能/*分支,或者在我合并了一个PR dodeveloper之后,我的构建管道也不会运行。我尝试在Azure DevOps中的触发器选项卡上选中“从这里覆盖YAML连续集成触发器”,然后在“分支过滤器””上包含相同的分支
以下是管道如何连接到我的Bitbucket存储库
但是,除非我手动执行,否则管道仍然不会运行。你知道我做错了什么吗?这不应该像现在这样吗?这能回答你的问题吗@Nouman谢谢,但是没有。我能够保存对管道的更改,并且我刚刚验证Azure DevOps能够在Bitbucket.TBH中创建必要的web挂钩,您的管道看起来很好。我已经使用您的yml(删除了Sonar步骤)重新创建了一个构建管道,当我检查BitBucket中的一个功能分支时,可以很容易地触发它。当
develope
分支被设置为“手动和计划构建的默认分支”时,这个问题可能会重现,只有从Bitbucket repo中的develop
创建的分支才能触发Azure DevOps中的CI构建,这与feature/*
相同。我认为这就是我们遇到这个问题的原因,但我通过多重测试发现了这一点,并且没有找到任何官方文档可以支持,因此可能是不正确的。由于未知的原因,这一理论不适用于master
。。