仅在 PR 上从 BitBucket Server webhook 构建远程触发 Bamboo?
Posted
技术标签:
【中文标题】仅在 PR 上从 BitBucket Server webhook 构建远程触发 Bamboo?【英文标题】:Remote Trigger Bamboo build from BitBucket Server webhook only on PR? 【发布时间】:2018-09-26 04:11:40 【问题描述】:我是竹子和 webhook 的新手。当从我的仓库打开 PR 到 master 分支时,我正在尝试自动启动竹子构建。
我遵循了this 指南,但远程触发器根本没有启动。
竹子:
BitBucket:
我已经检查了以下内容:
验证列入白名单的 ip 是否正确(如果我删除它,bitbucket webhook 会失败)
我的竹计划已启用,并且在手动运行时构建良好
我错过了什么?
YAML 中的 Bamboo 构建计划:
---
oid: 7818389690603565060
key: XT
name: XXX - TEMP
project:
oid: 7819374853022025730
key: DIGQA
repositories:
- oid: 7818811903068661169
parentRepository: 7818811903068661168
triggers:
- name: Bitbucket Server repository triggered
description: ''
pluginKey: com.atlassian.bamboo.plugins.stash.atlassian-bamboo-plugin-stash:stashTrigger
enabled: true
configuration:
triggerConditions:
com.atlassian.bamboo.triggercondition.internal:plansGreenCondition:
enabled: 'false'
triggeringRepositories:
- 7818811903068661169
- name: Remote trigger
description: Master PR Trigger
pluginKey: com.atlassian.bamboo.triggers.atlassian-bamboo-triggers:remote
enabled: true
configuration:
repository.change.trigger.triggerIpAddress: 10.40.1.120
triggerConditions:
com.atlassian.bamboo.triggercondition.internal:plansGreenCondition:
enabled: 'false'
triggeringRepositories:
- 7818811903068661169
branchConfiguration:
planBranchCreation:
enabled: false
removedBranchCleanup:
enabled: false
inactiveBranchesCleanup:
enabled: false
merging:
enabled: false
notificationStrategy: notifyCommitters
triggers: inherited
issueLinking: enabled
dependencies:
configuration:
enabledForBranches: 'true'
requireAllStagesPassing: null
blockingStrategy: none
childPlans: []
permissions:
users:
xxxxxxxx:
- administration
- build
- clone
- read
- write
groups:
roles:
user:
- read
anonymous:
- read
plugins:
- pluginKey: com.atlassian.bamboo.plugin.system.additionalBuildConfiguration:concurrentBuild
configuration:
custom.concurrentBuilds.overrideNumberOfConcurrentBuilds: 'true'
custom.concurrentBuilds.numberOfConcurrentBuilds: '1'
- pluginKey: com.atlassian.bamboo.plugin.system.additionalBuildConfiguration:buildExpiry
configuration:
custom.buildExpiryConfig.enabled: 'false'
- pluginKey: com.atlassian.bamboo.plugin.artifact.handler.local:artifactHandlersConfiguration
configuration:
custom.artifactHandlers.useCustomArtifactHandlers: 'false'
buildDefinition:
custom.predefinedVariables: '"variableSetList":[]'
stages:
- oid: 7818530428091950756
name: Default Stage
jobs:
- oid: 7818671165580276746
key: JOB1
name: Default Job
tasks:
- oid: 7819234115533708305
description: Checkout Default Repository
pluginKey: com.atlassian.bamboo.plugins.vcs:task.vcs.checkout
configuration:
repositories:
- ref: defaultRepository
buildDefinition:
cleanWorkingDirectory: false
repositoryDefiningWorkingDirectory: -1
...
============================================== ================================
编辑 1:
好的,所以我意识到钩子和触发器实际上正在工作。我误解了竹子上的触发器设置。
当前行为:
-
到 master 的 PR 已打开
BitBucket webhook(在 PR 上)被触发
Bamboo 触发器设置为远程/bitbucket 服务器存储库。因此,在提交更改/实际合并 PR 之前,构建不会开始
问题: 我希望在打开 PR 后触发构建(在合并之前)。更详细地说,这是我构建的理想流程:
-
查看 PR 代码(修订版)
针对 PR 版本运行我的测试
我正在查看以下链接,因为他们似乎设法以某种方式做到了,但我无法理解两个链接中提供的信息位。
bamboo - build my pull request What's wrong with bamboo【问题讨论】:
您使用的是哪个 Git 服务器?如果您使用的是 Bitbucket Server,则无需设置 webhook,只需遵循集成指南即可。如果您使用的是 GitHub Enterprise,请检查那里是否有支持的集成。 我正在使用 BitBucket 并且我已经在遵循本指南:confluence.atlassian.com/bamkb/…。即使 bitbucket 挂钩已触发,竹子远程触发器仍无法启动构建。 只是为了确定 - 你是说 Bitbucket Cloud 对吧? Bitbucket 服务器。我已经为此更新了问题。谢谢! 【参考方案1】:由于您使用的是 Bamboo 和 Bitbucket 服务器(不是云),请按照此处的说明进行操作:
https://confluence.atlassian.com/bamboo/integrating-bamboo-with-bitbucket-server-779302772.html
您需要在 Bamboo 和 BBS 之间创建应用程序链接 - 应用程序链接在 Atlassian 应用程序之间。
【讨论】:
【参考方案2】:发现从 Bamboo 6+ 开始就支持此功能:Reference
【讨论】:
以上是关于仅在 PR 上从 BitBucket Server webhook 构建远程触发 Bamboo?的主要内容,如果未能解决你的问题,请参考以下文章
如何仅在 HTTPS 上从 .htaccess 设置 HSTS 标头 [关闭]
仅在单元格中的特定 UIImage 上从 UITableView 推送详细信息视图?
密码字段的键盘仅在 iOS 12 上从 azerty 切换到 qwerty(有时)