Skip to content

Validation for author during release creation

Bala Kumar requested to merge 343448-validate-author-for-releases into master

What does this MR do and why?

Add validation on author_id for new release records.

Records created before %11.7 will continue to have empty author_id. We are not performing backfill DB migration because of reasons listed out in #343448 (comment 965640386)

  • legacy reason 1ea2d9fa
  • Foreign key relation with User table i.e fk_8e4456f90f

The Feature flag should only be enabled in production after !89692 (merged) is merged and the production data is verified to have no empty author_id for new records.

Screenshots or screen recordings

These are strongly recommended to assist reviewers and reduce the time to merge your change.

How to set up and validate locally

Rails console

> Feature.enable(:validate_release_with_author)
> release = Release.new(project: Project.last, author_id: nil, name: 'Release 1.0', tag: 'V1.0')
> release.save!

ActiveRecord::RecordInvalid: Validation failed: Author can't be blank
from /Users/bala/.asdf/installs/ruby/2.7.5/lib/ruby/gems/2.7.0/gems/activerecord-6.1.4.7/lib/active_record/validations.rb:80:in `raise_validation_error'

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Related to #343448 (closed)

Edited by Bala Kumar

Merge request reports