Commit Graph
412 Commits
Author SHA1 Message Date
Dmitriy Zaporozhets 1af8b1e4f8 Merge branch 'master' of dev.gitlab.org:gitlab/gitlabhq into ce-to-ee
Conflicts:
	app/views/help/index.html.haml
	lib/gitlab/git_access.rb
	public/500.html
	public/502.html
2015-05-15 13:29:58 +03:00
Dmitriy Zaporozhets f32a045ef4 Merge branch 'version-check' into 'master'
Version check

See merge request !1509
2015-05-13 11:17:16 +00:00
Dmitriy Zaporozhets b2d45bb544 Merge branch 'master' of dev.gitlab.org:gitlab/gitlabhq into ce-to-ee
Conflicts:
	app/controllers/uploads_controller.rb
	app/helpers/application_helper.rb
	app/models/note.rb
	app/services/test_hook_service.rb
	db/schema.rb
	spec/models/note_spec.rb
2015-05-13 14:10:14 +03:00
Dmitriy Zaporozhets 1a1e42ad31 Merge branch 'rs-system-note' into 'master'
Add SystemNoteService class

The Note model was basically two models crammed together - one handling user-created notes
(i.e., comments on things) and one handling system-created notes (i.e., references).
This splits out the system-specific stuff to a new SystemNoteService class.

See merge request !595
2015-05-12 10:45:42 +00:00
Valery Sizov 071f07b673 Merge branch 'fix_migration' into 'master'
Make migrations reversible

/cc @jacobvosmaer @marin

See merge request !622
2015-05-12 09:51:14 +00:00
Robert Speicher cdb69d728c Add migration to convert legacy system notes 2015-05-11 00:01:15 -04:00
Robert Speicher 0c113c8dcb Make otp_backup_codes a text field 2015-05-09 17:32:46 -04:00
Dmitriy ZaporozhetsandRobert Speicher 802fcd051f Add support for backup codes 2015-05-09 17:31:37 -04:00
Dmitriy ZaporozhetsandRobert Speicher 7302395142 Init 2 factor authentication for user model 2015-05-09 17:31:07 -04:00
Valery Sizov 3bc717f010 Adding quote_string to migration 2015-05-08 16:54:45 +03:00
Dmitriy Zaporozhets c3cf32e863 Merge branch 'version-check' into gl-version-check
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>

Conflicts:
	app/controllers/admin/application_settings_controller.rb
	app/views/admin/application_settings/_form.html.haml
	db/schema.rb
2015-05-08 16:05:00 +03:00
Valery Sizov cd2659fdb5 Merge branch 'tag_dup' into 'master'
Remove tag duplicates

Prevention of getting this error:

```
ActiveRecord::RecordNotUnique: PG::Error: ERROR:  could not create unique index "index_tags_on_name"
DETAIL:  Key (name)=(XSS') is duplicated.
: CREATE UNIQUE INDEX  "index_tags_on_name" ON "tags"  ("name")
```

This migration fails if there are duplicates:
https://github.com/mbleigh/acts-as-taggable-on/blob/v3.5.0/db/migrate/2_add_missing_unique_indices.rb#L3

See merge request !623
2015-05-08 08:30:05 +00:00
Valery Sizov d881345ed7 Merge branch 'fix-mysql-migration-with-tags' into 'master'
Change the MySQL collation type to utf8_bin to ensure case-sensitive tags are supported

MySQL tables had a collation type of utf8_ci, which makes the name case-insensitive. Previously this migration was run only after indices were built, but it needs to happen before if there is existing data that is case-sensitive. This is an idempotent change, so applying it again in the existing migration (20150425164651) should not change anything.

This is related to !623, but this migration should run before that one.

* Closes #1589
* Closes https://github.com/gitlabhq/gitlabhq/issues/9255

