Merge branch 'master' of github.com:gitlabhq/gitlabhq
This commit is contained in:
commit
2be3a012ff
34 changed files with 65 additions and 74 deletions
|
@ -336,9 +336,9 @@ ActiveRecord::Schema.define(version: 20150211174341) do
|
|||
t.string "import_status"
|
||||
t.float "repository_size", default: 0.0
|
||||
t.integer "star_count", default: 0, null: false
|
||||
t.string "avatar"
|
||||
t.string "import_type"
|
||||
t.string "import_source"
|
||||
t.string "avatar"
|
||||
end
|
||||
|
||||
add_index "projects", ["created_at", "id"], name: "index_projects_on_created_at_and_id", using: :btree
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 2.6 to 3.0
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/2.6-to-3.0.md) for the most up to date instructions.*
|
||||
|
||||
## 1. Stop server & resque
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 2.9 to 3.0
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/2.9-to-3.0.md) for the most up to date instructions.*
|
||||
|
||||
## 1. Stop server & resque
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 3.0 to 3.1
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/3.0-to-3.1.md) for the most up to date instructions.*
|
||||
|
||||
**IMPORTANT!**
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 3.1 to 4.0
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/3.1-to-4.0.md) for the most up to date instructions.*
|
||||
|
||||
## Important changes
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 4.0 to 4.1
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/4.0-to-4.1.md) for the most up to date instructions.*
|
||||
|
||||
## Important changes
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 4.1 to 4.2
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/4.1-to-4.2.md) for the most up to date instructions.*
|
||||
|
||||
## 1. Stop server & Resque
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 4.2 to 5.0
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/4.2-to-5.0.md) for the most up to date instructions.*
|
||||
|
||||
## Warning
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 5.0 to 5.1
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/5.0-to-5.1.md) for the most up to date instructions.*
|
||||
|
||||
## Warning
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 5.1 to 5.2
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/5.1-to-5.2.md) for the most up to date instructions.*
|
||||
|
||||
## Warning
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 5.1 to 5.4
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/5.1-to-5.4.md) for the most up to date instructions.*
|
||||
|
||||
Also works starting from 5.2.
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 5.1 to 6.0
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/5.1-to-6.0.md) for the most up to date instructions.*
|
||||
|
||||
## Warning
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 5.2 to 5.3
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/5.2-to-5.3.md) for the most up to date instructions.*
|
||||
|
||||
## Warning
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 5.3 to 5.4
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/5.3-to-5.4.md) for the most up to date instructions.*
|
||||
|
||||
## 0. Backup
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 5.4 to 6.0
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/5.4-to-6.0.md) for the most up to date instructions.*
|
||||
|
||||
## Warning
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 6.0 to 6.1
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/6.0-to-6.1.md) for the most up to date instructions.*
|
||||
|
||||
## Warning
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 6.1 to 6.2
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/6.1-to-6.2.md) for the most up to date instructions.*
|
||||
|
||||
**You should update to 6.1 before installing 6.2 so all the necessary conversions are run.**
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 6.2 to 6.3
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/6.2-to-6.3.md) for the most up to date instructions.*
|
||||
|
||||
**Requires version: 6.1 or 6.2.**
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 6.3 to 6.4
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/6.3-to-6.4.md) for the most up to date instructions.*
|
||||
|
||||
## 0. Backup
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 6.4 to 6.5
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/6.4-to-6.5.md) for the most up to date instructions.*
|
||||
|
||||
## 0. Backup
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 6.5 to 6.6
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/6.5-to-6.6.md) for the most up to date instructions.*
|
||||
|
||||
## 0. Backup
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 6.6 to 6.7
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/6.6-to-6.7.md) for the most up to date instructions.*
|
||||
|
||||
## 0. Backup
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 6.7 to 6.8
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/6.7-to-6.8.md) for the most up to date instructions.*
|
||||
|
||||
## 0. Backup
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 6.8 to 6.9
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/6.8-to-6.9.md) for the most up to date instructions.*
|
||||
|
||||
### 0. Backup
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 6.9 to 7.0
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/6.9-to-7.0.md) for the most up to date instructions.*
|
||||
|
||||
### 0. Backup
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 6.x or 7.x to 7.7
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/6.x-or-7.x-to-7.4.md) for the most up to date instructions.*
|
||||
|
||||
This allows you to upgrade any version of GitLab from 6.0 and up (including 7.0 and up) to 7.7.
|
||||
|
||||
|
@ -199,7 +200,7 @@ If all items are green, then congratulations upgrade complete!
|
|||
|
||||
When using Google omniauth login, changes of the Google account required.
|
||||
Ensure that `Contacts API` and the `Google+ API` are enabled in the [Google Developers Console](https://console.developers.google.com/).
|
||||
More details can be found at the [integration documentation](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/integration/google.md).
|
||||
More details can be found at the [integration documentation](../../../master/doc/integration/google.md).
|
||||
|
||||
## 12. Optional optimizations for GitLab setups with MySQL databases
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 7.0 to 7.1
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/7.0-to-7.1.md) for the most up to date instructions.*
|
||||
|
||||
### 0. Backup
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 7.1 to 7.2
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/7.1-to-7.2.md) for the most up to date instructions.*
|
||||
|
||||
## Editable labels
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 7.2 to 7.3
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/7.2-to-7.3.md) for the most up to date instructions.*
|
||||
|
||||
### 0. Backup
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# From 7.3 to 7.4
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/7.3-to-7.4.md) for the most up to date instructions.*
|
||||
|
||||
### 0. Stop server
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# Migrating GitLab from MySQL to Postgres
|
||||
*Make sure you view this [guide from the `master` branch](../../../master/doc/update/mysql_to_postgresql.md) for the most up to date instructions.*
|
||||
|
||||
If you are replacing MySQL with Postgres while keeping GitLab on the same server all you need to do is to export from MySQL, import into Postgres and rebuild the indexes as described below. If you are also moving GitLab to another server, or if you are switching to omnibus-gitlab, you may want to use a GitLab backup file. The second part of this documents explains the procedure to do this.
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# Universal update guide for patch versions
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/patch_versions.md) for the most up to date instructions.*
|
||||
|
||||
For example from 6.2.0 to 6.2.1, also see the [semantic versioning specification](http://semver.org/).
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# GitLab Upgrader
|
||||
*Make sure you view this [upgrade guide from the `master` branch](../../../master/doc/update/upgrader.md) for the most up to date instructions.*
|
||||
|
||||
GitLab Upgrader - a ruby script that allows you easily upgrade GitLab to latest minor version.
|
||||
|
||||
|
|
|
@ -119,57 +119,33 @@ describe API::API, api: true do
|
|||
|
||||
describe 'POST /projects' do
|
||||
context 'maximum number of projects reached' do
|
||||
before do
|
||||
(1..user2.projects_limit).each do |project|
|
||||
post api('/projects', user2), name: "foo#{project}"
|
||||
end
|
||||
end
|
||||
|
||||
it 'should not create new project' do
|
||||
it 'should not create new project and respond with 403' do
|
||||
User.any_instance.stub(:projects_limit_left).and_return(0)
|
||||
expect {
|
||||
post api('/projects', user2), name: 'foo'
|
||||
}.to change {Project.count}.by(0)
|
||||
response.status.should == 403
|
||||
end
|
||||
end
|
||||
|
||||
it 'should create new project without path' do
|
||||
expect { post api('/projects', user), name: 'foo' }.to change {Project.count}.by(1)
|
||||
end
|
||||
|
||||
it 'should not create new project without name' do
|
||||
expect { post api('/projects', user) }.to_not change {Project.count}
|
||||
end
|
||||
|
||||
it 'should return a 400 error if name not given' do
|
||||
post api('/projects', user)
|
||||
response.status.should == 400
|
||||
it 'should create new project without path and return 201' do
|
||||
expect { post api('/projects', user), name: 'foo' }.
|
||||
to change { Project.count }.by(1)
|
||||
response.status.should == 201
|
||||
end
|
||||
|
||||
it 'should create last project before reaching project limit' do
|
||||
(1..user2.projects_limit-1).each { |p| post api('/projects', user2), name: "foo#{p}" }
|
||||
User.any_instance.stub(:projects_limit_left).and_return(1)
|
||||
post api('/projects', user2), name: 'foo'
|
||||
response.status.should == 201
|
||||
end
|
||||
|
||||
it 'should respond with 201 on success' do
|
||||
post api('/projects', user), name: 'foo'
|
||||
response.status.should == 201
|
||||
end
|
||||
|
||||
it 'should respond with 400 if name is not given' do
|
||||
post api('/projects', user)
|
||||
it 'should not create new project without name and return 400' do
|
||||
expect { post api('/projects', user) }.to_not change { Project.count }
|
||||
response.status.should == 400
|
||||
end
|
||||
|
||||
it 'should return a 403 error if project limit reached' do
|
||||
(1..user.projects_limit).each do |p|
|
||||
post api('/projects', user), name: "foo#{p}"
|
||||
end
|
||||
post api('/projects', user), name: 'bar'
|
||||
response.status.should == 403
|
||||
end
|
||||
|
||||
it 'should assign attributes to project' do
|
||||
it "should assign attributes to project" do
|
||||
project = attributes_for(:project, {
|
||||
path: 'camelCasePath',
|
||||
description: Faker::Lorem.sentence,
|
||||
|
@ -232,21 +208,15 @@ describe API::API, api: true do
|
|||
before { project }
|
||||
before { admin }
|
||||
|
||||
it 'should create new project without path' do
|
||||
it 'should create new project without path and return 201' do
|
||||
expect { post api("/projects/user/#{user.id}", admin), name: 'foo' }.to change {Project.count}.by(1)
|
||||
end
|
||||
|
||||
it 'should not create new project without name' do
|
||||
expect { post api("/projects/user/#{user.id}", admin) }.to_not change {Project.count}
|
||||
end
|
||||
|
||||
it 'should respond with 201 on success' do
|
||||
post api("/projects/user/#{user.id}", admin), name: 'foo'
|
||||
response.status.should == 201
|
||||
end
|
||||
|
||||
it 'should respond with 400 on failure' do
|
||||
post api("/projects/user/#{user.id}", admin)
|
||||
it 'should respond with 400 on failure and not project' do
|
||||
expect { post api("/projects/user/#{user.id}", admin) }.
|
||||
to_not change { Project.count }
|
||||
|
||||
response.status.should == 400
|
||||
json_response['message']['name'].should == [
|
||||
'can\'t be blank',
|
||||
|
@ -350,26 +320,28 @@ describe API::API, api: true do
|
|||
|
||||
describe 'permissions' do
|
||||
context 'personal project' do
|
||||
before do
|
||||
it 'Sets project access and returns 200' do
|
||||
project.team << [user, :master]
|
||||
get api("/projects/#{project.id}", user)
|
||||
end
|
||||
|
||||
it { response.status.should == 200 }
|
||||
it { json_response['permissions']['project_access']['access_level'].should == Gitlab::Access::MASTER }
|
||||
it { json_response['permissions']['group_access'].should be_nil }
|
||||
expect(response.status).to eq(200)
|
||||
expect(json_response['permissions']['project_access']['access_level']).
|
||||
to eq(Gitlab::Access::MASTER)
|
||||
expect(json_response['permissions']['group_access']).to be_nil
|
||||
end
|
||||
end
|
||||
|
||||
context 'group project' do
|
||||
before do
|
||||
it 'should set the owner and return 200' do
|
||||
project2 = create(:project, group: create(:group))
|
||||
project2.group.add_owner(user)
|
||||
get api("/projects/#{project2.id}", user)
|
||||
end
|
||||
|
||||
it { response.status.should == 200 }
|
||||
it { json_response['permissions']['project_access'].should be_nil }
|
||||
it { json_response['permissions']['group_access']['access_level'].should == Gitlab::Access::OWNER }
|
||||
expect(response.status).to eq(200)
|
||||
expect(json_response['permissions']['project_access']).to be_nil
|
||||
expect(json_response['permissions']['group_access']['access_level']).
|
||||
to eq(Gitlab::Access::OWNER)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -432,22 +404,9 @@ describe API::API, api: true do
|
|||
json_response['title'].should == 'api test'
|
||||
end
|
||||
|
||||
it 'should return a 400 error if title is not given' do
|
||||
post api("/projects/#{project.id}/snippets", user),
|
||||
file_name: 'sample.rb', code: 'test'
|
||||
response.status.should == 400
|
||||
end
|
||||
|
||||
it 'should return a 400 error if file_name not given' do
|
||||
post api("/projects/#{project.id}/snippets", user),
|
||||
title: 'api test', code: 'test'
|
||||
response.status.should == 400
|
||||
end
|
||||
|
||||
it 'should return a 400 error if code not given' do
|
||||
post api("/projects/#{project.id}/snippets", user),
|
||||
title: 'api test', file_name: 'sample.rb'
|
||||
response.status.should == 400
|
||||
it 'should return a 400 error if invalid snippet is given' do
|
||||
post api("/projects/#{project.id}/snippets", user)
|
||||
expect(status).to eq(400)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in a new issue