Module: DTR::SyncCodebase::MasterExt
- Includes:
- DTR::Service::File
- Included in:
- Master
- Defined in:
- lib/dtr/shared/sync_codebase/master_ext.rb
Overview
Inject synchronizing codebase ability into Master#with_dtr_master Packaging codebase by rake task dtr_repackage (See DTR::PackageTask)
Class Method Summary collapse
Instance Method Summary collapse
Methods included from DTR::Service::File
Methods included from DTR::Service::Rinda
#lookup, #lookup_ring, #start_service, #stop_service
Class Method Details
.included(base) ⇒ Object
22 23 24 |
# File 'lib/dtr/shared/sync_codebase/master_ext.rb', line 22 def self.included(base) base.alias_method_chain :with_dtr_master, :sync_codebase end |
Instance Method Details
#with_dtr_master_with_sync_codebase(&block) ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/dtr/shared/sync_codebase/master_ext.rb', line 26 def with_dtr_master_with_sync_codebase(&block) with_dtr_master_without_sync_codebase do DTR.do_println("Packaging codebase") raise 'Packaging for dtr task failed, see log for details!' unless Cmd.execute('rake --trace dtr_repackage') begin provide_file CopiablePackage.new block.call ensure Cmd.execute('rake --trace dtr_clobber_package') end end end |