|
- # == Schema Information
- #
- # Table name: sync_repositories
- #
- # id :integer not null, primary key
- # project_id :integer
- # type :string(255)
- # repo_name :string(255)
- # external_repo_address :string(255)
- # sync_granularity :integer
- # sync_direction :integer
- # created_at :datetime not null
- # updated_at :datetime not null
- # external_token :string(255)
- # webhook_gid :integer
- #
- # Indexes
- #
- # index_sync_repositories_on_project_id (project_id)
- #
-
- class SyncRepository < ApplicationRecord
-
- belongs_to :project
- has_many :sync_repository_branches, dependent: :destroy
-
- before_destroy :unbind_reposyncer
-
- validates :repo_name, uniqueness: { message: "已存在" }
-
- def unbind_reposyncer
- Reposync::DeleteRepoService.call(self.repo_name) rescue nil
- end
-
- end
|