Test simple push with PostReceive
It seems that because of gitlab-shell interactions, we should test a simple push and ensure that PostReceive completes successfully without any errors.
This would help prevent https://gitlab.com/gitlab-org/gitlab-ee/issues/2822 occurring in the first place.
Then, ideally we should probably check that each of the updates that happen in GitTagPushService
/ GitPushService
have been performed:
-
ProcessCommitWorker
: https://gitlab.com/gitlab-org/gitlab-ce/issues/52707-
a commit with
Closes #1234
effectively closes the related issue -
a commit with
Closes #1234
effectively creates a cross-reference in the related issue
-
-
UpdateMergeRequestsWorker
: https://gitlab.com/gitlab-org/gitlab-ce/issues/52708-
the commit appears in the commits list of the MR
-
the commit content appears in the diff of the MR
-
-
EventCreateService
: #155 (closed) => https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/16423- a new event is created and appears in the Activity page
-
Ci::CreatePipelineService
: #229 (closed) => Covered by https://gitlab.com/gitlab-org/gitlab-ce/blob/3a1843f9470e8916d65e182f33c1e5f53b217140/qa/qa/specs/features/project/pipelines_spec.rb#L28-100- a new pipeline is created and appears in the Pipelines page (no need to check that the pipeline is picked up by a runner in this test)
-
SystemHookPushWorker
- a trigger that we've set up is effectively called (we'll have to find how to check that): we could spin up a simple web app in a Docker container that would write the last body it receives to a file on
POST
, and return it onGET
, so that we could curl it to ensure that what it returns is the information of the commit that we just pushed to GitLab...
- a trigger that we've set up is effectively called (we'll have to find how to check that): we could spin up a simple web app in a Docker container that would write the last body it receives to a file on
-
AfterBranchDeleteService
- this ones requires an environment to be started: deleting the branch should stop the environment
-
check that the number of commits shown in the Project page is updated
-
more checks for EE