See merge request !625
2015-05-08 08:29:07 +00:00
Stan Hu f6c0ef5553 Conditionally remove indices that may not exist in pre-GitLab v6.7 installations
Closes #1593
2015-05-08 00:43:19 -07:00
Stan Hu 548cec6ea4 Change the MySQL collation type to utf8_bin to ensure case-sensitive tags are supported 2015-05-07 16:33:11 -07:00
Douwe Maan 85c04a8aa6 Track historical active user count. 2015-05-07 22:38:17 +02:00
Valery Sizov b60717604c remove tag duplicates 2015-05-07 18:17:58 +03:00
Valery Sizov 3e6181db14 Make migrations reversible 2015-05-07 17:29:15 +03:00
Douwe Maan 2bb2ade50d Merge branch 'master' into license
# Conflicts:
#	db/schema.rb
2015-05-05 13:03:33 +02:00
Douwe Maan 68ac20604b Merge branch 'master' of gitlab.com:gitlab-org/gitlab-ce into ce-to-ee
# Conflicts:
#	app/controllers/groups/application_controller.rb
#	app/services/test_hook_service.rb
#	app/views/admin/groups/show.html.haml
#	app/views/groups/_settings_nav.html.haml
#	app/views/groups/show.html.haml
#	app/views/layouts/_head.html.haml
#	app/views/projects/_settings_nav.html.haml
#	db/schema.rb
#	features/project/project.feature
#	features/steps/project/project.rb
2015-05-05 10:18:27 +02:00
Stan Hu eb4f1eb5f5 Add application setting to restrict user signups to e-mail domains
This feature was requested long ago:

http://feedback.gitlab.com/forums/176466-general/suggestions/4118466-ability-to-register-only-from-ceratain-domains

This MR is based off !253 but changed to use application settings and use wildcard strings
to give more flexibility in pattern matching. Regexps seemed overkill and easy to get wrong.

Only restrict e-mail addresses upon creation
2015-05-02 09:36:52 -07:00
Douwe Maan d1f2b09fad Allow license to be uploaded and enforce its validity. 2015-05-01 14:52:30 +02:00
Douwe Maan 2f4426b7e4 Merge branch 'fix-project-tags' into 'master'
Fix DB error when trying to tag a repository

Steps to reproduce: Go to a project settings, add tags, click on save changes

Observed behavior: Error 500

```
    PG::Error: ERROR:  column "taggings_count" does not exist
        LINE 1: UPDATE "tags" SET "taggings_count" = COALESCE("taggings_coun...
```

Ran `rake acts_as_taggable_on_engine:install:migrations`, removed the first
migration that created the `tags` and `taggings` table, and added the rest.

* Closes #1512
* Closes #1550
* Closes https://github.com/gitlabhq/gitlabhq/issues/6867
* Closes https://github.com/gitlabhq/gitlabhq/issues/9194

See merge request !577
2015-04-30 17:20:36 +00:00
Valery Sizov 4d3a93af2d Remove abandoned GroupMembers 2015-04-29 13:46:57 +03:00
Stan Hu 44afcd2019 Fix DB error when trying to tag a repository
Upon tagging a repository, an error due to a missing migration occurred:

```
    PG::Error: ERROR:  column "taggings_count" does not exist
        LINE 1: UPDATE "tags" SET "taggings_count" = COALESCE("taggings_coun...
```

Ran `rake acts_as_taggable_on_engine:install:migrations`, removed the first
migration that created the `tags` and `taggings` table, and added the rest.

Closes #1512
Closes https://github.com/gitlabhq/gitlabhq/issues/6867
Closes https://github.com/gitlabhq/gitlabhq/issues/9194
2015-04-27 06:09:20 -07:00
Dmitriy Zaporozhets 2e243fc321 Merge branch 'master' of dev.gitlab.org:gitlab/gitlabhq into ce-to-ee
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>

Conflicts:
	README.md
	VERSION
	app/controllers/projects/services_controller.rb
	app/controllers/projects/uploads_controller.rb
	app/services/test_hook_service.rb
	db/schema.rb
	features/steps/admin/settings.rb
	lib/gitlab/reference_extractor.rb
	spec/models/note_spec.rb
2015-04-27 11:53:31 +03:00
Vinnie Okada bd557e4b64 Add new admin settings
Add new global application settings for default project and snippet
visibility levels.
2015-04-26 07:48:19 -06:00
Douwe Maan 70f9893ed6 Explain namespace clearn regex. 2015-04-24 14:49:23 +02:00
Douwe Maan 2fd47a0e95 Don't attempt to move if original path only contains periods. 2015-04-24 14:49:23 +02:00
Douwe Maan 4934bc0312 Change migration timestamp. 2015-04-24 14:49:23 +02:00
Douwe Maan fac1f83fd5 Properly migrate users with usernames like "." or "..". 2015-04-24 14:49:23 +02:00
Douwe Maan 1d2a5ee188 Revert "Revert disallowing usernames to end in period."
This reverts commit c75c6b840b.
2015-04-24 14:47:49 +02:00
Dmitriy Zaporozhets 5b10796235 Merge branch 'master' of dev.gitlab.org:gitlab/gitlabhq
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>

