summaryrefslogtreecommitdiff
path: root/lib/gitlab/git_post_receive.rb
Commit message (Collapse)AuthorAgeFilesLines
* Use Gitlab::PushOptions for `ci.skip` push optionLuke Duncalfe2019-04-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously the raw push option Array was sent to Pipeline::Chain::Skip. This commit updates this class (and the chain of classes that pass the push option parameters from the API internal `post_receive` endpoint to that class) to treat push options as a Hash of options parsed by GitLab::PushOptions. The GitLab::PushOptions class takes options like this: -o ci.skip -o merge_request.create -o merge_request.target=branch and turns them into a Hash like this: { ci: { skip: true }, merge_request: { create: true, target: 'branch' } } This now how Pipeline::Chain::Skip is determining if the `ci.skip` push option was used.
* Add support for Git push options, specifically ci.skipJonathon Reinhart2018-12-311-2/+3
| | | | | | | | | | | | | | | | | gitlab-org/gitlab-shell!166 added support for collecting push options from the environment, and passing them along to the /internal/post_receive API endpoint. This change handles the new push_options JSON element in the payload, and passes them on through to the GitPushService and GitTagPushService services. Futhermore, it adds support for the first push option, ci.skip. With this change, one can use 'git push -o ci.skip' to skip CI pipe execution. Note that the pipeline is still created, but in the "skipped" state, just like with the 'ci skip' commit message text. Implements #18667
* Removes idenfitication by commit from Gitlab::Identifier51335-fail-early-when-user-cannot-be-identifiedTiago Botelho2018-10-251-2/+2
| | | | | | | Before we would need to identify a user when pushing through the GitLab UI. Since this is no longer the case we can remove the identification by commit and instead, use the identify_using_user
* User not defined in PostReceive#process_project_changesTiago Botelho2018-10-251-1/+1
| | | | | | | When Gitlab::GitPostReceive#changes_refs is empty user would not get defined and nil would be passed to PostReceive#after_project_changes_hooks which would then throw an error.
* Code cleaning in PostReceive servicesFrancisco Javier López 🌴 (About to) On vacation; back on August 22th!2018-07-311-6/+6
|
* Added repository_update hookGabriel Mazetto2017-05-121-0/+10
|
* Allow gl-repository strings as project identifiers in PostReceive workerAlejandro Rodríguez2017-05-051-26/+3
|
* replace `find_with_namespace` with `find_by_full_path`Adam Pahlevi2017-02-031-2/+2
| | | | add complete changelog for !8949
* Log base64-decoded PostReceive argumentsJacob Vosmaer2016-08-051-1/+0
| | | | | | | | The change to base64-encoding the third argument to PostReceive in gitlab-shell made our Sidekiq ArgumentsLogger a little less useful. This change adds a log statement for the decoded data. Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/20381
* Back-porting PostReceive refactor made for EE 🍺Gabriel Mazetto2016-03-171-0/+60