Commit 0472a881 authored by Nick Thomas's avatar Nick Thomas

Fix merge conflicts

parent 14bdd022
...@@ -31,7 +31,6 @@ gem 'omniauth-gitlab', '~> 1.0.2' ...@@ -31,7 +31,6 @@ gem 'omniauth-gitlab', '~> 1.0.2'
gem 'omniauth-google-oauth2', '~> 0.4.1' gem 'omniauth-google-oauth2', '~> 0.4.1'
gem 'omniauth-kerberos', '~> 0.3.0', group: :kerberos gem 'omniauth-kerberos', '~> 0.3.0', group: :kerberos
gem 'omniauth-oauth2-generic', '~> 0.2.2' gem 'omniauth-oauth2-generic', '~> 0.2.2'
<<<<<<< HEAD
gem 'omniauth-saml', '~> 1.7.0' gem 'omniauth-saml', '~> 1.7.0'
gem 'omniauth-shibboleth', '~> 1.2.0' gem 'omniauth-shibboleth', '~> 1.2.0'
gem 'omniauth-twitter', '~> 1.2.0' gem 'omniauth-twitter', '~> 1.2.0'
...@@ -40,15 +39,6 @@ gem 'gssapi', group: :kerberos ...@@ -40,15 +39,6 @@ gem 'gssapi', group: :kerberos
gem 'omniauth-authentiq', '~> 0.3.0' gem 'omniauth-authentiq', '~> 0.3.0'
gem 'rack-oauth2', '~> 1.2.1' gem 'rack-oauth2', '~> 1.2.1'
gem 'jwt', '~> 1.5.6' gem 'jwt', '~> 1.5.6'
=======
gem 'omniauth-saml', '~> 1.7.0'
gem 'omniauth-shibboleth', '~> 1.2.0'
gem 'omniauth-twitter', '~> 1.2.0'
gem 'omniauth_crowd', '~> 2.2.0'
gem 'omniauth-authentiq', '~> 0.3.0'
gem 'rack-oauth2', '~> 1.2.1'
gem 'jwt', '~> 1.5.6'
>>>>>>> ce/master
# Spam and anti-bot protection # Spam and anti-bot protection
gem 'recaptcha', '~> 3.0', require: 'recaptcha/rails' gem 'recaptcha', '~> 3.0', require: 'recaptcha/rails'
...@@ -256,7 +246,6 @@ gem 'font-awesome-rails', '~> 4.7' ...@@ -256,7 +246,6 @@ gem 'font-awesome-rails', '~> 4.7'
gem 'gemojione', '~> 3.0' gem 'gemojione', '~> 3.0'
gem 'gon', '~> 6.1.0' gem 'gon', '~> 6.1.0'
gem 'jquery-atwho-rails', '~> 1.3.2' gem 'jquery-atwho-rails', '~> 1.3.2'
<<<<<<< HEAD
gem 'jquery-rails', '~> 4.1.0' gem 'jquery-rails', '~> 4.1.0'
gem 'request_store', '~> 1.3' gem 'request_store', '~> 1.3'
gem 'select2-rails', '~> 3.5.9' gem 'select2-rails', '~> 3.5.9'
...@@ -264,14 +253,6 @@ gem 'virtus', '~> 1.0.1' ...@@ -264,14 +253,6 @@ gem 'virtus', '~> 1.0.1'
gem 'net-ssh', '~> 3.0.1' gem 'net-ssh', '~> 3.0.1'
gem 'base32', '~> 0.3.0' gem 'base32', '~> 0.3.0'
gem "gitlab-license", "~> 1.0" gem "gitlab-license", "~> 1.0"
=======
gem 'jquery-rails', '~> 4.1.0'
gem 'request_store', '~> 1.3'
gem 'select2-rails', '~> 3.5.9'
gem 'virtus', '~> 1.0.1'
gem 'net-ssh', '~> 3.0.1'
gem 'base32', '~> 0.3.0'
>>>>>>> ce/master
# Sentry integration # Sentry integration
gem 'sentry-raven', '~> 2.0.0' gem 'sentry-raven', '~> 2.0.0'
......
...@@ -34,12 +34,9 @@ import PrometheusGraph from './monitoring/prometheus_graph'; // TODO: Maybe Make ...@@ -34,12 +34,9 @@ import PrometheusGraph from './monitoring/prometheus_graph'; // TODO: Maybe Make
/* global ProjectShow */ /* global ProjectShow */
/* global Labels */ /* global Labels */
/* global Shortcuts */ /* global Shortcuts */
<<<<<<< HEAD
/* global WeightSelect */ /* global WeightSelect */
/* global AdminEmailSelect */ /* global AdminEmailSelect */
=======
import Issue from './issue'; import Issue from './issue';
>>>>>>> ce/master
import BindInOut from './behaviors/bind_in_out'; import BindInOut from './behaviors/bind_in_out';
import GroupsList from './groups_list'; import GroupsList from './groups_list';
...@@ -293,7 +290,6 @@ const UserCallout = require('./user_callout'); ...@@ -293,7 +290,6 @@ const UserCallout = require('./user_callout');
case 'search:show': case 'search:show':
new Search(); new Search();
break; break;
<<<<<<< HEAD
case 'projects:mirrors:show': case 'projects:mirrors:show':
case 'projects:mirrors:update': case 'projects:mirrors:update':
new UsersSelect(); new UsersSelect();
...@@ -301,8 +297,6 @@ const UserCallout = require('./user_callout'); ...@@ -301,8 +297,6 @@ const UserCallout = require('./user_callout');
case 'admin:emails:show': case 'admin:emails:show':
new AdminEmailSelect(); new AdminEmailSelect();
break; break;
=======
>>>>>>> ce/master
case 'projects:repository:show': case 'projects:repository:show':
new gl.ProtectedBranchCreate(); new gl.ProtectedBranchCreate();
new gl.ProtectedBranchEditList(); new gl.ProtectedBranchEditList();
......
...@@ -80,32 +80,6 @@ ...@@ -80,32 +80,6 @@
} }
// Determines the full search query (visual tokens + input) // Determines the full search query (visual tokens + input)
<<<<<<< HEAD
static getSearchQuery() {
const tokensContainer = document.querySelector('.tokens-container');
const values = [];
[].forEach.call(tokensContainer.querySelectorAll('.js-visual-token'), (token) => {
const name = token.querySelector('.name');
const value = token.querySelector('.value');
const symbol = value && value.dataset.symbol ? value.dataset.symbol : '';
let valueText = '';
if (value && value.innerText) {
valueText = value.innerText;
}
if (token.className.indexOf('filtered-search-token') !== -1) {
values.push(`${name.innerText.toLowerCase()}:${symbol}${valueText}`);
} else {
values.push(name.innerText);
}
});
const input = document.querySelector('.filtered-search');
values.push(input && input.value);
=======
static getSearchQuery(untilInput = false) { static getSearchQuery(untilInput = false) {
const tokens = [].slice.call(document.querySelectorAll('.tokens-container li')); const tokens = [].slice.call(document.querySelectorAll('.tokens-container li'));
const values = []; const values = [];
...@@ -148,7 +122,6 @@ ...@@ -148,7 +122,6 @@
} }
}); });
>>>>>>> ce/master
return values.join(' '); return values.join(' ');
} }
......
...@@ -8,8 +8,5 @@ require('./filtered_search_manager'); ...@@ -8,8 +8,5 @@ require('./filtered_search_manager');
require('./filtered_search_token_keys'); require('./filtered_search_token_keys');
require('./filtered_search_tokenizer'); require('./filtered_search_tokenizer');
require('./filtered_search_visual_tokens'); require('./filtered_search_visual_tokens');
<<<<<<< HEAD
require('./filtered_search_token_keys_with_weights'); require('./filtered_search_token_keys_with_weights');
=======
>>>>>>> ce/master
...@@ -60,7 +60,6 @@ ...@@ -60,7 +60,6 @@
element: document.querySelector('#js-dropdown-hint'), element: document.querySelector('#js-dropdown-hint'),
}, },
}; };
<<<<<<< HEAD
if (this.page === 'issues') { if (this.page === 'issues') {
this.mapping.weight = { this.mapping.weight = {
...@@ -80,19 +79,6 @@ ...@@ -80,19 +79,6 @@
if (clicked) { if (clicked) {
gl.FilteredSearchVisualTokens.moveInputToTheRight(); gl.FilteredSearchVisualTokens.moveInputToTheRight();
} }
=======
}
static addWordToInput(tokenName, tokenValue = '', clicked = false) {
const input = document.querySelector('.filtered-search');
gl.FilteredSearchVisualTokens.addFilterVisualToken(tokenName, tokenValue);
input.value = '';
if (clicked) {
gl.FilteredSearchVisualTokens.moveInputToTheRight();
}
>>>>>>> ce/master
} }
updateCurrentDropdownOffset() { updateCurrentDropdownOffset() {
...@@ -165,11 +151,7 @@ ...@@ -165,11 +151,7 @@
} }
setDropdown() { setDropdown() {
<<<<<<< HEAD
const query = gl.DropdownUtils.getSearchQuery();
=======
const query = gl.DropdownUtils.getSearchQuery(true); const query = gl.DropdownUtils.getSearchQuery(true);
>>>>>>> ce/master
const { lastToken, searchToken } = this.tokenizer.processTokens(query); const { lastToken, searchToken } = this.tokenizer.processTokens(query);
if (this.currentDropdown) { if (this.currentDropdown) {
......
...@@ -178,10 +178,6 @@ ...@@ -178,10 +178,6 @@
if (e.keyCode === 8 || e.keyCode === 46) { if (e.keyCode === 8 || e.keyCode === 46) {
gl.FilteredSearchVisualTokens.removeSelectedToken(); gl.FilteredSearchVisualTokens.removeSelectedToken();
this.handleInputPlaceholder(); this.handleInputPlaceholder();
<<<<<<< HEAD
=======
>>>>>>> ce/master
this.toggleClearSearchButton(); this.toggleClearSearchButton();
} }
} }
......
...@@ -144,7 +144,6 @@ ...@@ -144,7 +144,6 @@
} }
} }
<<<<<<< HEAD
/** /**
* Deploy boards * Deploy boards
*/ */
...@@ -280,8 +279,6 @@ ...@@ -280,8 +279,6 @@
} }
} }
=======
>>>>>>> ce/master
.prometheus-graph { .prometheus-graph {
text { text {
fill: $stat-graph-axis-fill; fill: $stat-graph-axis-fill;
......
...@@ -8,11 +8,7 @@ module Projects ...@@ -8,11 +8,7 @@ module Projects
def index def index
issues = ::Boards::Issues::ListService.new(project, current_user, filter_params).execute issues = ::Boards::Issues::ListService.new(project, current_user, filter_params).execute
issues = issues.page(params[:page]).per(params[:per] || 20) issues = issues.page(params[:page]).per(params[:per] || 20)
<<<<<<< HEAD
make_sure_position_is_set(issues) unless Gitlab::Geo.secondary? make_sure_position_is_set(issues) unless Gitlab::Geo.secondary?
=======
make_sure_position_is_set(issues)
>>>>>>> ce/master
render json: { render json: {
issues: serialize_as_json(issues), issues: serialize_as_json(issues),
......
...@@ -19,13 +19,9 @@ class Projects::DeployKeysController < Projects::ApplicationController ...@@ -19,13 +19,9 @@ class Projects::DeployKeysController < Projects::ApplicationController
@key = DeployKey.new(deploy_key_params.merge(user: current_user)) @key = DeployKey.new(deploy_key_params.merge(user: current_user))
unless @key.valid? && @project.deploy_keys << @key unless @key.valid? && @project.deploy_keys << @key
<<<<<<< HEAD
flash[:alert] = @key.errors.full_messages.join(', ').html_safe flash[:alert] = @key.errors.full_messages.join(', ').html_safe
else else
log_audit_event(@key.title, action: :create) log_audit_event(@key.title, action: :create)
=======
flash[:alert] = @key.errors.full_messages.join(', ').html_safe
>>>>>>> ce/master
end end
redirect_to_repository_settings(@project) redirect_to_repository_settings(@project)
end end
...@@ -50,7 +46,6 @@ class Projects::DeployKeysController < Projects::ApplicationController ...@@ -50,7 +46,6 @@ class Projects::DeployKeysController < Projects::ApplicationController
def deploy_key_params def deploy_key_params
params.require(:deploy_key).permit(:key, :title, :can_push) params.require(:deploy_key).permit(:key, :title, :can_push)
<<<<<<< HEAD
end end
def log_audit_event(key_title, options = {}) def log_audit_event(key_title, options = {})
...@@ -60,7 +55,5 @@ class Projects::DeployKeysController < Projects::ApplicationController ...@@ -60,7 +55,5 @@ class Projects::DeployKeysController < Projects::ApplicationController
def load_key def load_key
@key ||= current_user.accessible_deploy_keys.find(params[:id]) @key ||= current_user.accessible_deploy_keys.find(params[:id])
=======
>>>>>>> ce/master
end end
end end
...@@ -5,11 +5,7 @@ class Projects::EnvironmentsController < Projects::ApplicationController ...@@ -5,11 +5,7 @@ class Projects::EnvironmentsController < Projects::ApplicationController
before_action :authorize_create_deployment!, only: [:stop] before_action :authorize_create_deployment!, only: [:stop]
before_action :authorize_update_environment!, only: [:edit, :update] before_action :authorize_update_environment!, only: [:edit, :update]
before_action :authorize_admin_environment!, only: [:terminal, :terminal_websocket_authorize] before_action :authorize_admin_environment!, only: [:terminal, :terminal_websocket_authorize]
<<<<<<< HEAD
before_action :environment, only: [:show, :edit, :update, :stop, :terminal, :terminal_websocket_authorize, :metrics, :status] before_action :environment, only: [:show, :edit, :update, :stop, :terminal, :terminal_websocket_authorize, :metrics, :status]
=======
before_action :environment, only: [:show, :edit, :update, :stop, :terminal, :terminal_websocket_authorize, :metrics]
>>>>>>> ce/master
before_action :verify_api_request!, only: :terminal_websocket_authorize before_action :verify_api_request!, only: :terminal_websocket_authorize
def index def index
...@@ -126,7 +122,6 @@ class Projects::EnvironmentsController < Projects::ApplicationController ...@@ -126,7 +122,6 @@ class Projects::EnvironmentsController < Projects::ApplicationController
end end
end end
<<<<<<< HEAD
# The rollout status of an enviroment # The rollout status of an enviroment
def status def status
unless @environment.deployment_service_ready? unless @environment.deployment_service_ready?
...@@ -144,8 +139,6 @@ class Projects::EnvironmentsController < Projects::ApplicationController ...@@ -144,8 +139,6 @@ class Projects::EnvironmentsController < Projects::ApplicationController
end end
end end
=======
>>>>>>> ce/master
private private
def verify_api_request! def verify_api_request!
......
...@@ -57,11 +57,8 @@ class Projects::ProtectedBranchesController < Projects::ApplicationController ...@@ -57,11 +57,8 @@ class Projects::ProtectedBranchesController < Projects::ApplicationController
merge_access_levels_attributes: [:access_level, :id, :user_id, :_destroy, :group_id], merge_access_levels_attributes: [:access_level, :id, :user_id, :_destroy, :group_id],
push_access_levels_attributes: [:access_level, :id, :user_id, :_destroy, :group_id]) push_access_levels_attributes: [:access_level, :id, :user_id, :_destroy, :group_id])
end end
<<<<<<< HEAD
def load_protected_branches def load_protected_branches
@protected_branches = @project.protected_branches.order(:name).page(params[:page]) @protected_branches = @project.protected_branches.order(:name).page(params[:page])
end end
=======
>>>>>>> ce/master
end end
...@@ -2,22 +2,15 @@ module Projects ...@@ -2,22 +2,15 @@ module Projects
module Settings module Settings
class RepositoryController < Projects::ApplicationController class RepositoryController < Projects::ApplicationController
before_action :authorize_admin_project! before_action :authorize_admin_project!
<<<<<<< HEAD
before_action :push_rule, only: [:show] before_action :push_rule, only: [:show]
before_action :remote_mirror, only: [:show] before_action :remote_mirror, only: [:show]
=======
>>>>>>> ce/master
def show def show
@deploy_keys = DeployKeysPresenter @deploy_keys = DeployKeysPresenter
.new(@project, current_user: current_user) .new(@project, current_user: current_user)
define_protected_branches define_protected_branches
<<<<<<< HEAD
end end
=======
end
>>>>>>> ce/master
private private
...@@ -27,7 +20,6 @@ module Projects ...@@ -27,7 +20,6 @@ module Projects
load_gon_index load_gon_index
end end
<<<<<<< HEAD
def push_rule def push_rule
@push_rule ||= PushRule.find_or_create_by(is_sample: true) @push_rule ||= PushRule.find_or_create_by(is_sample: true)
end end
...@@ -36,8 +28,6 @@ module Projects ...@@ -36,8 +28,6 @@ module Projects
@remote_mirror = @project.remote_mirrors.first_or_initialize @remote_mirror = @project.remote_mirrors.first_or_initialize
end end
=======
>>>>>>> ce/master
def load_protected_branches def load_protected_branches
@protected_branches = @project.protected_branches.order(:name).page(params[:page]) @protected_branches = @project.protected_branches.order(:name).page(params[:page])
end end
...@@ -45,18 +35,6 @@ module Projects ...@@ -45,18 +35,6 @@ module Projects
def access_levels_options def access_levels_options
{ {
push_access_levels: { push_access_levels: {
<<<<<<< HEAD
roles: ProtectedBranch::PushAccessLevel.human_access_levels.map { |id, text| { id: id, text: text, before_divider: true } },
},
merge_access_levels: {
roles: ProtectedBranch::MergeAccessLevel.human_access_levels.map { |id, text| { id: id, text: text, before_divider: true } },
},
selected_merge_access_levels: @protected_branch.merge_access_levels.map { |access_level| access_level.user_id || access_level.access_level },
selected_push_access_levels: @protected_branch.push_access_levels.map { |access_level| access_level.user_id || access_level.access_level }
}
end
=======
roles: ProtectedBranch::PushAccessLevel.human_access_levels.map do |id, text| roles: ProtectedBranch::PushAccessLevel.human_access_levels.map do |id, text|
{ id: id, text: text, before_divider: true } { id: id, text: text, before_divider: true }
end end
...@@ -65,24 +43,21 @@ module Projects ...@@ -65,24 +43,21 @@ module Projects
roles: ProtectedBranch::MergeAccessLevel.human_access_levels.map do |id, text| roles: ProtectedBranch::MergeAccessLevel.human_access_levels.map do |id, text|
{ id: id, text: text, before_divider: true } { id: id, text: text, before_divider: true }
end end
} },
selected_merge_access_levels: @protected_branch.merge_access_levels.map { |access_level| access_level.user_id || access_level.access_level },
selected_push_access_levels: @protected_branch.push_access_levels.map { |access_level| access_level.user_id || access_level.access_level }
} }
end end
>>>>>>> ce/master
def open_branches def open_branches
branches = @project.open_branches.map { |br| { text: br.name, id: br.name, title: br.name } } branches = @project.open_branches.map { |br| { text: br.name, id: br.name, title: br.name } }
{ open_branches: branches } { open_branches: branches }
end end
def load_gon_index def load_gon_index
<<<<<<< HEAD
params = open_branches params = open_branches
params[:current_project_id] = @project.id if @project params[:current_project_id] = @project.id if @project
gon.push(params.merge(access_levels_options)) gon.push(params.merge(access_levels_options))
=======
gon.push(open_branches.merge(access_levels_options))
>>>>>>> ce/master
end end
end end
end end
......
...@@ -157,14 +157,6 @@ class Environment < ActiveRecord::Base ...@@ -157,14 +157,6 @@ class Environment < ActiveRecord::Base
project.monitoring_service.metrics(self) if has_metrics? project.monitoring_service.metrics(self) if has_metrics?
end end
def has_metrics?
project.monitoring_service.present? && available? && last_deployment.present?
end
def metrics
project.monitoring_service.metrics(self) if has_metrics?
end
# An environment name is not necessarily suitable for use in URLs, DNS # An environment name is not necessarily suitable for use in URLs, DNS
# or other third-party contexts, so provide a slugified version. A slug has # or other third-party contexts, so provide a slugified version. A slug has
# the following properties: # the following properties:
......
...@@ -9,14 +9,11 @@ class Issue < ActiveRecord::Base ...@@ -9,14 +9,11 @@ class Issue < ActiveRecord::Base
include Elastic::IssuesSearch include Elastic::IssuesSearch
include FasterCacheKeys include FasterCacheKeys
include RelativePositioning include RelativePositioning
<<<<<<< HEAD
WEIGHT_RANGE = 1..9 WEIGHT_RANGE = 1..9
WEIGHT_ALL = 'Everything'.freeze WEIGHT_ALL = 'Everything'.freeze
WEIGHT_ANY = 'Any Weight'.freeze WEIGHT_ANY = 'Any Weight'.freeze
WEIGHT_NONE = 'No Weight'.freeze WEIGHT_NONE = 'No Weight'.freeze
=======
>>>>>>> ce/master
DueDateStruct = Struct.new(:title, :name).freeze DueDateStruct = Struct.new(:title, :name).freeze
NoDueDate = DueDateStruct.new('No Due Date', '0').freeze NoDueDate = DueDateStruct.new('No Due Date', '0').freeze
......
...@@ -115,10 +115,7 @@ class Project < ActiveRecord::Base ...@@ -115,10 +115,7 @@ class Project < ActiveRecord::Base
has_one :external_wiki_service, dependent: :destroy has_one :external_wiki_service, dependent: :destroy
has_one :kubernetes_service, dependent: :destroy, inverse_of: :project has_one :kubernetes_service, dependent: :destroy, inverse_of: :project
has_one :prometheus_service, dependent: :destroy, inverse_of: :project has_one :prometheus_service, dependent: :destroy, inverse_of: :project
<<<<<<< HEAD
has_one :index_status, dependent: :destroy has_one :index_status, dependent: :destroy
=======
>>>>>>> ce/master
has_one :mock_ci_service, dependent: :destroy has_one :mock_ci_service, dependent: :destroy
has_one :forked_project_link, dependent: :destroy, foreign_key: "forked_to_project_id" has_one :forked_project_link, dependent: :destroy, foreign_key: "forked_to_project_id"
......
...@@ -103,11 +103,8 @@ class GitPushService < BaseService ...@@ -103,11 +103,8 @@ class GitPushService < BaseService
UpdateMergeRequestsWorker UpdateMergeRequestsWorker
.perform_async(@project.id, current_user.id, params[:oldrev], params[:newrev], params[:ref]) .perform_async(@project.id, current_user.id, params[:oldrev], params[:newrev], params[:ref])
<<<<<<< HEAD
mirror_update = @project.mirror? && @project.repository.up_to_date_with_upstream?(branch_name) mirror_update = @project.mirror? && @project.repository.up_to_date_with_upstream?(branch_name)
=======
SystemHookPushWorker.perform_async(build_push_data.dup, :push_hooks) SystemHookPushWorker.perform_async(build_push_data.dup, :push_hooks)
>>>>>>> ce/master
EventCreateService.new.push(@project, current_user, build_push_data) EventCreateService.new.push(@project, current_user, build_push_data)
@project.execute_hooks(build_push_data.dup, :push_hooks) @project.execute_hooks(build_push_data.dup, :push_hooks)
......
- if project_nav_tab? :team
= nav_link(controller: [:members, :teams]) do
= link_to namespace_project_settings_members_path(@project.namespace, @project), title: 'Members', class: 'team-tab tab' do
%span
Members
- if can_edit
= nav_link(controller: :repository) do
= link_to namespace_project_settings_repository_path(@project.namespace, @project), title: 'Repository' do
%span
Repository
= nav_link(controller: :integrations) do
= link_to namespace_project_settings_integrations_path(@project.namespace, @project), title: 'Integrations' do
%span
Integrations
- if @project.feature_available?(:builds, current_user)
= nav_link(controller: :ci_cd) do
= link_to namespace_project_settings_ci_cd_path(@project.namespace, @project), title: 'CI/CD Pipelines' do
%span
CI/CD Pipelines
= nav_link(controller: :pages) do
= link_to namespace_project_pages_path(@project.namespace, @project), title: 'Pages', data: {placement: 'right'} do
%span
Pages
= nav_link(controller: :audit_events) do
= link_to namespace_project_audit_events_path(@project.namespace, @project), title: "Audit Events" do
%span
Audit Events
...@@ -26,11 +26,7 @@ ...@@ -26,11 +26,7 @@
= render partial: 'projects/deploy_keys/deploy_key', collection: @deploy_keys.available_project_keys, as: :deploy_key = render partial: 'projects/deploy_keys/deploy_key', collection: @deploy_keys.available_project_keys, as: :deploy_key
- else - else
.settings-message.text-center .settings-message.text-center
<<<<<<< HEAD
No deploy keys from your projects could be found. Create one with the form above
=======
No deploy keys from your projects could be found. Create one with the form above or add existing one below. No deploy keys from your projects could be found. Create one with the form above or add existing one below.
>>>>>>> ce/master
- if @deploy_keys.any_available_public_keys_enabled? - if @deploy_keys.any_available_public_keys_enabled?
%h5.prepend-top-default %h5.prepend-top-default
Public deploy keys available to any project (#{@deploy_keys.available_public_keys_size}) Public deploy keys available to any project (#{@deploy_keys.available_public_keys_size})
......
...@@ -14,11 +14,7 @@ ...@@ -14,11 +14,7 @@
- else - else
(branch was removed from repository) (branch was removed from repository)
<<<<<<< HEAD
= render partial: 'projects/protected_branches/protected_branch_access_summary', locals: { protected_branch: protected_branch } = render partial: 'projects/protected_branches/protected_branch_access_summary', locals: { protected_branch: protected_branch }
=======
= render partial: 'projects/protected_branches/update_protected_branch', locals: { protected_branch: protected_branch }
>>>>>>> ce/master
- if can_admin_project - if can_admin_project
%td %td
......
- page_title "Repository" - page_title "Repository"
<<<<<<< HEAD = render "projects/settings/head"
= render @deploy_keys = render @deploy_keys
= render "projects/push_rules/index" = render "projects/push_rules/index"
= render "projects/mirrors/show" = render "projects/mirrors/show"
=======
= render "projects/settings/head"
= render @deploy_keys
>>>>>>> ce/master
= render "projects/protected_branches/index" = render "projects/protected_branches/index"
...@@ -22,7 +22,6 @@ Rails.application.routes.draw do ...@@ -22,7 +22,6 @@ Rails.application.routes.draw do
authorizations: 'oauth/authorizations' authorizations: 'oauth/authorizations'
end end
<<<<<<< HEAD
namespace :oauth do namespace :oauth do
scope path: 'geo', controller: :geo_auth, as: :geo do scope path: 'geo', controller: :geo_auth, as: :geo do
get 'auth' get 'auth'
...@@ -30,9 +29,8 @@ Rails.application.routes.draw do ...@@ -30,9 +29,8 @@ Rails.application.routes.draw do
get 'logout' get 'logout'
end end
end end
=======
use_doorkeeper_openid_connect use_doorkeeper_openid_connect
>>>>>>> ce/master
# Autocomplete # Autocomplete
get '/autocomplete/users' => 'autocomplete#users' get '/autocomplete/users' => 'autocomplete#users'
......
...@@ -197,10 +197,7 @@ constraints(ProjectUrlConstrainer.new) do ...@@ -197,10 +197,7 @@ constraints(ProjectUrlConstrainer.new) do
post :stop post :stop
get :terminal get :terminal
get :metrics get :metrics
<<<<<<< HEAD
get :status, constraints: { format: :json } get :status, constraints: { format: :json }
=======
>>>>>>> ce/master
get '/terminal.ws/authorize', to: 'environments#terminal_websocket_authorize', constraints: { format: nil } get '/terminal.ws/authorize', to: 'environments#terminal_websocket_authorize', constraints: { format: nil }
end end
......
...@@ -52,7 +52,7 @@ ...@@ -52,7 +52,7 @@
- [cronjob, 1] - [cronjob, 1]
- [default, 1] - [default, 1]
- [pages, 1] - [pages, 1]
<<<<<<< HEAD - [system_hook_push, 1]
# EE specific queues # EE specific queues
- [elasticsearch, 1] - [elasticsearch, 1]
- [geo, 1] - [geo, 1]
...@@ -62,6 +62,3 @@ ...@@ -62,6 +62,3 @@
- [geo_repository_update, 1] - [geo_repository_update, 1]
- [elastic_batch_project_indexer, 1] - [elastic_batch_project_indexer, 1]
- [export_csv, 1] - [export_csv, 1]
=======
- [system_hook_push, 1]
>>>>>>> ce/master
...@@ -115,22 +115,19 @@ ActiveRecord::Schema.define(version: 20170308015651) do ...@@ -115,22 +115,19 @@ ActiveRecord::Schema.define(version: 20170308015651) do
t.boolean "html_emails_enabled", default: true t.boolean "html_emails_enabled", default: true
t.string "plantuml_url" t.string "plantuml_url"
t.boolean "plantuml_enabled" t.boolean "plantuml_enabled"
<<<<<<< HEAD
t.integer "shared_runners_minutes", default: 0, null: false t.integer "shared_runners_minutes", default: 0, null: false
t.integer "repository_size_limit", limit: 8, default: 0 t.integer "repository_size_limit", limit: 8, default: 0
=======
>>>>>>> ce/master
t.integer "terminal_max_session_time", default: 0, null: false t.integer "terminal_max_session_time", default: 0, null: false
t.integer "minimum_mirror_sync_time", default: 15, null: false t.integer "minimum_mirror_sync_time", default: 15, null: false
t.string "default_artifacts_expire_in", default: "0", null: false t.string "default_artifacts_expire_in", default: "0", null: false
t.integer "unique_ips_limit_per_user"
t.integer "unique_ips_limit_time_window"
t.boolean "unique_ips_limit_enabled", default: false, null: false
t.string "elasticsearch_url", default: "http://localhost:9200" t.string "elasticsearch_url", default: "http://localhost:9200"
t.boolean "elasticsearch_aws", default: false, null: false t.boolean "elasticsearch_aws", default: false, null: false
t.string "elasticsearch_aws_region", default: "us-east-1" t.string "elasticsearch_aws_region", default: "us-east-1"
t.string "elasticsearch_aws_access_key" t.string "elasticsearch_aws_access_key"
t.string "elasticsearch_aws_secret_access_key" t.string "elasticsearch_aws_secret_access_key"
t.integer "unique_ips_limit_per_user"
t.integer "unique_ips_limit_time_window"
t.boolean "unique_ips_limit_enabled", default: false, null: false
t.integer "geo_status_timeout", default: 10 t.integer "geo_status_timeout", default: 10
end end
...@@ -1587,13 +1584,10 @@ ActiveRecord::Schema.define(version: 20170308015651) do ...@@ -1587,13 +1584,10 @@ ActiveRecord::Schema.define(version: 20170308015651) do
add_foreign_key "merge_request_metrics", "merge_requests", on_delete: :cascade add_foreign_key "merge_request_metrics", "merge_requests", on_delete: :cascade
add_foreign_key "merge_requests_closing_issues", "issues", on_delete: :cascade add_foreign_key "merge_requests_closing_issues", "issues", on_delete: :cascade
add_foreign_key "merge_requests_closing_issues", "merge_requests", on_delete: :cascade add_foreign_key "merge_requests_closing_issues", "merge_requests", on_delete: :cascade
<<<<<<< HEAD
add_foreign_key "namespace_statistics", "namespaces", on_delete: :cascade add_foreign_key "namespace_statistics", "namespaces", on_delete: :cascade
add_foreign_key "oauth_openid_requests", "oauth_access_grants", column: "access_grant_id", name: "fk_oauth_openid_requests_oauth_access_grants_access_grant_id"
add_foreign_key "path_locks", "projects" add_foreign_key "path_locks", "projects"
add_foreign_key "path_locks", "users" add_foreign_key "path_locks", "users"
=======
add_foreign_key "oauth_openid_requests", "oauth_access_grants", column: "access_grant_id", name: "fk_oauth_openid_requests_oauth_access_grants_access_grant_id"
>>>>>>> ce/master
add_foreign_key "personal_access_tokens", "users" add_foreign_key "personal_access_tokens", "users"
add_foreign_key "project_authorizations", "projects", on_delete: :cascade add_foreign_key "project_authorizations", "projects", on_delete: :cascade
add_foreign_key "project_authorizations", "users", on_delete: :cascade add_foreign_key "project_authorizations", "users", on_delete: :cascade
......
...@@ -394,22 +394,6 @@ closed. ...@@ -394,22 +394,6 @@ closed.
PUT /projects/:id/issues/:issue_iid PUT /projects/:id/issues/:issue_iid
``` ```
<<<<<<< HEAD
| Attribute | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | integer | yes | The ID of a project |
| `issue_id` | integer | yes | The ID of a project's issue |
| `title` | string | no | The title of an issue |
| `description` | string | no | The description of an issue |
| `confidential` | boolean | no | Updates an issue to be confidential |
| `assignee_id` | integer | no | The ID of a user to assign the issue to |
| `milestone_id` | integer | no | The ID of a milestone to assign the issue to |
| `labels` | string | no | Comma-separated label names for an issue |
| `state_event` | string | no | The state event of an issue. Set `close` to close the issue and `reopen` to reopen it |
| `updated_at` | string | no | Date time string, ISO 8601 formatted, e.g. `2016-03-11T03:45:40Z` (requires admin or project owner rights) |
| `due_date` | string | no | Date time string in the format YEAR-MONTH-DAY, e.g. `2016-03-11` |
| `weight` | integer | no | The weight of the issue in range 0 to 9 |
=======
| Attribute | Type | Required | Description | | Attribute | Type | Required | Description |
| --------- | ---- | -------- | ----------- | | --------- | ---- | -------- | ----------- |
| `id` | integer | yes | The ID of a project | | `id` | integer | yes | The ID of a project |
...@@ -423,7 +407,7 @@ PUT /projects/:id/issues/:issue_iid ...@@ -423,7 +407,7 @@ PUT /projects/:id/issues/:issue_iid
| `state_event` | string | no | The state event of an issue. Set `close` to close the issue and `reopen` to reopen it | | `state_event` | string | no | The state event of an issue. Set `close` to close the issue and `reopen` to reopen it |
| `updated_at` | string | no | Date time string, ISO 8601 formatted, e.g. `2016-03-11T03:45:40Z` (requires admin or project owner rights) | | `updated_at` | string | no | Date time string, ISO 8601 formatted, e.g. `2016-03-11T03:45:40Z` (requires admin or project owner rights) |
| `due_date` | string | no | Date time string in the format YEAR-MONTH-DAY, e.g. `2016-03-11` | | `due_date` | string | no | Date time string in the format YEAR-MONTH-DAY, e.g. `2016-03-11` |
>>>>>>> ce/master | `weight` | integer | no | The weight of the issue in range 0 to 9 |
```bash ```bash
curl --request PUT --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" https://gitlab.example.com/api/v4/projects/4/issues/85?state_event=close curl --request PUT --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" https://gitlab.example.com/api/v4/projects/4/issues/85?state_event=close
......
...@@ -275,7 +275,6 @@ Creates a new merge request. ...@@ -275,7 +275,6 @@ Creates a new merge request.
POST /projects/:id/merge_requests POST /projects/:id/merge_requests
``` ```
<<<<<<< HEAD
| Attribute | Type | Required | Description | | Attribute | Type | Required | Description |
| --------- | ---- | -------- | ----------- | | --------- | ---- | -------- | ----------- |
| `id` | string | yes | The ID of a project | | `id` | string | yes | The ID of a project |
...@@ -299,20 +298,6 @@ order for it to take effect: ...@@ -299,20 +298,6 @@ order for it to take effect:
value of zero disables approvals for that project.) value of zero disables approvals for that project.)
2. The provided value of `approvals_before_merge` must be greater than the 2. The provided value of `approvals_before_merge` must be greater than the
target project's `approvals_before_merge`. target project's `approvals_before_merge`.
=======
| Attribute | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | yes | The ID of a project |
| `source_branch` | string | yes | The source branch |
| `target_branch` | string | yes | The target branch |
| `title` | string | yes | Title of MR |
| `assignee_id` | integer | no | Assignee user ID |
| `description` | string | no | Description of MR |
| `target_project_id` | integer | no | The target project (numeric id) |
| `labels` | string | no | Labels for MR as a comma-separated list |
| `milestone_id` | integer | no | The ID of a milestone |
| `remove_source_branch` | boolean | no | Flag indicating if a merge request should remove the source branch when merging |
>>>>>>> ce/master
```json ```json
{ {
...@@ -379,11 +364,10 @@ Updates an existing merge request. You can change the target branch, title, or e ...@@ -379,11 +364,10 @@ Updates an existing merge request. You can change the target branch, title, or e
PUT /projects/:id/merge_requests/:merge_request_iid PUT /projects/:id/merge_requests/:merge_request_iid
``` ```
<<<<<<< HEAD
| Attribute | Type | Required | Description | | Attribute | Type | Required | Description |
| --------- | ---- | -------- | ----------- | | --------- | ---- | -------- | ----------- |
| `id` | string | yes | The ID of a project | | `id` | string | yes | The ID of a project |
| `merge_request_id` | integer | yes | The ID of a merge request | | `merge_request_iid` | integer | yes | The ID of a merge request |
| `target_branch` | string | no | The target branch | | `target_branch` | string | no | The target branch |
| `title` | string | no | Title of MR | | `title` | string | no | Title of MR |
| `assignee_id` | integer | no | Assignee user ID | | `assignee_id` | integer | no | Assignee user ID |
...@@ -395,20 +379,6 @@ PUT /projects/:id/merge_requests/:merge_request_iid ...@@ -395,20 +379,6 @@ PUT /projects/:id/merge_requests/:merge_request_iid
| `squash` | boolean| no | Squash commits into a single commit when merging | | `squash` | boolean| no | Squash commits into a single commit when merging |
Must include at least one non-required attribute from above. Must include at least one non-required attribute from above.
=======
| Attribute | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `id` | string | yes | The ID of a project |
| `merge_request_iid` | integer | yes | The ID of a merge request |
| `target_branch` | string | no | The target branch |
| `title` | string | no | Title of MR |
| `assignee_id` | integer | no | Assignee user ID |
| `description` | string | no | Description of MR |
| `state_event` | string | no | New state (close/reopen) |
| `labels` | string | no | Labels for MR as a comma-separated list |
| `milestone_id` | integer | no | The ID of a milestone |
| `remove_source_branch` | boolean | no | Flag indicating if a merge request should remove the source branch when merging |
>>>>>>> ce/master
Must include at least one non-required attribute from above. Must include at least one non-required attribute from above.
......
...@@ -830,7 +830,6 @@ Example response: ...@@ -830,7 +830,6 @@ Example response:
] ]
``` ```
<<<<<<< HEAD
### Get user activities (admin only) ### Get user activities (admin only)
>**Note:** This API endpoint is only available on 8.15 EE and above. >**Note:** This API endpoint is only available on 8.15 EE and above.
...@@ -855,7 +854,37 @@ This function takes pagination parameters `page` and `per_page` to restrict the ...@@ -855,7 +854,37 @@ This function takes pagination parameters `page` and `per_page` to restrict the
``` ```
GET /user/activities GET /user/activities
======= ```
Parameters:
| Attribute | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `from` | string | no | Date string in the format YEAR-MONTH-DAY, e.g. `2016-03-11`. Defaults to 6 months ago. |
```bash
curl --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" https://gitlab.example.com/api/v4/user/activities
```
Example response:
```json
[
{
"username": "user1",
"last_activity_at": "2015-12-14 01:00:00"
},
{
"username": "user2",
"last_activity_at": "2015-12-15 01:00:00"
},
{
"username": "user3",
"last_activity_at": "2015-12-16 01:00:00"
}
]
```
## Retrieve user impersonation tokens ## Retrieve user impersonation tokens
It retrieves every impersonation token of the user. Note that only administrators can do this. It retrieves every impersonation token of the user. Note that only administrators can do this.
...@@ -912,39 +941,10 @@ settings page. ...@@ -912,39 +941,10 @@ settings page.
``` ```
POST /users/:user_id/impersonation_tokens POST /users/:user_id/impersonation_tokens
>>>>>>> ce/master
``` ```
Parameters:
| Attribute | Type | Required | Description | | Attribute | Type | Required | Description |
| --------- | ---- | -------- | ----------- | | --------- | ---- | -------- | ----------- |
<<<<<<< HEAD
| `from` | string | no | Date string in the format YEAR-MONTH-DAY, e.g. `2016-03-11`. Defaults to 6 months ago. |
```bash
curl --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" https://gitlab.example.com/api/v4/user/activities
```
Example response:
```json
[
{
"username": "user1",
"last_activity_at": "2015-12-14 01:00:00"
},
{
"username": "user2",
"last_activity_at": "2015-12-15 01:00:00"
},
{
"username": "user3",
"last_activity_at": "2015-12-16 01:00:00"
}
]
```
=======
| `user_id` | integer | yes | The ID of the user | | `user_id` | integer | yes | The ID of the user |
| `name` | string | yes | The name of the impersonation token | | `name` | string | yes | The name of the impersonation token |
| `expires_at` | date | no | The expiration date of the impersonation token | | `expires_at` | date | no | The expiration date of the impersonation token |
...@@ -978,4 +978,3 @@ Parameters: ...@@ -978,4 +978,3 @@ Parameters:
| --------- | ---- | -------- | ----------- | | --------- | ---- | -------- | ----------- |
| `user_id` | integer | yes | The ID of the user | | `user_id` | integer | yes | The ID of the user |
| `impersonation_token_id` | integer | yes | The ID of the impersonation token | | `impersonation_token_id` | integer | yes | The ID of the impersonation token |
>>>>>>> ce/master
...@@ -76,17 +76,14 @@ Below are the changes made between V3 and V4. ...@@ -76,17 +76,14 @@ Below are the changes made between V3 and V4.
- API uses issue `IID`s (internal ID, as in the web UI) rather than `ID`s. This affects the issues, award emoji, todos, and time tracking APIs. [!9530](https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/9530) - API uses issue `IID`s (internal ID, as in the web UI) rather than `ID`s. This affects the issues, award emoji, todos, and time tracking APIs. [!9530](https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/9530)
- Change initial page from `0` to `1` on `GET projects/:id/repository/commits` (like on the rest of the API) [!9679] (https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/9679) - Change initial page from `0` to `1` on `GET projects/:id/repository/commits` (like on the rest of the API) [!9679] (https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/9679)
- Return correct `Link` header data for `GET projects/:id/repository/commits` [!9679] (https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/9679) - Return correct `Link` header data for `GET projects/:id/repository/commits` [!9679] (https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/9679)
<<<<<<< HEAD - Update endpoints for repository files [!9637](https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/9637)
- Moved `/projects/:id/repository/files?file_path=:file_path` to `/projects/:id/repository/files/:file_path` (`:file_path` should be URL-encoded)
- `/projects/:id/repository/blobs/:sha` now returns JSON attributes for the blob identified by `:sha`, instead of finding the commit identified by `:sha` and returning the raw content of the blob in that commit identified by the required `?filepath=:filepath`
- Moved `/projects/:id/repository/commits/:sha/blob?file_path=:file_path` and `/projects/:id/repository/blobs/:sha?file_path=:file_path` to `/projects/:id/repository/files/:file_path/raw?ref=:sha`
- `/projects/:id/repository/tree` parameter `ref_name` has been renamed to `ref` for consistency
#### EE-specific #### EE-specific
- Remove the ProjectGitHook API. Use the ProjectPushRule API instead [!1301](https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/1301) - Remove the ProjectGitHook API. Use the ProjectPushRule API instead [!1301](https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/1301)
- Removed `repository_storage` from `PUT /application/settings` and `GET /application/settings` (use `repository_storages` instead) [!1307](https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/1307) - Removed `repository_storage` from `PUT /application/settings` and `GET /application/settings` (use `repository_storages` instead) [!1307](https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/1307)
- Removed `elasticsearch_host` and `elasticsearch_port` from `PUT /application/settings` (use `elasticsearch_url` instead) [!1305](https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/1305) - Removed `elasticsearch_host` and `elasticsearch_port` from `PUT /application/settings` (use `elasticsearch_url` instead) [!1305](https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/1305)
=======
- Update endpoints for repository files [!9637](https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/9637)
- Moved `/projects/:id/repository/files?file_path=:file_path` to `/projects/:id/repository/files/:file_path` (`:file_path` should be URL-encoded)
- `/projects/:id/repository/blobs/:sha` now returns JSON attributes for the blob identified by `:sha`, instead of finding the commit identified by `:sha` and returning the raw content of the blob in that commit identified by the required `?filepath=:filepath`
- Moved `/projects/:id/repository/commits/:sha/blob?file_path=:file_path` and `/projects/:id/repository/blobs/:sha?file_path=:file_path` to `/projects/:id/repository/files/:file_path/raw?ref=:sha`
- `/projects/:id/repository/tree` parameter `ref_name` has been renamed to `ref` for consistency
>>>>>>> ce/master
...@@ -59,13 +59,8 @@ Feature: Project Active Tab ...@@ -59,13 +59,8 @@ Feature: Project Active Tab
Scenario: On Project Settings/Repository Scenario: On Project Settings/Repository
Given I visit my project's settings page Given I visit my project's settings page
And I click the "Repository" tab And I click the "Repository" tab
<<<<<<< HEAD
Then the active sub nav should be Repository
And no other sub navs should be active
=======
Then the active sub tab should be Repository Then the active sub tab should be Repository
And no other sub tabs should be active And no other sub tabs should be active
>>>>>>> ce/master
And the active main tab should be Settings And the active main tab should be Settings
Scenario: On Project Settings/Pages Scenario: On Project Settings/Pages
......
...@@ -34,11 +34,7 @@ class Spinach::Features::ProjectActiveTab < Spinach::FeatureSteps ...@@ -34,11 +34,7 @@ class Spinach::Features::ProjectActiveTab < Spinach::FeatureSteps
end end
step 'I click the "Repository" tab' do step 'I click the "Repository" tab' do
<<<<<<< HEAD
page.within '.layout-nav .controls' do
=======
page.within '.sub-nav' do page.within '.sub-nav' do
>>>>>>> ce/master
click_link('Repository') click_link('Repository')
end end
end end
...@@ -63,13 +59,8 @@ class Spinach::Features::ProjectActiveTab < Spinach::FeatureSteps ...@@ -63,13 +59,8 @@ class Spinach::Features::ProjectActiveTab < Spinach::FeatureSteps
ensure_active_sub_tab('Integrations') ensure_active_sub_tab('Integrations')
end end
<<<<<<< HEAD
step 'the active sub nav should be Repository' do
ensure_active_sub_nav('Repository')
=======
step 'the active sub tab should be Repository' do step 'the active sub tab should be Repository' do
ensure_active_sub_tab('Repository') ensure_active_sub_tab('Repository')
>>>>>>> ce/master
end end
step 'the active sub tab should be Pages' do step 'the active sub tab should be Pages' do
......
...@@ -774,7 +774,6 @@ module API ...@@ -774,7 +774,6 @@ module API
expose :active?, as: :active expose :active?, as: :active
end end
<<<<<<< HEAD
class GeoNodeStatus < Grape::Entity class GeoNodeStatus < Grape::Entity
expose :health expose :health
expose :repositories_count expose :repositories_count
...@@ -782,7 +781,8 @@ module API ...@@ -782,7 +781,8 @@ module API
expose :repositories_failed_count expose :repositories_failed_count
expose :lfs_objects_total expose :lfs_objects_total
expose :lfs_objects_synced expose :lfs_objects_synced
======= end
class PersonalAccessToken < Grape::Entity class PersonalAccessToken < Grape::Entity
expose :id, :name, :revoked, :created_at, :scopes expose :id, :name, :revoked, :created_at, :scopes
expose :active?, as: :active expose :active?, as: :active
...@@ -875,7 +875,6 @@ module API ...@@ -875,7 +875,6 @@ module API
expose :credentials, using: Credentials expose :credentials, using: Credentials
expose :depends_on_builds, as: :dependencies, using: Dependency expose :depends_on_builds, as: :dependencies, using: Dependency
end end
>>>>>>> ce/master
end end
end end
end end
...@@ -223,10 +223,6 @@ module API ...@@ -223,10 +223,6 @@ module API
desc 'Cancel merge if "Merge When Pipeline Succeeds" is enabled' do desc 'Cancel merge if "Merge When Pipeline Succeeds" is enabled' do
success Entities::MergeRequest success Entities::MergeRequest
end end
<<<<<<< HEAD
=======
>>>>>>> ce/master
post ':id/merge_requests/:merge_request_iid/cancel_merge_when_pipeline_succeeds' do post ':id/merge_requests/:merge_request_iid/cancel_merge_when_pipeline_succeeds' do
merge_request = find_project_merge_request(params[:merge_request_iid]) merge_request = find_project_merge_request(params[:merge_request_iid])
...@@ -280,7 +276,6 @@ module API ...@@ -280,7 +276,6 @@ module API
end end
get ':id/merge_requests/:merge_request_iid/closes_issues' do get ':id/merge_requests/:merge_request_iid/closes_issues' do
merge_request = find_merge_request_with_access(params[:merge_request_iid]) merge_request = find_merge_request_with_access(params[:merge_request_iid])
<<<<<<< HEAD
issues = ::Kaminari.paginate_array(merge_request.closes_issues(current_user)) issues = ::Kaminari.paginate_array(merge_request.closes_issues(current_user))
present paginate(issues), with: issue_entity(user_project), current_user: current_user present paginate(issues), with: issue_entity(user_project), current_user: current_user
end end
...@@ -340,8 +335,6 @@ module API ...@@ -340,8 +335,6 @@ module API
end end
get ':id/merge_requests/:merge_request_id/closes_issues' do get ':id/merge_requests/:merge_request_id/closes_issues' do
merge_request = find_merge_request_with_access(params[:merge_request_id]) merge_request = find_merge_request_with_access(params[:merge_request_id])
=======
>>>>>>> ce/master
issues = ::Kaminari.paginate_array(merge_request.closes_issues(current_user)) issues = ::Kaminari.paginate_array(merge_request.closes_issues(current_user))
present paginate(issues), with: issue_entity(user_project), current_user: current_user present paginate(issues), with: issue_entity(user_project), current_user: current_user
end end
......
...@@ -14,13 +14,10 @@ namespace :gitlab do ...@@ -14,13 +14,10 @@ namespace :gitlab do
rake_version = run_and_match(%w(rake --version), /[\d\.]+/).try(:to_s) rake_version = run_and_match(%w(rake --version), /[\d\.]+/).try(:to_s)
# check redis version # check redis version
redis_version = run_and_match(%w(redis-cli --version), /redis-cli (\d+\.\d+\.\d+)/).to_a redis_version = run_and_match(%w(redis-cli --version), /redis-cli (\d+\.\d+\.\d+)/).to_a
<<<<<<< HEAD
# check for system defined proxies # check for system defined proxies
proxies = Gitlab::Proxy.detect_proxy.map{|k, v| "#{k}: #{v}"}.join("\n\t\t") proxies = Gitlab::Proxy.detect_proxy.map{|k, v| "#{k}: #{v}"}.join("\n\t\t")
=======
# check Git version # check Git version
git_version = run_and_match([Gitlab.config.git.bin_path, '--version'], /git version ([\d\.]+)/).to_a git_version = run_and_match([Gitlab.config.git.bin_path, '--version'], /git version ([\d\.]+)/).to_a
>>>>>>> ce/master
puts "" puts ""
puts "System information".color(:yellow) puts "System information".color(:yellow)
......
...@@ -187,7 +187,6 @@ describe Projects::EnvironmentsController do ...@@ -187,7 +187,6 @@ describe Projects::EnvironmentsController do
end end
end end
<<<<<<< HEAD
describe 'GET #status' do describe 'GET #status' do
context 'without deployment service' do context 'without deployment service' do
it 'returns 404' do it 'returns 404' do
...@@ -226,8 +225,6 @@ describe Projects::EnvironmentsController do ...@@ -226,8 +225,6 @@ describe Projects::EnvironmentsController do
end end
end end
=======
>>>>>>> ce/master
describe 'GET #metrics' do describe 'GET #metrics' do
before do before do
allow(controller).to receive(:environment).and_return(environment) allow(controller).to receive(:environment).and_return(environment)
......
require 'rails_helper' require 'rails_helper'
<<<<<<< HEAD
describe 'Dropdown assignee', js: true, feature: true do
=======
describe 'Dropdown assignee', :feature, :js do describe 'Dropdown assignee', :feature, :js do
>>>>>>> ce/master
include FilteredSearchHelpers include FilteredSearchHelpers
include WaitForAjax include WaitForAjax
......
require 'rails_helper' require 'rails_helper'
<<<<<<< HEAD
describe 'Dropdown milestone', js: true, feature: true do
include FilteredSearchHelpers
include WaitForAjax
=======
describe 'Dropdown milestone', :feature, :js do describe 'Dropdown milestone', :feature, :js do
include FilteredSearchHelpers include FilteredSearchHelpers
>>>>>>> ce/master
let!(:project) { create(:empty_project) } let!(:project) { create(:empty_project) }
let!(:user) { create(:user) } let!(:user) { create(:user) }
......
...@@ -242,8 +242,6 @@ describe 'Visual tokens', js: true, feature: true do ...@@ -242,8 +242,6 @@ describe 'Visual tokens', js: true, feature: true do
end end
end end
<<<<<<< HEAD
=======
describe 'editing a search term while editing another filter token' do describe 'editing a search term while editing another filter token' do
before do before do
input_filtered_search('author assignee:', submit: false) input_filtered_search('author assignee:', submit: false)
...@@ -261,7 +259,6 @@ describe 'Visual tokens', js: true, feature: true do ...@@ -261,7 +259,6 @@ describe 'Visual tokens', js: true, feature: true do
end end
end end
>>>>>>> ce/master
describe 'add new token after editing existing token' do describe 'add new token after editing existing token' do
before do before do
input_filtered_search('author:@root assignee:none', submit: false) input_filtered_search('author:@root assignee:none', submit: false)
...@@ -339,8 +336,6 @@ describe 'Visual tokens', js: true, feature: true do ...@@ -339,8 +336,6 @@ describe 'Visual tokens', js: true, feature: true do
expect(token.find('.name').text).to eq('Author') expect(token.find('.name').text).to eq('Author')
end end
end end
<<<<<<< HEAD
=======
describe 'search using incomplete visual tokens' do describe 'search using incomplete visual tokens' do
before do before do
...@@ -354,5 +349,4 @@ describe 'Visual tokens', js: true, feature: true do ...@@ -354,5 +349,4 @@ describe 'Visual tokens', js: true, feature: true do
]) ])
end end
end end
>>>>>>> ce/master
end end
...@@ -120,10 +120,7 @@ describe "Internal Project Access", feature: true do ...@@ -120,10 +120,7 @@ describe "Internal Project Access", feature: true do
subject { namespace_project_settings_repository_path(project.namespace, project) } subject { namespace_project_settings_repository_path(project.namespace, project) }
it { is_expected.to be_allowed_for(:admin) } it { is_expected.to be_allowed_for(:admin) }
<<<<<<< HEAD
it { is_expected.to be_denied_for(:auditor) } it { is_expected.to be_denied_for(:auditor) }
=======
>>>>>>> ce/master
it { is_expected.to be_allowed_for(:owner).of(project) } it { is_expected.to be_allowed_for(:owner).of(project) }
it { is_expected.to be_allowed_for(:master).of(project) } it { is_expected.to be_allowed_for(:master).of(project) }
it { is_expected.to be_denied_for(:developer).of(project) } it { is_expected.to be_denied_for(:developer).of(project) }
......
...@@ -126,7 +126,6 @@ describe "Private Project Access", feature: true do ...@@ -126,7 +126,6 @@ describe "Private Project Access", feature: true do
it { is_expected.to be_denied_for(:reporter).of(project) } it { is_expected.to be_denied_for(:reporter).of(project) }
it { is_expected.to be_denied_for(:guest).of(project) } it { is_expected.to be_denied_for(:guest).of(project) }
it { is_expected.to be_denied_for(:user) } it { is_expected.to be_denied_for(:user) }
<<<<<<< HEAD
it { is_expected.to be_denied_for(:visitor) } it { is_expected.to be_denied_for(:visitor) }
it { is_expected.to be_denied_for(:external) } it { is_expected.to be_denied_for(:external) }
end end
...@@ -141,8 +140,6 @@ describe "Private Project Access", feature: true do ...@@ -141,8 +140,6 @@ describe "Private Project Access", feature: true do
it { is_expected.to be_denied_for(:reporter).of(project) } it { is_expected.to be_denied_for(:reporter).of(project) }
it { is_expected.to be_denied_for(:guest).of(project) } it { is_expected.to be_denied_for(:guest).of(project) }
it { is_expected.to be_denied_for(:user) } it { is_expected.to be_denied_for(:user) }
=======
>>>>>>> ce/master
it { is_expected.to be_denied_for(:external) } it { is_expected.to be_denied_for(:external) }
it { is_expected.to be_denied_for(:visitor) } it { is_expected.to be_denied_for(:visitor) }
end end
......
...@@ -117,11 +117,7 @@ describe "Public Project Access", feature: true do ...@@ -117,11 +117,7 @@ describe "Public Project Access", feature: true do
end end
describe "GET /:project_path/settings/repository" do describe "GET /:project_path/settings/repository" do
<<<<<<< HEAD
subject { namespace_project_settings_ci_cd_path(project.namespace, project) }
=======
subject { namespace_project_settings_repository_path(project.namespace, project) } subject { namespace_project_settings_repository_path(project.namespace, project) }
>>>>>>> ce/master
it { is_expected.to be_allowed_for(:admin) } it { is_expected.to be_allowed_for(:admin) }
it { is_expected.to be_allowed_for(:owner).of(project) } it { is_expected.to be_allowed_for(:owner).of(project) }
......
...@@ -286,11 +286,7 @@ describe Environment, models: true do ...@@ -286,11 +286,7 @@ describe Environment, models: true do
context 'when the environment has terminals' do context 'when the environment has terminals' do
before do before do
<<<<<<< HEAD
allow(environment).to receive(:deployment_service_ready?).and_return(true) allow(environment).to receive(:deployment_service_ready?).and_return(true)
=======
allow(environment).to receive(:has_terminals?).and_return(true)
>>>>>>> ce/master
end end
it 'returns the terminals from the deployment service' do it 'returns the terminals from the deployment service' do
...@@ -304,18 +300,13 @@ describe Environment, models: true do ...@@ -304,18 +300,13 @@ describe Environment, models: true do
context 'when the environment does not have terminals' do context 'when the environment does not have terminals' do
before do before do
<<<<<<< HEAD
allow(environment).to receive(:deployment_service_ready?).and_return(false) allow(environment).to receive(:deployment_service_ready?).and_return(false)
=======
allow(environment).to receive(:has_terminals?).and_return(false)
>>>>>>> ce/master
end end
it { is_expected.to be_nil } it { is_expected.to be_nil }
end end
end end
<<<<<<< HEAD
describe '#rollout_status' do describe '#rollout_status' do
let(:project) { create(:kubernetes_project) } let(:project) { create(:kubernetes_project) }
subject { environment.rollout_status } subject { environment.rollout_status }
...@@ -335,7 +326,9 @@ describe Environment, models: true do ...@@ -335,7 +326,9 @@ describe Environment, models: true do
context 'when the environment does not have rollout status' do context 'when the environment does not have rollout status' do
before { allow(environment).to receive(:deployment_service_ready?).and_return(false) } before { allow(environment).to receive(:deployment_service_ready?).and_return(false) }
it { is_expected.to eq(nil) } it { is_expected.to eq(nil) }
======= end
end
describe '#has_metrics?' do describe '#has_metrics?' do
subject { environment.has_metrics? } subject { environment.has_metrics? }
...@@ -393,7 +386,6 @@ describe Environment, models: true do ...@@ -393,7 +386,6 @@ describe Environment, models: true do
end end
it { is_expected.to be_nil } it { is_expected.to be_nil }
>>>>>>> ce/master
end end
end end
......
...@@ -1242,7 +1242,6 @@ describe API::Issues, api: true do ...@@ -1242,7 +1242,6 @@ describe API::Issues, api: true do
end end
end end
<<<<<<< HEAD
describe 'PUT /projects/:id/issues/:issue_id to update weight' do describe 'PUT /projects/:id/issues/:issue_id to update weight' do
it 'updates an issue with no weight' do it 'updates an issue with no weight' do
put api("/projects/#{project.id}/issues/#{issue.iid}", user), weight: 5 put api("/projects/#{project.id}/issues/#{issue.iid}", user), weight: 5
...@@ -1275,8 +1274,6 @@ describe API::Issues, api: true do ...@@ -1275,8 +1274,6 @@ describe API::Issues, api: true do
end end
end end
=======
>>>>>>> ce/master
describe "DELETE /projects/:id/issues/:issue_iid" do describe "DELETE /projects/:id/issues/:issue_iid" do
it "rejects a non member from deleting an issue" do it "rejects a non member from deleting an issue" do
delete api("/projects/#{project.id}/issues/#{issue.iid}", non_member) delete api("/projects/#{project.id}/issues/#{issue.iid}", non_member)
......
...@@ -575,7 +575,6 @@ describe API::MergeRequests, api: true do ...@@ -575,7 +575,6 @@ describe API::MergeRequests, api: true do
it "succeeds if the SHA parameter matches" do it "succeeds if the SHA parameter matches" do
put api("/projects/#{project.id}/merge_requests/#{merge_request.iid}/merge", user), sha: merge_request.diff_head_sha put api("/projects/#{project.id}/merge_requests/#{merge_request.iid}/merge", user), sha: merge_request.diff_head_sha
<<<<<<< HEAD
expect(response).to have_http_status(200) expect(response).to have_http_status(200)
end end
...@@ -584,8 +583,6 @@ describe API::MergeRequests, api: true do ...@@ -584,8 +583,6 @@ describe API::MergeRequests, api: true do
expect do expect do
put api("/projects/#{project.id}/merge_requests/#{merge_request.iid}/merge", user), squash: true put api("/projects/#{project.id}/merge_requests/#{merge_request.iid}/merge", user), squash: true
end.to change { merge_request.reload.squash } end.to change { merge_request.reload.squash }
=======
>>>>>>> ce/master
expect(response).to have_http_status(200) expect(response).to have_http_status(200)
end end
......
...@@ -1170,7 +1170,6 @@ describe API::Users, api: true do ...@@ -1170,7 +1170,6 @@ describe API::Users, api: true do
end end
end end
<<<<<<< HEAD
context "user activities", :redis do context "user activities", :redis do
context 'last activity as normal user' do context 'last activity as normal user' do
it 'has no permission' do it 'has no permission' do
...@@ -1239,7 +1238,9 @@ describe API::Users, api: true do ...@@ -1239,7 +1238,9 @@ describe API::Users, api: true do
expect(json_response.map { |activity| activity['username'] }).to eq(%w[3 4]) expect(json_response.map { |activity| activity['username'] }).to eq(%w[3 4])
end end
======= end
end
describe 'GET /users/:user_id/impersonation_tokens' do describe 'GET /users/:user_id/impersonation_tokens' do
let!(:active_personal_access_token) { create(:personal_access_token, user: user) } let!(:active_personal_access_token) { create(:personal_access_token, user: user) }
let!(:revoked_personal_access_token) { create(:personal_access_token, :revoked, user: user) } let!(:revoked_personal_access_token) { create(:personal_access_token, :revoked, user: user) }
...@@ -1420,7 +1421,6 @@ describe API::Users, api: true do ...@@ -1420,7 +1421,6 @@ describe API::Users, api: true do
expect(response).to have_http_status(204) expect(response).to have_http_status(204)
expect(impersonation_token.revoked).to be_falsey expect(impersonation_token.revoked).to be_falsey
expect(impersonation_token.reload.revoked).to be_truthy expect(impersonation_token.reload.revoked).to be_truthy
>>>>>>> ce/master
end end
end end
end end
...@@ -45,10 +45,7 @@ describe API::V3::MergeRequestDiffs, 'MergeRequestDiffs', api: true do ...@@ -45,10 +45,7 @@ describe API::V3::MergeRequestDiffs, 'MergeRequestDiffs', api: true do
it 'returns a 404 when merge_request_id not found' do it 'returns a 404 when merge_request_id not found' do
get v3_api("/projects/#{project.id}/merge_requests/#{merge_request.id}/versions/999", user) get v3_api("/projects/#{project.id}/merge_requests/#{merge_request.id}/versions/999", user)
<<<<<<< HEAD
=======
>>>>>>> ce/master
expect(response).to have_http_status(404) expect(response).to have_http_status(404)
end end
end end
......
...@@ -75,12 +75,9 @@ describe MergeRequests::RefreshService, services: true do ...@@ -75,12 +75,9 @@ describe MergeRequests::RefreshService, services: true do
expect(@fork_merge_request.notes).to be_empty expect(@fork_merge_request.notes).to be_empty
expect(@build_failed_todo).to be_done expect(@build_failed_todo).to be_done
expect(@fork_build_failed_todo).to be_done expect(@fork_build_failed_todo).to be_done
<<<<<<< HEAD
# EE-only # EE-only
expect(@merge_request.approvals).to be_empty expect(@merge_request.approvals).to be_empty
expect(@fork_merge_request.approvals).not_to be_empty expect(@fork_merge_request.approvals).not_to be_empty
=======
>>>>>>> ce/master
end end
end end
...@@ -97,12 +94,9 @@ describe MergeRequests::RefreshService, services: true do ...@@ -97,12 +94,9 @@ describe MergeRequests::RefreshService, services: true do
expect(@fork_merge_request.notes.last.note).to include('merged') expect(@fork_merge_request.notes.last.note).to include('merged')
expect(@build_failed_todo).to be_done expect(@build_failed_todo).to be_done
expect(@fork_build_failed_todo).to be_done expect(@fork_build_failed_todo).to be_done
<<<<<<< HEAD
# EE-only # EE-only
expect(@merge_request.approvals).not_to be_empty expect(@merge_request.approvals).not_to be_empty
expect(@fork_merge_request.approvals).not_to be_empty expect(@fork_merge_request.approvals).not_to be_empty
=======
>>>>>>> ce/master
end end
end end
...@@ -148,12 +142,9 @@ describe MergeRequests::RefreshService, services: true do ...@@ -148,12 +142,9 @@ describe MergeRequests::RefreshService, services: true do
expect(@fork_merge_request).to be_open expect(@fork_merge_request).to be_open
expect(@build_failed_todo).to be_pending expect(@build_failed_todo).to be_pending
expect(@fork_build_failed_todo).to be_pending expect(@fork_build_failed_todo).to be_pending
<<<<<<< HEAD
# EE-only # EE-only
expect(@merge_request.approvals).not_to be_empty expect(@merge_request.approvals).not_to be_empty
expect(@fork_merge_request.approvals).to be_empty expect(@fork_merge_request.approvals).to be_empty
=======
>>>>>>> ce/master
end end
end end
...@@ -176,12 +167,9 @@ describe MergeRequests::RefreshService, services: true do ...@@ -176,12 +167,9 @@ describe MergeRequests::RefreshService, services: true do
expect(@fork_merge_request).to be_closed expect(@fork_merge_request).to be_closed
expect(@build_failed_todo).to be_pending expect(@build_failed_todo).to be_pending
expect(@fork_build_failed_todo).to be_pending expect(@fork_build_failed_todo).to be_pending
<<<<<<< HEAD
# EE-only # EE-only
expect(@merge_request.approvals).not_to be_empty expect(@merge_request.approvals).not_to be_empty
expect(@fork_merge_request.approvals).to be_empty expect(@fork_merge_request.approvals).to be_empty
=======
>>>>>>> ce/master
end end
end end
end end
...@@ -200,12 +188,9 @@ describe MergeRequests::RefreshService, services: true do ...@@ -200,12 +188,9 @@ describe MergeRequests::RefreshService, services: true do
expect(@fork_merge_request).to be_open expect(@fork_merge_request).to be_open
expect(@build_failed_todo).to be_pending expect(@build_failed_todo).to be_pending
expect(@fork_build_failed_todo).to be_pending expect(@fork_build_failed_todo).to be_pending
<<<<<<< HEAD
# EE-only # EE-only
expect(@merge_request.approvals).not_to be_empty expect(@merge_request.approvals).not_to be_empty
expect(@fork_merge_request.approvals).not_to be_empty expect(@fork_merge_request.approvals).not_to be_empty
=======
>>>>>>> ce/master
end end
end end
...@@ -232,7 +217,6 @@ describe MergeRequests::RefreshService, services: true do ...@@ -232,7 +217,6 @@ describe MergeRequests::RefreshService, services: true do
expect(@fork_merge_request.notes).to be_empty expect(@fork_merge_request.notes).to be_empty
expect(@build_failed_todo).to be_done expect(@build_failed_todo).to be_done
expect(@fork_build_failed_todo).to be_done expect(@fork_build_failed_todo).to be_done
<<<<<<< HEAD
# EE-only # EE-only
expect(@merge_request.approvals).not_to be_empty expect(@merge_request.approvals).not_to be_empty
expect(@fork_merge_request.approvals).not_to be_empty expect(@fork_merge_request.approvals).not_to be_empty
...@@ -309,8 +293,6 @@ describe MergeRequests::RefreshService, services: true do ...@@ -309,8 +293,6 @@ describe MergeRequests::RefreshService, services: true do
expect(@merge_request.approvals).to be_empty expect(@merge_request.approvals).to be_empty
end end
end end
=======
>>>>>>> ce/master
end end
end end
......
...@@ -4,11 +4,6 @@ module FilteredSearchHelpers ...@@ -4,11 +4,6 @@ module FilteredSearchHelpers
end end
# Enables input to be set (similar to copy and paste) # Enables input to be set (similar to copy and paste)
<<<<<<< HEAD
def input_filtered_search(search_term, submit: true)
# Add an extra space to engage visual tokens
filtered_search.set("#{search_term} ")
=======
def input_filtered_search(search_term, submit: true, extra_space: true) def input_filtered_search(search_term, submit: true, extra_space: true)
search = search_term search = search_term
if extra_space if extra_space
...@@ -17,7 +12,6 @@ module FilteredSearchHelpers ...@@ -17,7 +12,6 @@ module FilteredSearchHelpers
end end
filtered_search.set(search) filtered_search.set(search)
>>>>>>> ce/master
if submit if submit
filtered_search.send_keys(:enter) filtered_search.send_keys(:enter)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment