Adından da anlaşılacağı gibi, DRY'den kaçınmak için farklı projeler arasında paylaşılan bir proje olan bir paylaşılan kütüphanem var. Paylaşılan kitaplık bir GIT deposunun yanı sıra diğer uygulamalar (app1, app2, app3).Aynı anda 2 uygulamanın Capistrano dağıtımı
Uygulamayı dağıtırken1 Önce paylaşımlı ve sonra da uygulama1 dağıtmak istiyorum. App2 ve app3 için aynı. Herhangi bir aksama süresinden kaçınmak için, paylaşımlı kütüphanenin, app1 ile aynı anda konuşlandırılması gerekir. Bu nedenle temel olarak dağıtım: symlink: release, her iki başarılı dağıtımın sonunda gerçekleşir.
zaman ona bağlı tüm projeler aynı zamanda
şimdiye kadar başarıyla kurulum Capistrano ayrı ayrı uygulamayı dağıtmak için gelmiş de dağıtıldığı emin olmak zorunda paylaşılan kitaplıkta kod değişiklikleri. Bazı okumalardan sonra artık caphub kullanıyorum ama bu sorunu çözmeme yardım etmiyor. Şu anda kullanıyorum ne
:
namespace :app1 do
task :deploy do
run_locally do
execute 'cap apps:shared staging deploy --dry-run', raise_on_non_zero_exit: true
execute 'cap apps:app1 staging deploy --dry-run', raise_on_non_zero_exit: true
execute 'cap apps:shared staging deploy', raise_on_non_zero_exit: true
execute 'cap apps:app1 staging deploy', raise_on_non_zero_exit: true
end
end
end
yürütmek ile sorunu paylaştı güncellenir ise o app1 kesinti yaşıyor olacak ve app1 dağıtma olmasıdır.
Bu sorunu çözmenin en iyi yöntemleri nelerdir? Kapadokya'nın akışını, bir görevin sonunda sadece symlin yapmak için geçersiz kılacak bir yol var mı?
Yeni bir yaklaşım var. Lütfen bu cevaba bakın http://stackoverflow.com/a/40921589/2067375. (Feragatname: Gem'in sahibiyim) –