Module: Ci::Partitionable
- Extended by:
- ActiveSupport::Concern
- Includes:
- Gitlab::Utils::StrongMemoize
- Included in:
- BuildExecutionConfig, BuildMetadata, BuildName, BuildNeed, BuildPendingState, BuildReportResult, BuildRunnerSession, BuildSource, BuildTag, BuildTraceChunk, BuildTraceMetadata, DailyBuildGroupReportResult, JobAnnotation, JobArtifact, JobArtifactReport, JobDefinition, JobDefinitionInstance, JobInput, JobMessage, JobVariable, PendingBuild, Pipeline, PipelineArtifact, PipelineChatData, PipelineMessage, PipelineMetadata, PipelineVariable, RunnerManagerBuild, RunningBuild, Sources::Pipeline, Stage, UnitTestFailure, Workloads::VariableInclusions, Workloads::Workload, CommitStatus
- Defined in:
- app/models/concerns/ci/partitionable.rb,
app/models/concerns/ci/partitionable/switch.rb,
app/models/concerns/ci/partitionable/testing.rb
Overview
This module implements a way to set the partition_id value on a dependent resource from a parent record. Usage:
class PipelineVariable < Ci::ApplicationRecord
include Ci::Partitionable
belongs_to :pipeline
partitionable scope: :pipeline
# Or
partitionable scope: ->(record) { record.partition_value }
Defined Under Namespace
Class Method Summary collapse
Class Method Details
.registered_models ⇒ Object
40 41 42 43 44 |
# File 'app/models/concerns/ci/partitionable.rb', line 40 def self.registered_models Gitlab::Database::Partitioning .registered_models .select { |model| model < Ci::ApplicationRecord && model < Ci::Partitionable } end |