[DB] Add group MR approval setting for SAML based approvals
What does this MR do and why?
Add group merge request approval setting for SAML
-
does_approval_require_saml_auth is being added to group_merge_request_approval_settings to control the future feature of requiring SAML approval for merge request approvals.
-
Refs: #421944 (closed)
Screenshots or screen recordings
Migrate:
╰─% bundle exec rake db:migrate 07:41:42|neo|3.1.4
main: == [advisory_lock_connection] object_id: 244140, pg_backend_pid: 80712
main: == 20230821081508 AddMrRequiresSamlAuthForApprovalToGroupMrApprovalSettings: migrating
main: -- add_column(:group_merge_request_approval_settings, :require_saml_auth_to_approve, :boolean, {:default=>false, :null=>false})
main: -> 0.0029s
main: == 20230821081508 AddMrRequiresSamlAuthForApprovalToGroupMrApprovalSettings: migrated (0.0059s)
main: == [advisory_lock_connection] object_id: 244140, pg_backend_pid: 80712
ci: == [advisory_lock_connection] object_id: 244400, pg_backend_pid: 80714
ci: == 20230821081508 AddMrRequiresSamlAuthForApprovalToGroupMrApprovalSettings: migrating
ci: -- add_column(:group_merge_request_approval_settings, :require_saml_auth_to_approve, :boolean, {:default=>false, :null=>false})
ci: -> 0.0027s
ci: == 20230821081508 AddMrRequiresSamlAuthForApprovalToGroupMrApprovalSettings: migrated (0.0094s)
ci: == [advisory_lock_connection] object_id: 244400, pg_backend_pid: 80714
Rollback and ("re-")migrate:
bundle exec rake db:migrate 11.79s user 8.55s system 74% cpu 27.178 total
╭─±|sf/feature/GL421944-add-group-setting-for-saml-mr-approval ✘ ooh that's dirty.|⇪ AHEAD⇪ (bb2e19914c48) gitlab [/Users/neo/gitlab-development-kit/gitlab]
╰─% VERSION=20230821081508 rake db:migrate:down:main && VERSION=20230821081508 rake db:migrate:down:ci 07:42:20|neo|3.1.4
main: == [advisory_lock_connection] object_id: 224920, pg_backend_pid: 81245
main: == 20230821081508 AddMrRequiresSamlAuthForApprovalToGroupMrApprovalSettings: reverting
main: -- remove_column(:group_merge_request_approval_settings, :require_saml_auth_to_approve, :boolean, {:default=>false, :null=>false})
main: -> 0.0016s
main: == 20230821081508 AddMrRequiresSamlAuthForApprovalToGroupMrApprovalSettings: reverted (0.0064s)
main: == [advisory_lock_connection] object_id: 224920, pg_backend_pid: 81245
7.81s user 6.89s system 71% cpu 20.560 total
ci: == [advisory_lock_connection] object_id: 265500, pg_backend_pid: 82051
ci: == 20230821081508 AddMrRequiresSamlAuthForApprovalToGroupMrApprovalSettings: reverting
ci: -- remove_column(:group_merge_request_approval_settings, :require_saml_auth_to_approve, :boolean, {:default=>false, :null=>false})
ci: -> 0.0016s
ci: == 20230821081508 AddMrRequiresSamlAuthForApprovalToGroupMrApprovalSettings: reverted (0.0117s)
ci: == [advisory_lock_connection] object_id: 265500, pg_backend_pid: 82051
7.89s user 6.92s system 73% cpu 20.152 total
╭─±|sf/feature/GL421944-add-group-setting-for-saml-mr-approval ✘ ooh that's dirty.|⇪ AHEAD⇪ (bb2e19914c48) gitlab [/Users/neo/gitlab-development-kit/gitlab]
╰─% bundle exec rake db:migrate 07:43:10|neo|3.1.4
main: == [advisory_lock_connection] object_id: 244020, pg_backend_pid: 82557
main: == 20230821081508 AddMrRequiresSamlAuthForApprovalToGroupMrApprovalSettings: migrating
main: -- add_column(:group_merge_request_approval_settings, :require_saml_auth_to_approve, :boolean, {:default=>false, :null=>false})
main: -> 0.0028s
main: == 20230821081508 AddMrRequiresSamlAuthForApprovalToGroupMrApprovalSettings: migrated (0.0065s)
main: == [advisory_lock_connection] object_id: 244020, pg_backend_pid: 82557
ci: == [advisory_lock_connection] object_id: 244280, pg_backend_pid: 82559
ci: == 20230821081508 AddMrRequiresSamlAuthForApprovalToGroupMrApprovalSettings: migrating
ci: -- add_column(:group_merge_request_approval_settings, :require_saml_auth_to_approve, :boolean, {:default=>false, :null=>false})
ci: -> 0.0011s
ci: == 20230821081508 AddMrRequiresSamlAuthForApprovalToGroupMrApprovalSettings: migrated (0.0091s)
ci: == [advisory_lock_connection] object_id: 244280, pg_backend_pid: 82559
How to set up and validate locally
Numbered steps to set up and validate the change are strongly suggested.
- In console run with
bundle exec rake db:migrate
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Edited by Sam Figueroa