Commit Graph
3253 Commits
Author SHA1 Message Date
Yorick Peterse 1cdee35f60 Merge branch 'atom-feed-latest-update' into 'master'
Improve performance of user profiles, finding groups, and finding projects

This MR improves the following:

* Rendering of profile pages and Atom feeds
* Finding groups (using GroupsFinder & friends)
* Finding projects (using ProjectsFinder & friends)

Initially this MR was intended to only improve rendering of Atom feeds, but over time other fixes were introduced as well as the same code was the cause of all these problems.

See merge request !1790
2015-11-20 11:02:27 +01:00
Dmitriy ZaporozhetsandRobert Speicher 48e86ec610 Merge branch 'emoji_votes' into 'master'
Award Emoji

This it first iteration of award emoji feature.
We have plan to extend emoji picker by the next release.

For now, you can add award by clicking to the emoji picker or posting a regular comment with emoji like "👍" and any other. You can post not only emoji that listed in the emoji picker.

See merge request !1825
2015-11-19 19:50:58 -05:00
Kamil TrzcińskiandRobert Speicher 978f0bac8a Merge branch 'ci-yaml-validation' into 'master'
Commits without .gitlab-ci.yml are marked as skipped

- Commits without .gitlab-ci.yml are marked as skipped
- Save detailed error when YAML syntax

This also fixes: #3521 #3546 

/cc @jacobvosmaer 


See merge request !1827
2015-11-19 18:27:46 -05:00
Robert SpeicherandRobert Speicher 64e3cba941 Merge branch 'dbalexandre/gitlab-ce-fix-personal-snippet-access-workflow' into 'master'
Improve personal snippet access workflow.

Replaces !1709

Fixes #3258

See merge request !1817
2015-11-19 12:22:45 -05:00
Dmitriy ZaporozhetsandRobert Speicher 61c6e96971 Merge branch 'check_if_it_should_be_archived_in_backup' into 'master'
Check which folders and archives should be packed before passing to tar command.

If user uses backup task with SKIP and skips one of the archives listed(uploads, builds, artifacts) backup create will give an error: `Cannot stat: No such file or directory`.

This MR fixes that by checking for skipped items.
Additionally, compact everything to avoid `TypeError: no implicit conversion of nil into String` errors.

See merge request !1824
2015-11-19 09:50:07 -05:00
Douwe MaanandRobert Speicher 371e8505f8 Merge branch 'ce-mirror-backport' into 'master'
Backport relevant changes from gitlab-org/gitlab-ee!51

To do:

- [x] Update gitlab-shell

See merge request !1822
2015-11-18 16:41:56 -05:00
Robert SpeicherandRobert Speicher c9f0324701 Merge branch 'adamliesko/gitlab-ce-notification-upon-unassignment' into 'master'
Add notification to the former assignee upon unassignment

Replaces !1769

Fixes #3395

See merge request !1818
2015-11-17 13:28:58 -05:00
Robert Speicher df0110ba81 Merge branch 'rs-revert-gh-9820' into 'master'
Revert "Merge pull request #9820 from huacnlee/avoid-render-form-in-notes-list"

This reverts commit 63144cd062, reversing
changes made to 8ab5df9d87.

Reverts https://github.com/gitlabhq/gitlabhq/pull/9820

See merge request !1804
2015-11-17 15:09:22 +00:00
Douwe Maan c12d0b4d2a Merge branch 'rs-wiki-touches-project' into 'master'
Make ProjectWiki touch Project#last_activity_at after wiki actions

Closes #3026

See merge request !1803
2015-11-17 08:48:29 +00:00
Dmitriy Zaporozhets 0061143ccd Merge branch 'global-milestones' into 'master'
Create milestones in the group

When you work with groups its quite often you want to create same milestone in multiple projects. This MR allows you to do so

For #3488 

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>

See merge request !1797
2015-11-16 20:41:27 +00:00
Robert Speicher ccb0c40c54 Make ProjectWiki touch Project#last_activity_at after wiki actions
Closes #3026
2015-11-16 13:08:25 -05:00
Robert Speicher c8e53d4467 Revert "Merge pull request #9820 from huacnlee/avoid-render-form-in-notes-list"
This reverts commit 63144cd062, reversing
changes made to 8ab5df9d87.
2015-11-16 13:08:08 -05:00
Dmitriy Zaporozhets 9a3df9d5d0 Merge branch 'ci-runners-master-or-owner' into 'master'
Show specific runners from projects where user is master or owner

This fix for permission escalation when handling specific runners.

The users were allowed to assign runners from projects where they were guests.


