summaryrefslogtreecommitdiff
path: root/spec/initializers
Commit message (Collapse)AuthorAgeFilesLines
* Add metric initializer specadd-metrics-initializer-specSean McGivern2017-01-241-0/+16
| | | | | | | | | | An empty file in one of the instrumented directories will cause the app to fail to start when metrics are enabled. Metrics aren't enabled by default in development or test. We could handle the empty file case explicitly, but a file could still not define the constant it is expected to, so instead run the initializer manually in a spec and check that it succeeds.
* Introduce "stub_env" test helper for safely stubbing environment variablesAdam Niedzielski2017-01-091-3/+4
|
* Give priority to environment variablesSean McGivern2016-08-031-6/+68
| | | | | | | | If an environment variable exists for secret_key_base, use that - always. But don't save it to secrets.yml. Also ensure that we never write to secrets.yml if there's a non-blank value there.
* Store all secret keys in secrets.ymlSean McGivern2016-08-031-33/+36
| | | | | Move the last secret from .secret to config/secrets.yml, and delete .secret if it exists.
* Store OTP secret key in secrets.ymlSean McGivern2016-08-031-0/+135
| | | | | | | | | | | | | | | | .secret stores the secret token used for both encrypting login cookies and for encrypting stored OTP secrets. We can't rotate this, because that would invalidate all existing OTP secrets. If the secret token is present in the .secret file or an environment variable, save it as otp_key_base in secrets.yml. Now .secret can be rotated without invalidating OTP secrets. If the secret token isn't present (initial setup), then just generate a separate otp_key_base and save in secrets.yml. Update the docs to reflect that secrets.yml needs to be retained past upgrades, but .secret doesn't.
* Ignore invalid IPs in X-Forwarded-For when trusted proxies are configured.lookatmike2016-07-311-0/+6
|
* Ignore invalid trusted proxies in X-Forwarded-For headerreject-invalid-trusted-proxiesStan Hu2016-07-231-0/+6
| | | | | | | Certain reverse proxies can send invalid IP addresses in the X-Forwarded-For header For example, Apache can send (null). Closes #20194
* Skip repository storage path valitaions on test environmentAlejandro Rodríguez2016-07-211-8/+5
| | | | | Storage path are not created until `TestEnv.init`, so we must skip their validation on initialization.
* Use Pathname to make the repository storage path validations more robustAlejandro Rodríguez2016-07-211-3/+23
|
* Enable Style/EmptyLines cop, remove redundant onesrubocop/enable-cops-for-empty-linesGrzegorz Bizon2016-07-011-2/+0
|
* Merge branch 'rack-request-trusted-proxies' into 'master' Douwe Maan2016-06-301-4/+8
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make Rack::Request use our trusted proxies when filtering IP addresses ## What does this MR do? This allows us to control the trusted proxies while deployed in a private network. ## Are there points in the code the reviewer needs to double check? If we want to limit what is impacted, we can do this specifically for the rack_attack request object. ## Why was this MR needed? Normally Rack::Request will trust all private IPs as trusted proxies, which can cause problems if your users are connection on you network via private IP ranges. Normally in a rails app this is handled by action_dispatch request, but rack_attack is specifically using the Rack::Request object instead. ## What are the relevant issue numbers? Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/17550 ## Does this MR meet the acceptance criteria? - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - [ ] ~~[Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)~~ - [ ] ~~API support added~~ - Tests - [x] Added for this feature/bug - [x] All builds are passing - [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [ ] Branch has no merge conflicts with `master` (if you do - rebase it please) - [ ] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) \cc @stanhu See merge request !4958
| * Make Rack::Request use our trusted proxies when filtering IP addressesrack-request-trusted-proxiesDJ Mountney2016-06-291-4/+8
| | | | | | | | | | | | This allows us to control the trusted proxies while deployed in a private network. Normally Rack::Request will trust all private IPs as trusted proxies, which can caue problems if your users are connection on you network via private IP ranges. Normally in a rails app this is handled by action_dispatch request, but rack_attack is specifically using the Rack::Request object instead.
* | Refactor repository paths handling to allow multiple git mount pointsAlejandro Rodríguez2016-06-291-0/+41
|/
* Fix settings_spec so that it can that run by itselffix-settings-specStan Hu2016-06-231-0/+1
|
* Add tests for setting trusted_proxiestrusted-proxies-ip-addrDJ Mountney2016-05-041-0/+51
| | | | Each test reloads the trusted_proxies initializer, which in turn will set Rails.application.config.action_dispatch.trusted_proxies to something new. This will leak into the other tests, but the middleware that it is used in has already been loaded for the whole test suite, so it should have no impact.
* Ensure Gravatar host looks like an actual hostfix-gravator-default-urlRémy Coutable2016-01-181-0/+44