Commit graph

6 commits

Author SHA1 Message Date
Stan Hu
1625979653 Properly expire all pipeline caches when pipeline is deleted
When deleting a pipeline, only some of the cache structures were being
expired, but not the full pipeline list. We have to synchronously
schedule a pipeline cache expiration because the pipeline will be
deleted if the Sidekiq expiration job picks it up. To do this, properly
extract all the logic buried in the Sidekiq worker into a service, and
then call the service.

Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/60469
2019-04-15 08:10:10 -07:00
Stan Hu
2d233dac45 Clear pipeline status cache after destruction of pipeline
`project.pipeline_status.has_status?` is cached, which can lead to Error
500s in the UI if the this condition is used to check whether a pipeline
exists for a commit. We now expire the cache to ensure that the
information is consistent.

Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/59453
2019-03-26 01:04:06 -05:00
Stan Hu
05f30ac6bb Disable audit event logging for pipeline destruction
AuditEventService isn't equipped to handle logging of the destruction of
entities such as CI pipelines. It's a project-level event that operates
on a pipeline. The current log doesn't even indicate that the pipeline
is being destroyed.

This is a CE backport of
https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/9105.  We're
removing the auditing call because it breaks the EE implementation.
2019-01-10 01:30:41 -08:00
Matija Čupić
b7e5f73cd7
Raise exception when user is not authorized 2018-11-13 19:00:28 +01:00
Matija Čupić
0bc14b4522
Authorize DestroyPipelineService against pipeline 2018-11-13 17:24:10 +01:00
Matija Čupić
99203bfe23
Destroy pipeline in service
Move all logic for destroying a Pipeline into a service so it's easily
reusable.
2018-11-12 19:43:03 +01:00