See merge request !1809
2015-11-16 15:00:55 +00:00
Dmitriy Zaporozhets 8a03cb8744 Lets add more tests to Milestones services
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-16 14:39:19 +01:00
Dmitriy Zaporozhets 98d6d491b5 Move global milestone specs
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-16 14:38:34 +01:00
Kamil Trzcinski 03f5ff750b Show specific runners from projects where user is master or owner 2015-11-16 13:24:56 +01:00
Marin Jankovski 14032d8eb1 Add support for git lfs. 2015-11-16 12:39:13 +01:00
Dmitriy Zaporozhets a43a218c98 Merge branch 'releases-feature' 2015-11-16 10:18:32 +01:00
Dmitriy Zaporozhets aec9f211e5 Merge branch 'impersonate' into 'master'
refactor login as to be impersonation with better login/logout

Modifies the existing "login as" feature to be called impersonation.

This also adds:

* Application keep track of who is impersonating the user so they can revert back to the original user without having to log out.
* Stores the user profile via `HTTP_REFERER` so you get redirected back to the person you have impersonated once you stop.

## Screenshots:

![](http://sindacio.us/i/2015-10-28_17-52-41.png)
![](http://sindacio.us/i/2015-10-28_17-53-08.png)

See merge request !1702
2015-11-14 09:04:10 +00:00
Dmitriy Zaporozhets da8ca8b217 Merge branch 'annotate-models' into 'master'
Annotate models

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>

See merge request !1799
2015-11-14 08:27:12 +00:00
Dmitriy Zaporozhets a237999f00 Annotate models
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-13 19:22:46 +01:00
Kamil Trzciński eaf27c6295 Merge branch 'builds_feature' into 'master'
Expose builds feature

Expose builds feature in project settings (as feature).

Enable it by default for a new projects.

I deliberately named it builds instead of CI, because we actualy allow to run tests using infrastructure built-in GitLab. I'm free to change it.

![Screen_Shot_2015-11-09_at_16.42.21](/uploads/a8af0a56fc0498688c0428ff22252d9c/Screen_Shot_2015-11-09_at_16.42.21.png)

If we are ok, I'll add feature tests for it.

/cc @sytses @dzaporozhets 




See merge request !1767
2015-11-13 17:55:16 +00:00
Kamil Trzcinski fea2f21437 Fix caching breaking test of build artifacts 2015-11-13 14:43:14 +01:00
Dmitriy Zaporozhets f197b528ff Merge branch 'refactor-complex-methods' into 'master'
Refactor complex methods

Make flog part of CI check which is not allowed to fail. I used high score (70) and refactored most complex method. In future releases we should lower acceptable score to something like 40..50

Part of #3444 

See merge request !1794
2015-11-13 11:48:40 +00:00
Kamil Trzcinski e53a56acea Fix broken tests 2015-11-13 10:52:50 +01:00
Kamil Trzcinski 6384c757b7 Expose CI enable option in project features
- Enable CI by default for all new projects
2015-11-13 10:52:50 +01:00
Dmitriy Zaporozhets 3c16fb93fc Move spec to proper place and fix unused variable
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-13 09:45:21 +01:00
Minsik Yoonand윤민식 3d0efa8e0a Add ignore white space option in merge request diff
fix this issue(https://gitlab.com/gitlab-org/gitlab-ce/issues/1393).

Add ignore whitespace optoin to Commits Compare view
2015-11-13 16:53:53 +09:00
Dmitriy Zaporozhets d6db451732 Add api test for creating tag with release info
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-12 23:54:22 +01:00
Dmitriy Zaporozhets ba34045f31 Expose release notes to tags api
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-12 17:04:18 +01:00
Dmitriy Zaporozhets c119a73793 Add releases api
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-12 16:26:39 +01:00
Dmitriy Zaporozhets a5ab56fd91 Move git tags API to separate file
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-12 15:41:13 +01:00
Dmitriy Zaporozhets 63144cd062 Merge pull request #9820 from huacnlee/avoid-render-form-in-notes-list
Avoid render edit_form in each notes.
2015-11-12 11:55:55 +01:00
Kamil Trzciński 9573cf6cc7 Merge branch 'caches' into 'master'
Allow to define cache in `.gitlab-ci.yml`

This extends `.gitlab-ci.yml` syntax to allow specifying caching files and directories between builds, making it easy to preserve ex. gems.

```
cache:
  paths:
  - .bundle
  - vendor/

before_script:
- bundle install --path vendor/

rspec:
  script:
  - bundle exec rspec
```

This is based on Build Artifacts changes.

/cc@dzaporozhets 

See merge request !1786
2015-11-12 09:39:56 +00:00
Jason Lee 1974087114 Avoid render edit_form in each notes.
Use RJS to render edit note feature.

Before:

```
Rendered projects/notes/_note.html.haml (27.9ms)
Rendered projects/_zen.html.haml (0.3ms)
Rendered projects/notes/_hints.html.haml (0.7ms)
Rendered projects/_md_preview.html.haml (3.9ms)
Rendered projects/notes/_edit_form.html.haml (6.9ms)
Rendered projects/notes/_note.html.haml (17.7ms)
Rendered projects/_zen.html.haml (0.3ms)
Rendered projects/notes/_hints.html.haml (0.6ms)
Rendered projects/_md_preview.html.haml (3.4ms)
Rendered projects/notes/_edit_form.html.haml (7.0ms)
```

After:

```
Rendered projects/notes/_note.html.haml (13.8ms)
Rendered projects/notes/_note.html.haml (7.1ms)
Rendered projects/notes/_note.html.haml (9.5ms)
Rendered projects/notes/_note.html.haml (8.5ms)
```

This change reduce at least 6ms * N ('N' - number of notes).
2015-11-12 13:16:35 +08:00
Kamil Trzciński fb5c3c7021 Merge branch 'artifacts' into 'master'
Implement Build Artifacts

This implements #3028 

1. It stores artifacts in shared/artifacts,
1. It adds `artifacts` to `.gitlab-ci.yml`,
1. We use GitLab Workhorse to offload artifacts uploading,
1. To download artifacts it uses GitLab Workhorse X-Sendfile extension,
1. There's one "artifact" per-build. The new upload removes previous one and creates a new one,
1. Default max artifact size is set to 100MB - this can be changed in settings.

Missing things:
1. Support for `.gitlab-ci.yml`: `artifacts: true or git-ls-files` which will upload all non tracked files,
1. Artifacts passing between builds.

GitLab Workhorse changes: https://gitlab.com/gitlab-org/gitlab-workhorse/merge_requests/5
GitLab Runner changes: https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/merge_requests/46

Syntax:
```
artifacts:
  untracked: true # default: false
  paths: # default: empty
  - bin/files
```


See merge request !1584
2015-11-11 12:44:37 +00:00
Kamil Trzcinski 58074ab7da Allow to define cache in .gitlab-ci.yml 2015-11-10 23:01:11 +01:00
Kamil Trzcinski d70f1f35b1 Fix tests 2015-11-10 23:00:05 +01:00
Stan Hu 83ec84946c Merge branch 'add-allow-failure-status' into 'master'
Add allow_failure field to commit status API

Closes #3196

See merge request !1685
2015-11-10 21:28:12 +00:00
Kamil Trzcinski db3213fc1c Use normal file upload mechanism to upload artifacts 2015-11-10 12:51:51 +01:00
Kamil Trzcinski 445cdb7579 Move tmp artifacts to shared/artifacts/tmp/. Check for GitLab-Workhorse now 2015-11-10 12:51:51 +01:00
Kamil Trzcinski 97f58bae87 Change artifacts syntax to allow uploading untracked files 2015-11-10 12:51:50 +01:00
Kamil Trzcinski d0e3e823a2 Implement Build Artifacts
- Offloads uploading to GitLab Workhorse
- Use /authorize request for fast uploading
- Added backup recipes for artifacts
- Support download acceleration using X-Sendfile
2015-11-10 12:51:50 +01:00
Dmitriy Zaporozhets 354b69dde2 Merge remote-tracking branch 'origin/release-notes'
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-10 10:20:22 +01:00
Yorick Peterse 7b5fd8742e Track the amount of times views are rendered 2015-11-09 14:29:10 +01:00
Yorick Peterse db46d49c0e Fixed Hash key style in Sherlock::Query spec 2015-11-09 14:29:10 +01:00
Yorick Peterse 265ef867ff Added specs and source documentation for Sherlock 2015-11-09 14:29:10 +01:00
Douwe Maan 03b12ee550 Merge branch 'fix-commits-manual-merge' into 'master'
Fix bug where manually merged branches in a MR would end up with an empty diff

This bug manifested in 8.1 with the refactoring of `RefreshService`. Here's what happens:

1. User create a new branch `foo`.
2. User creates a merge request for `foo`.
3. User merges `foo` into `master` by hand.
4. `RefreshService` reloads the merge request. Since `master` is equivalent to `foo`, this results in an empty diff.
5. `RefreshService` then closes the MR.

This wasn't an issue when you use the normal "Accept Merge Request" flow because the act of clicking the button closes the merge request, so step 4 never happens.

Closes #3314

See merge request !1758
2015-11-09 11:12:42 +00:00
Kamil Trzcinski 4fda9ef8a5 Fix tests 2015-11-08 23:55:47 +01:00
Stan Hu 8f2561b193 Add spec for manual merge of merge request 2015-11-06 10:48:25 -08:00