Commit Graph
662 Commits
Author SHA1 Message Date
Rubén Dávila 985297d82a Merge branch 'master' into issue_3945 2016-01-20 15:07:00 -05:00
Robert Speicher 1553c560e0 Merge branch 'feature/check-against-rbl-only' into 'master'
Split from !2455

References #9092

See merge request !2515
2016-01-20 14:24:20 -05:00
Douwe Maan 7d347ae564 Merge branch 'master' into issue_3945 2016-01-20 20:04:15 +01:00
Douwe Maan 577f2fb47a Save and use actual diff base commit for MR diff highlighting 2016-01-20 18:44:27 +01:00
Tomasz Maczukin 8536e083f7 Add IP blocking against DNSBL at sign-up 2016-01-20 15:28:19 +01:00
Jeroen Nijhof 7658a64469 Merge branch 'master' of https://gitlab.com/gitlab-org/gitlab-ce into sentry-integration
Conflicts:
	db/schema.rb
2016-01-20 09:07:10 +01:00
Douwe Maan 4f44455626 Merge branch 'master' into user-ldap-email
# Conflicts:
#	db/schema.rb
2016-01-19 18:30:59 +01:00
Douwe Maan 98e1a5b634 Allow LDAP users to change their email if it was not set by the LDAP server 2016-01-19 16:25:38 +01:00
Yorick Peterse b4ee6f57b9 Greatly improve external_issue_tracker performance
This greatly improves the performance of Project#external_issue_tracker
by moving most of the fields queried in Ruby to the database and letting
the database handle all logic. Prior to this change the process of
finding an external issue tracker was along the lines of the following:

1. Load all project services into memory.
2. Reduce the list to only services where "issue_tracker?" returns true
3. Reduce the list from step 2 to service where "default?" returns false
4. Find the first service where "activated?" returns true

This has to two big problems:

1. Loading all services into memory only to reduce the list down to a
   single item later on is a waste of memory (and slow timing wise).
2. Calling Array#select followed by Array#reject followed by Array#find
   allocates extra objects when this really isn't needed.

To work around this the following service fields have been moved to the
database (instead of being hardcoded):

* category
* default

This in turn means we can get the external issue tracker using the
following query:

    SELECT *
    FROM services
    WHERE active IS TRUE
    AND default IS FALSE
    AND category = 'issue_tracker'
    AND project_id = XXX
    LIMIT 1

This coupled with memoizing the result (just as before this commit)
greatly reduces the time it takes for Project#external_issue_tracker to
complete. The exact reduction depends on one's environment, but locally
the execution time is reduced from roughly 230 ms to only 2 ms (= a
reduction of almost 180x).

Fixes gitlab-org/gitlab-ce#10771
2016-01-19 14:03:20 +01:00
Tomasz Maczukin b76bfe35c7 Add limit change for 'data' column in 'events' when using MySQL 2016-01-18 21:27:56 +01:00
Jeroen Nijhof 85e0fce9ee Add sentry integration 2016-01-18 17:15:10 +01:00
Kirilll Zaycev e80113593c Raise hook url limit 2016-01-15 00:35:12 +03:00
Grzegorz Bizon ad5302ba15 Seed db on development with artifacts metadata fixture 2016-01-14 12:48:14 +01:00
Grzegorz Bizon 662f4b9e1d Add artifacts metadata uploader filed
Artifacts metadata field will be used to store a filename of gzipped
file containing metadata definition for given artifacts archive.
2016-01-14 12:48:14 +01:00
Grzegorz Bizon 87df1df3cd Seed db with CI build artifacts using a zip archive 2016-01-14 12:48:13 +01:00
Grzegorz Bizon ebd69c5fc1 Remove artifacts metadata column from database 2016-01-14 12:48:13 +01:00
Grzegorz Bizon a385d39ff1 Improve CI builds seeder 2016-01-14 12:48:12 +01:00
Grzegorz Bizon 7027bf40c6 Add database seed for build artifacts 2016-01-14 12:48:12 +01:00
Grzegorz Bizon 5f67bf74f4 Improve CI builds fixtures 2016-01-14 12:48:12 +01:00
Grzegorz Bizon ff2d1dd2e8 Add initial fixtures for CI builds 2016-01-14 12:48:12 +01:00
Grzegorz Bizon d032c5b90e Add artifacts metadata field to ci_builds 2016-01-14 12:48:12 +01:00
Robert Speicher 6ae39c2cd1 Remove alert_type attribute from BroadcastMessage 2016-01-13 11:34:57 -05:00
Yorick Peterse 2367160015 Make the metrics sampler interval configurable 2016-01-13 12:29:48 +01:00
Yorick Peterse 7a240397af Added an index on milestones.title
Certain pages (e.g. the group wide issues page) filter miletones by
their title. Without an index this will result in a sequence scan on a
large dataset increasing the total loading time of a page.
2016-01-07 14:53:02 +01:00
Yorick Peterse 8fdc00bd4c Remove InfluxDB username/password
InfluxDB over UDP doesn't use authentication, thus there's no need for
these settings.
2016-01-06 17:49:56 +01:00
Andriy Dyadyura f7ba38c073 markdown fixes 2016-01-05 10:45:18 +01:00
Valery Sizov 8b18449125 remove public field from namespace and refactoring 2016-01-04 16:00:29 +02:00
Yorick Peterse 620e7bb3d6 Write to InfluxDB directly via UDP
This removes the need for Sidekiq and any overhead/problems introduced
by TCP. There are a few things to take into account:

