2018-11-18 11:00:15 +05:30
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2021-03-11 19:13:27 +05:30
|
|
|
class PipelineDetailsEntity < Ci::PipelineEntity
|
2020-03-13 15:44:24 +05:30
|
|
|
expose :project, using: ProjectEntity
|
|
|
|
|
2019-09-04 21:01:54 +05:30
|
|
|
expose :flags do
|
|
|
|
expose :latest?, as: :latest
|
|
|
|
end
|
|
|
|
|
2017-09-10 17:25:29 +05:30
|
|
|
expose :details do
|
2020-03-13 15:44:24 +05:30
|
|
|
expose :artifacts do |pipeline, options|
|
2020-06-23 00:09:42 +05:30
|
|
|
rel = pipeline.downloadable_artifacts
|
2020-03-13 15:44:24 +05:30
|
|
|
|
2021-03-08 18:12:59 +05:30
|
|
|
if Feature.enabled?(:non_public_artifacts, type: :development)
|
|
|
|
rel = rel.select { |artifact| can?(request.current_user, :read_job_artifacts, artifact.job) }
|
|
|
|
end
|
|
|
|
|
2020-03-13 15:44:24 +05:30
|
|
|
BuildArtifactEntity.represent(rel, options)
|
|
|
|
end
|
2017-09-10 17:25:29 +05:30
|
|
|
expose :manual_actions, using: BuildActionEntity
|
2018-12-05 23:21:45 +05:30
|
|
|
expose :scheduled_actions, using: BuildActionEntity
|
2017-09-10 17:25:29 +05:30
|
|
|
end
|
2019-12-04 20:38:33 +05:30
|
|
|
|
2019-12-21 20:55:43 +05:30
|
|
|
expose :triggered_by_pipeline, as: :triggered_by, with: TriggeredPipelineEntity
|
|
|
|
expose :triggered_pipelines, as: :triggered, using: TriggeredPipelineEntity
|
|
|
|
end
|