Add author column to design versions
What does this MR do?
This adds an author
column to DesignManagement::Version
, which will be used in EE
to improve design version handling and add richer interaction.
The primary reasoning for this is that we want to record system notes for new versions, indicating what designs were changed, and who changed them. This information is all available on versions, except for the commit author. This MR adds a version author we can use so that we don't have to pass around the version author to services, etc. Clearly this information is useful and belongs on the version, and other uses can be easily imagined (e.g. notify all users who have edited a file when you replace it, get a list of all the users who uploaded files).
replaces: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/31317 fixes: https://gitlab.com/gitlab-org/gitlab-ee/issues/13362
Does this MR meet the acceptance criteria?
Conformity
-
Changelog entry for user-facing changes, or community contribution. Check the link for other scenarios. Not necessary. This is a back-end, non-user facing change. -
Documentation created/updated or follow-up review issue created -
Code review guidelines -
Merge request performance guidelines -
Style guides -
Database guides This adds a column and an index to a table with the DOWNTIME
flag set to false. Normally these changes would require downtime, but in this case, the feature has not been released yet, so we can use a single migration. -
Separation of EE specific content
Performance and testing
This adds another bigint column to the database.
As a database migration-only change, no testing is required.