1. When writing data to InfluxDB you may still get an error if the
   server becomes unavailable during the write. Because of this we're
   catching all exceptions and just ignore them (for now).
2. Writing via UDP apparently requires the timestamp to be in
   nanoseconds. Without this data either isn't written properly.
3. Due to the restrictions on UDP buffer sizes we're writing metrics one
   by one, instead of writing all of them at once.
2015-12-29 14:53:45 +01:00
Gabriel Mazetto a3469d914a reCAPTCHA is configurable through Admin Settings, no reload needed. 2015-12-28 18:50:29 -02:00
Yorick Peterse 4d925f2147 Move InfluxDB settings to ApplicationSetting 2015-12-28 18:00:32 +01:00
Gabriel Mazetto 31fb2b7702 Grace period support for TFA 2015-12-24 19:01:30 -02:00
Gabriel Mazetto 33964469b3 WIP require two factor authentication 2015-12-24 19:00:18 -02:00
Valery Sizov e622259d5b Merge branch 'emoji-picker-fix' into 'master'
Emoji picker: better alias handling

related to https://gitlab.com/gitlab-org/gitlab-ce/issues/3576

See merge request !2198
2015-12-24 11:24:03 +00:00
Valery Sizov b6de0d2830 Emoji picker: better alias handling 2015-12-24 11:28:55 +02:00
Kamil Trzcinski 89aed37eef Make migrations reversible 2015-12-23 19:39:59 +01:00
Robert Speicher 9570495e75 Merge branch 'add_email_unlock' into 'master'
Allow account unlock via email

We see a lot of users get confused about what it means when your account gets
locked. Many try to reset their password and are still faced with a lockout.
With this change, users receive an email that allows them to unlock their
account immediately. The previous behavior where the account is auto-unlocked
after a time also still works.

See merge request !2049
2015-12-21 17:53:20 +00:00
Drew Blessing f177aaa5fa Backport JIRA service 2015-12-18 14:19:48 -06:00
Kamil Trzcinski e136a976b6 Fix ci_projects migration by using the value only from latest row [ci skip]
This is needed, because for some projects we have duplicate ci_projects.
This was introduced by lack of DB uniqueness on ci_projects.gitlab_id.
2015-12-17 11:09:59 +01:00
Drew Blessing be41d84fb0 Allow account unlock via email 2015-12-14 15:35:02 -06:00
Grzegorz Bizon 76a17d4f54 Merge branch 'master' into ci/persist-registration-token
* master:
  Move CI admin builds and runners specs to correct directory
  Fix 500 when viewing specific runners on runners page
  Fix Ci::Project migration not migrating columns that cannot be NULL
  Fix MySQL migration of CI emails
  Minor fix in flow 'Merge when build succeeds'
2015-12-14 13:00:25 +00:00
Kamil Trzcinski 927c40ca49 Fix Ci::Project migration not migrating columns that cannot be NULL [ci skip] 2015-12-14 12:31:35 +01:00
Grzegorz Bizon 2ec93abed7 Merge branch 'master' into ci/persist-registration-token
* master: (66 commits)
  Fix runners admin view
  Fix migrations
  Rename mention of gitlab-git-http-server to gitlab-workhorse
  Bump Redis requirement to 2.8 for Sidekiq 4 requirements
  Fix wording on runner setup page
  add details on how to change saml button label
  Fix tests
  Move awards back to gray panel and few improvements to sidebar
  Few UI improvements to new sidebar implementation
  Fix tests for new issuable sidebar
  Update changelog
  Implement new sidebar for merge request page
  Make edit link on issuable sidebar works
  Redesign issue page for new sidebar
  Move awards css to separate file
  Implement issuable sidebar partial
  Update CHANGELOG
  Clarify cache behavior
  Run builds from projects with enabled CI
  Use Gitlab::Git instead of Ci::Git
  ...

Conflicts:
	db/schema.rb
2015-12-14 12:26:40 +01:00
Kamil Trzcinski 208f99ff6c Fix MySQL migration of CI emails [ci skip] 2015-12-14 12:04:26 +01:00
Kamil Trzciński c810234357 Merge branch 'ci-project-migrate' into 'master'
Ci Project migrate

- This doesn't migrate: allow_git_fetch, coverage_regex, timeout. Since this are project configuration settings I would propose to migrate them to `.gitlab-ci.yml`.
- This requires offline migrations.
- It simplifies database models making all CI objects to be attached to: Project.
- It removes Ci::Project, but makes /ci/projects working by adding method: Project.find_by_ci_id for backward compatibility (badges, triggers).
- We should add default `timeout` to Application Settings.
- It misses specs.
- It is based on ci-services-migrate for now.
- It removes CI events.
- It removes administrator CI projects overview.
- It removes CI application settings.

In 8.4 or 8.5 we can remove redundant tables and columns.


See merge request !1987
2015-12-14 10:35:40 +00:00
Kamil Trzcinski a0c2a7b0cb Fix migrations [ci skip] 2015-12-14 11:30:32 +01:00
Kamil Trzcinski 91cdb08d5f Rename columns and rename migrations 2015-12-11 18:02:09 +01:00
Kamil Trzcinski 8cdd54cc06 Add runners token 2015-12-11 18:02:09 +01:00
Kamil Trzcinski e80e3f5372 Migrate CI::Project to Project 2015-12-11 18:02:09 +01:00
Kamil Trzcinski e365750199 Enhance migrate CI emails 2015-12-11 13:25:50 +01:00
Grzegorz Bizon 4a32b07d9e Add runners_registration_token to ApplicationSettings 2015-12-11 10:39:39 +01:00