Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-06-01Merge branch 'bugfix/deploy_keys__can_push__usage_in_api' into 'master'Rémy Coutable
Add missing `can_push` parameter to POST /v3/deploy_keys See merge request !11607
2017-06-01Merge branch 'master' into 'trigger-source'Grzegorz Bizon
# Conflicts: # db/schema.rb
2017-06-01Add feature toggles through FlipperAlejandro Rodríguez
2017-05-31Merge branch '33000-tag-list-in-project-create-api' into 'master'Rémy Coutable
Add tag_list param to project api Closes #33000 See merge request !11799
2017-05-31Introduce source to pipeline entityKamil Trzcinski
2017-05-31Add tag_list param to project apivanadium23
2017-05-30Return 202 for destory. Remove []. Remove def pipeline_schedules from helper.Shinya Maeda
2017-05-30Improve API with optinal and default. Allow to use scope as a parameter.Shinya Maeda
2017-05-30Include owner for pipeline_schedules. Improve N+1 spec. Use PipelineBasic ↵Shinya Maeda
for small payload.
2017-05-30includes last_pipelineShinya Maeda
2017-05-30zj keen eye2Shinya Maeda
2017-05-30zj keen eyeShinya Maeda
2017-05-30avoids N + 1 queriesShinya Maeda
2017-05-30Concatinate dot behind endShinya Maeda
2017-05-30Add space between curly bracketsShinya Maeda
2017-05-30Use attributes_forShinya Maeda
2017-05-30Use 'set' to top-level variables. Remove repository.Shinya Maeda
2017-05-30Add validation specShinya Maeda
2017-05-30Change status number to ailiasShinya Maeda
2017-05-30Add API support for pipeline scheduleShinya Maeda
2017-05-29Merge branch 'rework-authorizations-performance' into 'master'Douwe Maan
Rework project authorizations and nested groups for better performance See merge request !10885
2017-05-29Improve pipelines API specs related to special parametersGrzegorz Bizon
2017-05-29Simplify pipeline spec by using order instead of sort_byStan Hu
2017-05-29Fix failing spec in spec/requests/api/pipelines_spec.rbStan Hu
The spec was trying to sort pipelines by user ID, but the same user ID was being used for each pipeline in the spec. Closes #33001
2017-05-24Revert "Remove changes that are not absolutely necessary"Douwe Maan
This reverts commit b0498c176fa134761d899c9b369be12f1ca789c5
2017-05-24Merge branch 'fix-notify-post-receive' into 'master'Stan Hu
Prevent errors from non-functional notify_post_receive endpoint See merge request !11509
2017-05-23Extend spec tests for deploy_key can_pushRichard Clamp
Copied from the v4 tests: https://gitlab.com/gitlab-org/gitlab-ce/blob/v9.2.0/spec/requests/api/deploy_keys_spec.rb#L110-116
2017-05-22Add transient head_pipeline_of to pipeline factoriesFelipe Artur
2017-05-18Prevent errors from non-functional notify_post_receive endpointAlejandro Rodríguez
2017-05-17Use CTEs for nested groups and authorizationsYorick Peterse
This commit introduces the usage of Common Table Expressions (CTEs) to efficiently retrieve nested group hierarchies, without having to rely on the "routes" table (which is an _incredibly_ inefficient way of getting the data). This requires a patch to ActiveRecord (found in the added initializer) to work properly as ActiveRecord doesn't support WITH statements properly out of the box. Unfortunately MySQL provides no efficient way of getting nested groups. For example, the old routes setup could easily take 5-10 seconds depending on the amount of "routes" in a database. Providing vastly different logic for both MySQL and PostgreSQL will negatively impact the development process. Because of this the various nested groups related methods return empty relations when used in combination with MySQL. For project authorizations the logic is split up into two classes: * Gitlab::ProjectAuthorizations::WithNestedGroups * Gitlab::ProjectAuthorizations::WithoutNestedGroups Both classes get the fresh project authorizations (= as they should be in the "project_authorizations" table), including nested groups if PostgreSQL is used. The logic of these two classes is quite different apart from their public interface. This complicates development a bit, but unfortunately there is no way around this. This commit also introduces Gitlab::GroupHierarchy. This class can be used to get the ancestors and descendants of a base relation, or both by using a UNION. This in turn is used by methods such as: * Namespace#ancestors * Namespace#descendants * User#all_expanded_groups Again this class relies on CTEs and thus only works on PostgreSQL. The Namespace methods will return an empty relation when MySQL is used, while User#all_expanded_groups will return only the groups a user is a direct member of. Performance wise the impact is quite large. For example, on GitLab.com Namespace#descendants used to take around 580 ms to retrieve data for a particular user. Using CTEs we are able to reduce this down to roughly 1 millisecond, returning the exact same data. == On The Fly Refreshing Refreshing of authorizations on the fly (= when users.authorized_projects_populated was not set) is removed with this commit. This simplifies the code, and ensures any queries used for authorizations are not mutated because they are executed in a Rails scope (e.g. Project.visible_to_user). This commit includes a migration to schedule refreshing authorizations for all users, ensuring all of them have their authorizations in place. Said migration schedules users in batches of 5000, with 5 minutes between every batch to smear the load around a bit. == Spec Changes This commit also introduces some changes to various specs. For example, some specs for ProjectTeam assumed that creating a personal project would _not_ lead to the owner having access, which is incorrect. Because we also no longer refresh authorizations on the fly for new users some code had to be added to the "empty_project" factory. This chunk of code ensures that the owner's permissions are refreshed after creating the project, something that is normally done in Projects::CreateService.
2017-05-16Merge branch 'bvl-rename-build-events-to-job-events' into 'master' Douwe Maan
Rename `build_events` to `job_events` Closes #31620 See merge request !11287
2017-05-15Revert "Merge branch 'bvl-rename-build-events-to-job-events' into 'master'"Douwe Maan
This reverts merge request !11287
2017-05-15Rename `build_events` to `job_events` in codeBob Van Landuyt
2017-05-13Update SystemHooks API to expose and handle new repository_update_eventsGabriel Mazetto
2017-05-11fix for Follow-up from "Backport of Multiple Assignees featureValery Sizov
2017-05-11Merge branch 'retried-in-database-mysql' into 'master' Regis Boudinot
Retried in database Closes #25737 See merge request !11115
2017-05-10Enable the Style/TrailingCommaInArguments copRémy Coutable
Use the EnforcedStyleForMultiline: no_comma option. Signed-off-by: Rémy Coutable <remy@rymai.me>
2017-05-10Enable the Style/TrailingCommaInLiteral copRémy Coutable
Use the EnforcedStyleForMultiline: no_comma option. Signed-off-by: Rémy Coutable <remy@rymai.me>
2017-05-10Merge branch 'use_relative_path_for_project_avatars' into 'master' Douwe Maan
Use relative paths for group/project/user avatars Closes #13418 and #19662 See merge request !11001
2017-05-10Use relative paths for group/project/user avatarsblackst0ne
2017-05-09Revert "Fix OpenID spec failure that assumed current_sign_in_at would be set"Toon Claes
This reverts commit 73f448e589f46865140412754a9c97df52dc16c7.
2017-05-09Add :redis keyword to some specs clear state of trackable attributesToon Claes
The specs that rely on a correct value of the trackable attributes, should include the `:redis` keyword in the spec to ensure the state is reset between various specs. The trackable attributes being: - sign_in_count : Increased every time a sign in is made (by form, openid, oauth) - current_sign_in_at : A timestamp updated when the user signs in - last_sign_in_at : Holds the timestamp of the previous sign in - current_sign_in_ip : The remote ip updated when the user sign in - last_sign_in_ip : Holds the remote ip of the previous sign in The limiting of writing trackable attributes was introduced in gitlab-org/gitlab-ce!11053.
2017-05-09Fix OpenID spec failure that assumed current_sign_in_at would be setStan Hu
Due to 6a915d6f, the `current_sign_in_at` may not actually be set due to an ExclusiveLease in other jobs. To fix this spec, manually set the value in the setup. Closes #32041
2017-05-08Fix SpecsFelipe Artur
2017-05-08Merge branch '28359-skip-process-commit-worker-unless-issues-referenced' ↵Dmitriy Zaporozhets
into 'master' Use regex to skip unnecessary reference processing in ProcessCommitWorker Closes #28359 See merge request !10867
2017-05-08Add confirm delete protected branch modalSam Rose
2017-05-07Store retried in database for CI buildsKamil Trzcinski
2017-05-06Merge branch 'feature/gb/manual-actions-protected-branches-permissions' into ↵Kamil Trzciński
'master' Check access to a branch when user triggers manual action Closes #20261 See merge request !10494
2017-05-06Merge branch ↵Sean McGivern
'29925-gitlab-shell-hooks-can-no-longer-send-absolute-paths-to-gitlab-ce' into 'master' Generate and handle a gl_repository param to pass around components Closes #29925 See merge request !10992
2017-05-05Multiple issue assignee: CE restriction for multiple assigneesValery Sizov