diff options
author | Nick Thomas <nick@gitlab.com> | 2018-10-19 06:44:41 +0300 |
---|---|---|
committer | Nick Thomas <nick@gitlab.com> | 2018-11-05 04:40:29 +0300 |
commit | 270155d655bec91c3ae636e158b25fdb5bd03b45 (patch) | |
tree | 2b7059d69cd3d4f1b443817daae0659562ba0fc0 /app/models/pool_repository.rb | |
parent | f760c1cd17881c8aef3a33a3b43db54673db8111 (diff) |
Start tracking pool repositories
Diffstat (limited to 'app/models/pool_repository.rb')
-rw-r--r-- | app/models/pool_repository.rb | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/app/models/pool_repository.rb b/app/models/pool_repository.rb new file mode 100644 index 00000000000..8ef74539209 --- /dev/null +++ b/app/models/pool_repository.rb @@ -0,0 +1,22 @@ +# frozen_string_literal: true + +class PoolRepository < ActiveRecord::Base + POOL_PREFIX = '@pools' + + belongs_to :shard + validates :shard, presence: true + + # For now, only pool repositories are tracked in the database. However, we may + # want to add other repository types in the future + self.table_name = 'repositories' + + has_many :pool_member_projects, class_name: 'Project', foreign_key: :pool_repository_id + + def shard_name + shard&.name + end + + def shard_name=(name) + self.shard = Shard.by_name(name) + end +end |