Conflicts:
	app/models/project.rb
	db/schema.rb
2015-04-20 19:19:27 +03:00
Douwe Maan c75c6b840b Revert disallowing usernames to end in period. 2015-04-20 12:41:44 +02:00
Dmitriy Zaporozhets e1099f9717 Merge branch 'google-code-import-performance' into 'master'
Decrease memory use and increase performance of Google Code importer.

Addresses private issue https://dev.gitlab.org/gitlab/gitlabhq/issues/2241.

See merge request !536
2015-04-17 14:01:33 +00:00
Douwe Maan 7d98c8842d Move import data out of project so it doesn't take ages to load. 2015-04-17 14:49:00 +02:00
Douwe Maan 46524ecb33 Fix username period migration to preserve uniqueness of names and paths. 2015-04-17 12:03:54 +02:00
Dmitriy Zaporozhets d01d0c02b7 Merge branch 'master' of dev.gitlab.org:gitlab/gitlabhq into ce-to-ee
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>

Conflicts:
	app/controllers/admin/application_settings_controller.rb
	app/controllers/groups/group_members_controller.rb
	app/controllers/projects/deploy_keys_controller.rb
	app/controllers/projects/project_members_controller.rb
	app/models/concerns/mentionable.rb
	app/models/project.rb
	app/models/project_team.rb
	app/models/service.rb
	app/views/admin/application_settings/_form.html.haml
	app/views/admin/groups/show.html.haml
	app/views/groups/group_members/_new_group_member.html.haml
	config/initializers/1_settings.rb
	db/schema.rb
	lib/gitlab/reference_extractor.rb
	spec/lib/gitlab/reference_extractor_spec.rb
2015-04-15 19:22:57 +03:00
Dmitriy Zaporozhets e3d818a4e8 Merge branch 'invitation' into 'master'
Allow users to be invited.

Addresses private issue https://dev.gitlab.org/gitlab/gitlabhq/issues/2058.

The "Add members" panes for both Group Members and Project Members have gained a line of text by the People field.

