Skip to content
Snippets Groups Projects

Services for persisting Cycle Analytics group stages

Merged Adam Hegyi requested to merge persisting-ca-group-stages into master
All threads resolved!
17 files
+ 477
39
Compare changes
  • Side-by-side
  • Inline
Files
17
@@ -7,6 +7,7 @@ module Stage
included do
validates :name, presence: true
validates :name, exclusion: { in: Gitlab::Analytics::CycleAnalytics::DefaultStages.names }, if: :custom?
validates :start_event_identifier, presence: true
validates :end_event_identifier, presence: true
validate :validate_stage_event_pairs
@@ -15,6 +16,17 @@ module Stage
enum end_event_identifier: Gitlab::Analytics::CycleAnalytics::StageEvents.to_enum, _prefix: :end_event_identifier
alias_attribute :custom_stage?, :custom
scope :customized, -> { where(custom: true) }
end
class_methods do
def first_custom_stage?(stage)
!customized.where.not(id: stage.id).exists?
end
def find_stage_by_name(name)
find_by!(name: name)
end
end
def parent=(_)
Loading