ca6a1f33f9
Detect if pipeline runs for a GitHub pull request When using a mirror for CI/CD only we register a pull_request webhook. When a pull_request webhook is received, if the source branch SHA matches the actual head of the branch in the repository we create immediately a new pipeline for the external pull request. Otherwise we store the pull request info for when the push webhook is received. When using "only/except: external_pull_requests" we can detect if the pipeline has a open pull request on GitHub and create or not the job based on that.
17 lines
448 B
Ruby
17 lines
448 B
Ruby
# frozen_string_literal: true
|
|
|
|
FactoryBot.define do
|
|
factory :external_pull_request do
|
|
sequence(:pull_request_iid)
|
|
project
|
|
source_branch 'feature'
|
|
source_repository 'the-repository'
|
|
source_sha '97de212e80737a608d939f648d959671fb0a0142'
|
|
target_branch 'master'
|
|
target_repository 'the-repository'
|
|
target_sha 'a09386439ca39abe575675ffd4b89ae824fec22f'
|
|
status :open
|
|
|
|
trait(:closed) { status 'closed' }
|
|
end
|
|
end
|