rosa-build/lib/modules/models/personal_repository.rb

46 lines
1.0 KiB
Ruby
Raw Normal View History

2012-01-30 20:39:34 +00:00
# -*- encoding : utf-8 -*-
module Modules
module Models
module PersonalRepository
extend ActiveSupport::Concern
included do
2012-12-27 18:27:50 +00:00
after_create :create_personal_repository, :unless => :system?
end
def create_personal_repository
begin
pl = own_platforms.build
pl.owner = self
pl.name = "#{self.uname}_personal"
pl.description = "#{self.uname}_personal"
pl.platform_type = 'personal'
pl.distrib_type = APP_CONFIG['distr_types'].first
pl.visibility = 'open'
pl.save!
rep = pl.repositories.build
rep.name = 'main'
rep.description = 'main'
rep.save!
rescue Exception => e
pl.now_destroy rescue false
raise e
end
return true
end
def personal_platform
own_platforms.personal.first
end
def personal_repository
personal_platform.repositories.first
end
module ClassMethods
end
end
end
end