1. 03 7月, 2019 5 次提交
  2. 27 6月, 2019 1 次提交
    • T
      Remove group_clusters feature flag · 3f759e16
      Thong Kuah 提交于
      Now we have terminals for instance and group clusters we can remove the
      FF now. Deploying to group clusters has been working without complaints
      too.
      3f759e16
  3. 13 6月, 2019 6 次提交
  4. 06 4月, 2019 1 次提交
    • G
      Add part of needed code · 64858317
      Gosia Ksionek 提交于
      Add columns to store project creation settings
      
      Add project creation level column in groups
       and default project creation column in application settings
      
      Remove obsolete line from schema
      
      Update migration with project_creation_level column existence check
      
      Rename migrations to avoid conflicts
      
      Update migration methods
      
      Update migration method
      64858317
  5. 05 4月, 2019 1 次提交
  6. 04 4月, 2019 1 次提交
    • G
      Add cr remarks · 17bee986
      Gosia Ksionek 提交于
      Chnage method used in model to make it
      more efficient database-wise
      Add additional spec
      17bee986
  7. 01 4月, 2019 1 次提交
  8. 12 3月, 2019 1 次提交
  9. 17 1月, 2019 1 次提交
    • A
      Return max group access level in the projects API · ab94a5a5
      Alejandro Rodríguez 提交于
      Currently if a project is inside a nested group and a user doesn't have
      specific permissions for that group but does have permissions on a
      parent group the `GET /projects/:id` API call will return the following
      permissions:
      
      ```json
      permissions: { project_access: null, group_access: null }
      ```
      
      It could also happen that the group specific permissions are of lower
      level than the ones the user has in parent groups. This patch makes it
      so that the permission returned for `group_access` is the highest from
      amongst the hierarchy, which is (ostensibly) the information that the
      API user is interested in for that field.
      ab94a5a5
  10. 07 12月, 2018 1 次提交
    • J
      Use FastDestroy for deleting uploads · 239fdc78
      Jan Provaznik 提交于
      It gathers list of file paths to delete before destroying
      the parent object. Then after the parent_object is destroyed
      these paths are scheduled for deletion asynchronously.
      
      Carrierwave needed associated model for deleting upload file.
      To avoid this requirement, simple Fog/File layer is used directly
      for file deletion, this allows us to use just a simple list of paths.
      239fdc78
  11. 06 12月, 2018 1 次提交
  12. 05 12月, 2018 1 次提交
    • T
      Unify into :group_clusters feature flag · ebf87fd9
      Thong Kuah 提交于
      With this MR, group clusters is now functional, so default to enabled.
      
      Have a single setting on the root ancestor group to enabled or disable
      group clusters feature as a whole
      ebf87fd9
  13. 30 10月, 2018 1 次提交
  14. 29 10月, 2018 1 次提交
    • T
      Associate clusters model to groups · 0e15eec8
      Thong Kuah 提交于
      Even though we currently only should have one group for a cluster, we
      allow the flexibility to associate to other groups in the future.
      
      This also matches the runner <=> groups association.
      
      - Adds Cluster#first_group, aliased to Cluster#group. For the
      conceivable future, a cluster will have at most one group.
      
      - Prevent mixing of group and project clusters. If project type
      clusters, it should only have projects assigned.  Similarly with groups.
      
      - Default cluster_type to :project_type. As it's very small table we can
      set default and null: false in one release.
      0e15eec8
  15. 24 9月, 2018 1 次提交
  16. 11 7月, 2018 1 次提交
  17. 09 7月, 2018 1 次提交
  18. 08 6月, 2018 1 次提交
  19. 05 6月, 2018 1 次提交
  20. 16 5月, 2018 1 次提交
    • J
      Delete remote uploads · 7da3b2cd
      Jan Provaznik 提交于
      ObjectStore uploader requires presence of associated `uploads` record
      when deleting the upload file (through the carrierwave's after_commit
      hook) because we keep info whether file is LOCAL or REMOTE in `upload`
      object.
      
      For this reason we can not destroy uploads as "dependent: :destroy" hook
      because these would be deleted too soon. Instead we rely on
      carrierwave's hook to destroy `uploads` in after_commit hook.
      
      But in before_destroy hook we still have to delete not-mounted uploads
      (which don't use carrierwave's destroy hook). This has to be done in
      before_Destroy instead of after_commit because `FileUpload` requires
      existence of model's object on destroy action.
      
      This is not ideal state of things, in a next step we should investigate
      how to unify model dependencies so we can use same workflow for all
      uploads.
      
      Related to #45425
      7da3b2cd
  21. 05 5月, 2018 1 次提交
  22. 23 3月, 2018 1 次提交
  23. 06 3月, 2018 1 次提交
  24. 10 2月, 2018 1 次提交
  25. 07 2月, 2018 1 次提交
  26. 06 2月, 2018 1 次提交
  27. 09 11月, 2017 1 次提交
  28. 08 11月, 2017 1 次提交
  29. 06 11月, 2017 1 次提交
  30. 03 11月, 2017 1 次提交
  31. 06 9月, 2017 1 次提交
    • R
      Optimize SQL queries used in Groups::GroupMembersController#create · 66cfb901
      Rubén Dávila 提交于
      The following optimizations were performed:
      
      - Add new association to GroupMember and ProjectMember
      
        This new association will allow us to check if a user is a member of a
        Project or Group through a single query instead of two.
      
      - Optimize retrieving of Members when adding multiple Users
      66cfb901