diff options
Diffstat (limited to 'app/models/packages/rpm/repository_file.rb')
-rw-r--r-- | app/models/packages/rpm/repository_file.rb | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/app/models/packages/rpm/repository_file.rb b/app/models/packages/rpm/repository_file.rb new file mode 100644 index 00000000000..4b5fa59c6ee --- /dev/null +++ b/app/models/packages/rpm/repository_file.rb @@ -0,0 +1,25 @@ +# frozen_string_literal: true +module Packages + module Rpm + class RepositoryFile < ApplicationRecord + include EachBatch + include UpdateProjectStatistics + include FileStoreMounter + include Packages::Installable + + INSTALLABLE_STATUSES = [:default].freeze + + enum status: { default: 0, pending_destruction: 1, processing: 2, error: 3 } + + belongs_to :project, inverse_of: :repository_files + + validates :project, presence: true + validates :file, presence: true + validates :file_name, presence: true + + mount_file_store_uploader Packages::Rpm::RepositoryFileUploader + + update_project_statistics project_statistics_name: :packages_size + end + end +end |