Commit Graph
3296 Commits
Author SHA1 Message Date
Robert Speicher ed2a8ba600 Merge 8-2-stable into 8-2-stable-ee
Conflicts remaining:

- app/controllers/groups/group_members_controller.rb
- app/controllers/projects/project_members_controller.rb
- app/models/ability.rb
- app/models/member.rb
- app/models/project.rb
2015-11-19 10:33:18 -05:00
Douwe MaanandRobert Speicher 834e440f70 Merge branch 'mirror-repository' into 'master'
Add option to mirror an upstream repository.

Closes internal https://dev.gitlab.org/gitlab/gitlab-ee/issues/279

Depends on gitlab-org/gitlab-shell!29

To do:

- [x] Decide on what user should be the author of the activity feed events. The initial project creator perhaps? That makes sense for personal projects, but less so for group projects, where it's even possible that the creator has since left the team.
- [x] Write specs!
- [x] Write documentation
- [x] Port back relevant commits to CE: gitlab-org/gitlab-ce!1822

----

## Mirror status on project homepage

![Screen_Shot_2015-11-12_at_12.48.15](/uploads/39666b0e4a14723407b0f66e2aaddb46/Screen_Shot_2015-11-12_at_12.48.15.png)


## Settings navigation item

![Screen_Shot_2015-11-10_at_17.32.27](/uploads/116ece85f65681bbd3c7c5e282ab3b3c/Screen_Shot_2015-11-10_at_17.32.27.png)

## Mirroring settings

![Screen_Shot_2015-11-17_at_11.17.17](/uploads/ff57c89831524435ec6a063c3c470203/Screen_Shot_2015-11-17_at_11.17.17.png)


## Activity feed with new "pushes" (mirror updates)
![activity_feed](/uploads/04754251f2142fd06b1fddc2aae45232/activity_feed.png)

I have yet to decide on what user should be the author of these events. The initial project creator perhaps? That makes sense for personal projects, but less so for group projects, where it's even possible that the creator has since left the team.

## Warning that branch has diverged from upstream
![diverged](/uploads/ecf7ae6c5709f626c750695f45ca521a/diverged.png)

## Commits heading after failed update
![commits_failure](/uploads/d1b3e1f6796431c839ee9e2f67499283/commits_failure.png)

Link send user to the mirroring settings if they are a project admin.

## Mirroring settings after failed update

![Screen_Shot_2015-11-12_at_12.43.09](/uploads/ece68d5021c9a4c374bf6d973cf9fafa/Screen_Shot_2015-11-12_at_12.43.09.png)

## New project page
![new_project](/uploads/296beb6c7faf390a9b7e1facc9c1d4d6/new_project.png)

## Import form after failed import
(Screenshot outdated)

![new_import_failure](/uploads/ac0ebfc8ec23232603126fe0a6e10171/new_import_failure.png)

Shown when the initial import of a project fails, not when an update of an existing project fails.

cc @dzaporozhets @sytses @JobV

See merge request !51
2015-11-18 16:50:49 -05:00
Valery Sizov c67bafca31 Merge remote-tracking branch 'origin/master' into ce-to-ee 2015-11-16 17:05:47 +02:00
Dmitriy Zaporozhets 1328e4b504 Merge branch 'refactor-duplication' into 'master'
Remove some code duplication

* remove duplicate code in uploaders
* remove duplicate code in NotificationHelper
* remove duplicate code in Repository


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