![Screen_Shot_2015-04-10_at_14.14.32](https://gitlab.com/gitlab-org/gitlab-ce/uploads/fe990e65eccd9203d7324b492941362b/Screen_Shot_2015-04-10_at_14.14.32.png)

Entering an email address that is not already a member will give you the option to invite them.

![Screen_Shot_2015-04-10_at_14.14.48](https://gitlab.com/gitlab-org/gitlab-ce/uploads/d6b0d4571ea90f2a2e4af8f5b336e8e1/Screen_Shot_2015-04-10_at_14.14.48.png)

Choosing the option will add them to the People field. This works the right way (TM) in combination with adding existing users as members.

![Screen_Shot_2015-04-10_at_14.15.09](https://gitlab.com/gitlab-org/gitlab-ce/uploads/a618e5ec292d79578b16400dca6d4cfe/Screen_Shot_2015-04-10_at_14.15.09.png)

The invited member will be shown in the members list as such. The access level can be changed, and the invite can be revoked by deleting the member.

![Screen_Shot_2015-04-10_at_14.15.19](https://gitlab.com/gitlab-org/gitlab-ce/uploads/3695b9a6778d367b275115747579b46e/Screen_Shot_2015-04-10_at_14.15.19.png)

The invited user will receive an email with an "Accept invitation" link.

![Screen_Shot_2015-04-10_at_14.17.52](https://gitlab.com/gitlab-org/gitlab-ce/uploads/730121888153117d83c3cd0e4f5c90f6/Screen_Shot_2015-04-10_at_14.17.52.png)

If they're not already logged in, clicking this link will redirect them to the sign in/up page with a helpful notice.

![Screen_Shot_2015-04-10_at_14.18.12](https://gitlab.com/gitlab-org/gitlab-ce/uploads/1a26a5fa13321e7ef77ed8b538c8557d/Screen_Shot_2015-04-10_at_14.18.12.png)

Signing in or signing up will redirect them back to the invite detail page, where they can actually accept the invitation, which will update the member record in question to point to the user in question.

![Screen_Shot_2015-04-10_at_14.18.48](https://gitlab.com/gitlab-org/gitlab-ce/uploads/7ac33085463a99b8cfa6baa13bfa1235/Screen_Shot_2015-04-10_at_14.18.48.png)

Accepting the invitation will redirect them to the group (or project) with an appropriate notice.

![Screen_Shot_2015-04-10_at_14.18.58](https://gitlab.com/gitlab-org/gitlab-ce/uploads/7bf02a2e3bea589a11df401c23e68648/Screen_Shot_2015-04-10_at_14.18.58.png)

As currently, they will also receive this information by email.

![Screen_Shot_2015-04-10_at_14.24.00](https://gitlab.com/gitlab-org/gitlab-ce/uploads/b44a342068433a268c0a06ed9e791ffa/Screen_Shot_2015-04-10_at_14.24.00.png)

At the same time, the person who initially invited the email address is sent a notification as well, so they know of the new member and to tell them what name the user signed up with.

![Screen_Shot_2015-04-10_at_14.19.07](https://gitlab.com/gitlab-org/gitlab-ce/uploads/b29fea128186f938ec76bd7dec016b83/Screen_Shot_2015-04-10_at_14.19.07.png)

The member row on the Members page will now have been updated with the new user account.

![Screen_Shot_2015-04-10_at_14.19.23](https://gitlab.com/gitlab-org/gitlab-ce/uploads/cf503d3d1679614e03acec2e946a28c3/Screen_Shot_2015-04-10_at_14.19.23.png)

See merge request !500
2015-04-15 10:48:28 +00:00
Douwe Maan 63b21945d2 Merge branch 'google-code-import' into 'master'
Import projects from Google Code.

Resolves #1257.

Issue import logic almost entirely taken from https://gitlab.com/o9000/google-code-to-gitlab ( ♥️ @o9000).

### To do

- [x] List projects from Google Takeout file
- [x] Import Git repository
- [x] Import issues
- [x] Link to correct attachment URL (https://code.google.com/p/support-tools/issues/detail?id=50)
- [x] Handle deleted attachments
- [x] Handle blockedOn attribute
- [x] Add directions on how to get data from Google Takeout

### Import instructions

![Screen_Shot_2015-04-03_at_16.02.21](https://gitlab.com/gitlab-org/gitlab-ce/uploads/4a87038035fbad9441cf613b8cdcc690/Screen_Shot_2015-04-03_at_16.02.21.png)

### Imported issue

![Screen_Shot_2015-04-03_at_16.25.49](https://gitlab.com/gitlab-org/gitlab-ce/uploads/b2c2eaf5ecfcf57b3c48511eb5d26db4/Screen_Shot_2015-04-03_at_16.25.49.png)

See merge request !471
2015-04-15 06:53:42 +00:00
Jacob Vosmaer 0b2670f82f Remove unnecessary semicolons
I could not help myself
2015-04-14 15:45:15 +02:00
Jacob Vosmaer 41a1cb88f4 Use different queries for MySQL and Postgres
I could not find a query that worked on both; these two queries look
very similar and seem to do the same thing.
2015-04-14 15:44:19 +02:00
Dmitriy Zaporozhets ef8d96e5de Merge branch 'ce-to-ee-2' of dev.gitlab.org:gitlab/gitlabhq into ce-to-ee
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>

Conflicts:
	LICENSE
	app/assets/javascripts/dispatcher.js.coffee
	app/controllers/help_controller.rb
	app/models/user.rb
	app/views/groups/group_members/_new_group_member.html.haml
	config/gitlab.yml.example
	config/routes.rb
	features/groups.feature
	features/steps/dashboard/help.rb
2015-04-14 15:08:19 +03:00
Senorsen 7b28218f96 Allow user to choose which email to be public
This commit allows user to show one of their emails in profile page,
or don't show email in this page.
2015-04-14 19:42:48 +08:00
Douwe Maan 1e97864958 Add invite data to member. 2015-04-14 12:06:42 +02:00
Dmitriy Zaporozhets 4ab717ea6a Merge branch 'ldap_migration'
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>

Conflicts:
	db/schema.rb
2015-04-13 17:18:02 +03:00
Jacob Vosmaer afa47eddcc Also ldap_group_links where provider='ldap' 2015-04-13 11:56:35 +02:00
Jacob Vosmaer 8476d171cc Merge branch 'ldap_migration' of dev.gitlab.org:gitlab/gitlabhq into ldap_migration 2015-04-13 11:52:05 +02:00
Jacob Vosmaer 8b4705fea6 Make migration work if LDAP is disabled 2015-04-13 11:50:00 +02:00
Dmitriy Zaporozhets 04f05ac1fb Check for table instead of class 2015-04-13 12:26:14 +03:00