Add additional purchased storage to namespace
What does this MR do?
Related to #220369 (closed)
Since we don't want to add more columns to the namespace table, we introduced the table namespace_limits
. For now it will only hold the new additional_purchased_storage_size
and additional_purchased_storage_ends_on
but later we want to move other limits like extra_shared_runners_minutes_limit
as well to reduce the overall column size of the namespace table.
The API to set this value and using it for the actual limit will be done in another MR. To get a sense where this will be used you can check out the Proposed Flow between customer portal and gitlab
Ouput
Migrate
bin/rails db:migrate
== 20200617150041 CreateNamespaceLimits: migrating ============================
-- create_table(:namespace_limits, {:id=>false})
-> 0.0040s
== 20200617150041 CreateNamespaceLimits: migrated (0.0071s) ===================
Rollback
bin/rails db:rollback
== 20200617150041 CreateNamespaceLimits: reverting ============================
-- drop_table(:namespace_limits)
-> 0.0017s
== 20200617150041 CreateNamespaceLimits: reverted (0.0045s) ===================
Screenshots
Does this MR meet the acceptance criteria?
Conformity
-
Changelog entry - [-] Documentation (if required)
-
Code review guidelines -
Merge request performance guidelines -
Style guides -
Database guides - [-] Separation of EE specific content
Availability and Testing
- [-] Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process.
- [-] Tested in all supported browsers
- [-] Informed Infrastructure department of a default or new setting change, if applicable per definition of done
Security
If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:
- [-] Label as security and @ mention
@gitlab-com/gl-security/appsec
- [-] The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
- [-] Security reports checked/validated by a reviewer from the AppSec team