Skip to content

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

Availability and Testing

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
Edited by Mayra Cabrera

Merge request reports