See merge request !1800
2015-11-16 13:05:49 +00:00
Dmitriy Zaporozhets cd513034e6 Set less strict flay option for now
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-16 13:01:34 +01:00
Marin Jankovski 14032d8eb1 Add support for git lfs. 2015-11-16 12:39:13 +01:00
Valery Sizov 7d7691cd09 Merge remote-tracking branch 'origin/master' into ce-to-ee 2015-11-16 13:37:13 +02:00
Dmitriy Zaporozhets 86ce64f053 Merge branch 'master' of dev.gitlab.org:gitlab/gitlabhq 2015-11-16 10:18:40 +01:00
Dmitriy Zaporozhets a43a218c98 Merge branch 'releases-feature' 2015-11-16 10:18:32 +01:00
Valery Sizov 0d9e08a891 Merge branch 'master' into ce-to-ee 2015-11-16 10:12:23 +02:00
Robert Speicher 37fe73c337 Merge remote-tracking branch 'ce/master' into ce-to-ee 2015-11-15 00:30:17 -05:00
Alec Cooper 4bb99677b1 Relative links in the README file shown on the repository homepage should point
to the default branch, not to master
2015-11-14 15:00:55 -05: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
Robert Speicher 6afca45028 Merge remote-tracking branch 'ce/master' into ce-to-ee 2015-11-13 12:34:34 -05: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 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 c71892e1a8 Even more refactoring to inline_diff.rb
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-13 01:07:33 +01:00
Dmitriy Zaporozhets c903f23f3c Split complex methods in GoogleCodeImport::Importer
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-13 00:55:20 +01:00
Dmitriy Zaporozhets ea6a78ef5c Split complex Gitlab::InlineDiff::processing method
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-13 00:44:16 +01:00
Dmitriy Zaporozhets 8f53094f0f Add API docs and correctly expose release api
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-12 23:52:02 +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 d343d9d8c2 Add grape routing print
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-12 16:26:23 +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
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
Dmitriy Zaporozhets 12b35c6fe8 Merge branch 'flay' into 'master'
Add flay: tool to find duplicate code

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

See merge request !1789
2015-11-11 16:21:35 +00:00
Dmitriy Zaporozhets 7bca4cabc2 Merge branch 'flog' into 'master'
Add method complexity check to CI

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

See merge request !1783
2015-11-11 15:29:19 +00:00
Dmitriy Zaporozhets 98c954ee81 Add flay: tool to find duplicate code
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-11 16:29:00 +01:00
Dmitriy Zaporozhets 6748dd2fd0 Allow flog failure for now
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-11 15:30:23 +01: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
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 eef129bd4a Final fixes 2015-11-10 22:21:15 +01:00
Dmitriy Zaporozhets 58429d9b26 Add method complexity check to CI
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-10 18:34:05 +01:00
Kamil Trzcinski db3213fc1c Use normal file upload mechanism to upload artifacts 2015-11-10 12:51:51 +01:00
Kamil Trzcinski 7e4e3fb3b6 Fix nginx config to use @gitlab-workhorse 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 1b7a2fc536 Improve Continuous Integration graphs page
* fix commit duration graph
* make graphs responsive
* fix wrong padding
* add a bit of explanation to colors

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-10 11:49:38 +01:00
Yorick Peterse 73cf0f1647 Only load rblineprof when actually needed
This ensures the application can still boot when the "development" group
is not available.
2015-11-09 15:54:13 +01:00
Yorick Peterse 7b5fd8742e Track the amount of times views are rendered 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
Yorick Peterse dec3e4ce64 Added Sherlock, a custom profiling tool for GitLab
Sherlock will be a new GitLab specific tool for measuring the
performance of Rails requests (and SideKiq jobs at some point). Some of
the things that are currently tracked:

* SQL queries along with their timings, backtraces and query plans
  (using "EXPLAIN ANALYZE" for PostgreSQL and regular "EXPLAIN" for
  MySQL)
* Timings of application files (including views) on a per line basis
* Some meta data such as the request method, path, total duration, etc

More tracking (e.g. Rugged or gitlab-shell timings) might be added in
the future.

Sherlock will replace any existing tools we have used so far (e.g.
active_record_query_trace and rack-mini-profiler), hence the
corresponding Gems have been removed from the Gemfile.

Sherlock can be enabled by starting Rails as following:

    ENABLE_SHERLOCK=1 bundle exec rails s

Recorded transactions can be found at `/sherlock/transactions`.
2015-11-09 14:29:10 +01:00
Kamil Trzcinski b18671a1b2 Enable shared runners for all new projects 2015-11-05 17:02:02 +01:00
Valery Sizov 93bcc9ca7f Merge remote-tracking branch 'origin/master' into ce_upsteram 2015-11-05 14:26:35 +02:00
Robert Speicher 5df6b0b758 Merge branch 'facebook-auth' into 'master'
Add Facebook authentication

See merge request !1740
2015-11-04 15:23:38 +00:00
Stan Hu 91cbf9db0c Add allow_failure field to commit status API
Closes #3196
2015-11-03 20:41:19 -08:00