gitlab-org--gitlab-foss/app
Douwe Maan 5ef2bd192a Merge branch '24059-round-robin-repository-storage' into 'master'
Resolve "Introduce round-robin project creation to spread load over multiple shards"

## What does this MR do?

Allow multiple shards to be enabled in the admin settings page, balancing project creation across all enabled shards.

## Are there points in the code the reviewer needs to double check?

* `f.select ..., multiple: true` isn't the most beautiful UI in the world, but switching to `collection_check_boxes` (or a facsimile thereof) isn't trivial
* Should `pick_repository_storage` be a method of `ApplicationSetting`, or `Project`? It's going to accrete logic over time so perhaps it should be its own class already?
* This is written to avoid the need for a database migration, so it is`serialize :repository_storage` without `, Array`. This is tested, but alternatives include:
  * Add a database migration
  * Write a custom Coder that will accept a String or Array in `load` and always `dump an Array.

## Why was this MR needed?

## Screenshots (if relevant)

![Screen_Shot_2016-11-03_at_14.42.41](/uploads/7de15d6c1b3fa60bb7a34d6a7d9f00ce/Screen_Shot_2016-11-03_at_14.42.41.png)

## Does this MR meet the acceptance criteria?

- [X] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG.md) entry added
- [X] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)
- [x] API support added
- Tests
  - [X] Added for this feature/bug
  - [ ] All builds are passing
- [X] Conform by the [merge request performance guides](http://docs.gitlab.com/ce/development/merge_request_performance_guidelines.html)
- [X] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [X] Branch has no merge conflicts with `master` (if it does - rebase it please)
- [X] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)

## What are the relevant issue numbers?

Closes #24059

See merge request !7273
2016-11-04 11:37:49 +00:00
..
assets Merge branch '24022-update-styling-commit-sha-in-branches-list' into 'master' 2016-11-04 11:00:52 +00:00
controllers Allow multiple repository storage shards to be enabled, and automatically round-robin between them 2016-11-04 04:01:08 +00:00
finders Skip authorization check when searching for labels on IssuableFinder 2016-10-31 23:27:49 -02:00
helpers Allow multiple repository storage shards to be enabled, and automatically round-robin between them 2016-11-04 04:01:08 +00:00
mailers Just show the first merge request we found, feedback: 2016-10-14 19:54:51 +08:00
models Allow multiple repository storage shards to be enabled, and automatically round-robin between them 2016-11-04 04:01:08 +00:00
policies Allow owners to fetch source code in CI builds 2016-11-01 09:37:20 +01:00
services Merge branch '22448-fix-500-nonexisting-branch' into 'master' 2016-11-01 16:52:25 +00:00
uploaders
validators Add robots.txt to the list of reserved namespaces 2016-10-11 02:58:26 +01:00
views Merge branch '24059-round-robin-repository-storage' into 'master' 2016-11-04 11:37:49 +00:00
workers remove extra spaces from app/workers/post_receive.rb 2016-11-01 21:46:37 +00:00