Loading
Add workflow to [merge_request, issue, pipeline, note] join tables
What does this MR do and why?
This MR adds join tables for a many-to-many relationship between:
- workflows <-> MRs
- workflows <-> work_items
- workflows <-> notes
- workflows <-> pipelines.
Each join table stores a link_type (a small integer) that records how the workflow relates to the linked item — for example, whether the workflow created that merge request / note / pipeline / work item versus merely referenced or acted on it, or whether developer was initiated through the button. These types will be Enum that will be added in followups.
Initial followup is in !240455 (merged) for issue-to-mr.
References
How to set up and validate locally
Up
for v in 20260604100000 20260604100100 20260604100200 20260604100300 20260604100400 20260604100401 20260604100402 20260604100403 20260604100410 20260604100411 20260604100412 20260604100413 20260604100420 20260604100421 20260604100422 20260604100430 20260604100431 20260604100432 20260604100433; do
bundle exec rails db:migrate:up:main VERSION=$v
bundle exec rails db:migrate:up:ci VERSION=$v
bundle exec rails db:migrate:up:sec VERSION=$v
doneDown
for v in 20260604100433 20260604100432 20260604100431 20260604100430 20260604100422 20260604100421 20260604100420 20260604100413 20260604100412 20260604100411 20260604100410 20260604100403 20260604100402 20260604100401 20260604100400 20260604100300 20260604100200 20260604100100 20260604100000; do
bundle exec rails db:migrate:down:main VERSION=$v
bundle exec rails db:migrate:down:ci VERSION=$v
bundle exec rails db:migrate:down:sec VERSION=$v
doneMR acceptance checklist
Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Edited by Roman Eisner