Skip to content

Create CommitEmail model and database table

Lee Tickett requested to merge 26710-create-commit-emailss into master

What does this MR do and why?

This MR introduces a new table to be able to define default commit emails per user, per namespace (project/group see #26710).

Migrations

Up:

lee@Lees-MacBook-Pro gitlab % bin/rails db:migrate RAILS_ENV=development
main: == 20221021213216 CreateNamespaceCommitEmails: migrating ===============
main: -- create_table(:namespace_commit_emails, {})
main:    -> 0.0171s
main: == 20221021213216 CreateNamespaceCommitEmails: migrated (0.0176s) ======

main: == 20221022213505 AddNamespaceCommitEmailsNamespaceFk: migrating =======
main: -- transaction_open?()
main:    -> 0.0000s
main: -- foreign_keys(:namespace_commit_emails)
main:    -> 0.0067s
main: -- transaction_open?()
main:    -> 0.0000s
main: -- execute("ALTER TABLE namespace_commit_emails\nADD CONSTRAINT fk_92adb8f168\nFOREIGN KEY (namespace_id)\nREFERENCES namespaces (id)\nON DELETE CASCADE\nNOT VALID;\n")
main:    -> 0.0015s
main: -- execute("SET statement_timeout TO 0")
main:    -> 0.0002s
main: -- execute("ALTER TABLE namespace_commit_emails VALIDATE CONSTRAINT fk_92adb8f168;")
main:    -> 0.0020s
main: -- execute("RESET statement_timeout")
main:    -> 0.0003s
main: == 20221022213505 AddNamespaceCommitEmailsNamespaceFk: migrated (0.0157s) 

main: == 20221022213521 AddNamespaceCommitEmailsEmailFk: migrating ===========
main: -- transaction_open?()
main:    -> 0.0000s
main: -- foreign_keys(:namespace_commit_emails)
main:    -> 0.0017s
main: -- transaction_open?()
main:    -> 0.0000s
main: -- execute("ALTER TABLE namespace_commit_emails\nADD CONSTRAINT fk_4135cceeec\nFOREIGN KEY (email_id)\nREFERENCES emails (id)\nON DELETE CASCADE\nNOT VALID;\n")
main:    -> 0.0013s
main: -- execute("ALTER TABLE namespace_commit_emails VALIDATE CONSTRAINT fk_4135cceeec;")
main:    -> 0.0019s
main: == 20221022213521 AddNamespaceCommitEmailsEmailFk: migrated (0.0063s) ==

ci: == 20221021213216 CreateNamespaceCommitEmails: migrating ===============
ci: -- create_table(:namespace_commit_emails, {})
ci:    -> 0.0210s
ci: == 20221021213216 CreateNamespaceCommitEmails: migrated (0.0211s) ======

ci: == 20221022213505 AddNamespaceCommitEmailsNamespaceFk: migrating =======
ci: -- transaction_open?()
ci:    -> 0.0000s
ci: -- foreign_keys(:namespace_commit_emails)
ci:    -> 0.0025s
ci: -- transaction_open?()
ci:    -> 0.0000s
ci: -- execute("ALTER TABLE namespace_commit_emails\nADD CONSTRAINT fk_92adb8f168\nFOREIGN KEY (namespace_id)\nREFERENCES namespaces (id)\nON DELETE CASCADE\nNOT VALID;\n")
ci:    -> 0.0033s
ci: -- execute("SET statement_timeout TO 0")
ci:    -> 0.0002s
ci: -- execute("ALTER TABLE namespace_commit_emails VALIDATE CONSTRAINT fk_92adb8f168;")
ci:    -> 0.0074s
ci: -- execute("RESET statement_timeout")
ci:    -> 0.0003s
ci: == 20221022213505 AddNamespaceCommitEmailsNamespaceFk: migrated (0.0151s) 

ci: == 20221022213521 AddNamespaceCommitEmailsEmailFk: migrating ===========
ci: -- transaction_open?()
ci:    -> 0.0000s
ci: -- foreign_keys(:namespace_commit_emails)
ci:    -> 0.0016s
ci: -- transaction_open?()
ci:    -> 0.0000s
ci: -- execute("ALTER TABLE namespace_commit_emails\nADD CONSTRAINT fk_4135cceeec\nFOREIGN KEY (email_id)\nREFERENCES emails (id)\nON DELETE CASCADE\nNOT VALID;\n")
ci:    -> 0.0019s
ci: -- execute("ALTER TABLE namespace_commit_emails VALIDATE CONSTRAINT fk_4135cceeec;")
ci:    -> 0.0028s
ci: == 20221022213521 AddNamespaceCommitEmailsEmailFk: migrated (0.0080s) ==

MR acceptance checklist

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

Edited by Lee Tickett

Merge request reports

Loading