Add columns for web_based_commit_signing_enabled group and application setting

What does this MR do and why?

Adds columns for cascading settings web_based_commit_signing_enabled at application and group level.

Migration Output

VERSION=20250416103445 bin/rails db:migrate:up:main
[advisory_lock_connection] object_id: 133860, pg_backend_pid: 38999
20250416103445 AddWebBasedCommitSigningEnabledSetting: migrating ===========
column_exists?(:namespace_settings, :web_based_commit_signing_enabled)
-> 0.0329s
column_exists?(:namespace_settings, :lock_web_based_commit_signing_enabled)
-> 0.0025s
column_exists?(:application_settings, :web_based_commit_signing_enabled)
-> 0.2054s
column_exists?(:application_settings, :lock_web_based_commit_signing_enabled)
-> 0.1954s
add_column(:namespace_settings, :web_based_commit_signing_enabled, :boolean, {:default=>nil, :null=>true})
-> 0.0019s
add_column(:namespace_settings, :lock_web_based_commit_signing_enabled, :boolean, {:default=>false, :null=>false})
-> 0.0020s
add_column(:application_settings, :web_based_commit_signing_enabled, :boolean, {:default=>false, :null=>false})
-> 0.0019s
add_column(:application_settings, :lock_web_based_commit_signing_enabled, :boolean, {:default=>false, :null=>false})
-> 0.0013s
20250416103445 AddWebBasedCommitSigningEnabledSetting: migrated (0.4481s) ==
[advisory_lock_connection] object_id: 133860, pg_backend_pid: 38999
VERSION=20250416103445 bin/rails db:migrate:down:main
[advisory_lock_connection] object_id: 138280, pg_backend_pid: 38772
20250416103445 AddWebBasedCommitSigningEnabledSetting: reverting ===========
column_exists?(:namespace_settings, :web_based_commit_signing_enabled)
-> 0.0348s
remove_column(:namespace_settings, :web_based_commit_signing_enabled)
-> 0.0022s
column_exists?(:namespace_settings, :lock_web_based_commit_signing_enabled)
-> 0.0021s
remove_column(:namespace_settings, :lock_web_based_commit_signing_enabled)
-> 0.0006s
column_exists?(:application_settings, :web_based_commit_signing_enabled)
-> 0.1902s
remove_column(:application_settings, :web_based_commit_signing_enabled)
-> 0.0020s
column_exists?(:application_settings, :lock_web_based_commit_signing_enabled)
-> 0.1861s
remove_column(:application_settings, :lock_web_based_commit_signing_enabled)
-> 0.0013s
20250416103445 AddWebBasedCommitSigningEnabledSetting: reverted (0.4237s) ==
[advisory_lock_connection] object_id: 138280, pg_backend_pid: 38772

References

Related to Add controls to allow groups to opt in to web-b... (#439980 - closed)
Work breakdown
Draft: [ci skip][DO NOT MERGE][PoC] cascading s... (!188452)

MR 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 Gavin Hinfey

Merge request reports

Loading