Ben bugüne kadar bu sorunu çözme sona nasıl:
Kaynak kodu dizinleri:
build/ - build files for phing and environment-specific properties files
build.xml
src_qa.properties - properties to use the qa server as the source for a deployment
dst_qa.properties - properties to use the qa server as the destination for a deployment
etc... for other environments
conf/ - contains environment specific configuration files, each in a subfolder named after the environment
dev/
db-config.php - config file for HyperDB - http://codex.wordpress.org/HyperDB
default - Apache conf that holds ServerAlias configs for multi-site WordPress
hosts - useful for developers to redirect their browser to various domains in different environments
htaccess.dist - for WPMU
httpd.conf - main Apache config file, specific to each environment
my.cnf - mysql config file
wp-config.php - main wordpress config file
qa
(same as dev/ but with different values in each file)
staging
(same as dev/ but with different values in each file)
prod
(same as dev/ but with different values in each file)
src/ - wordpress source code
wp-admin/
wp-content/
mu-plugins/
plugins/
themes/
wp-includes/
test/ - holds WP test suite and custom tests for plugins, themes, etc...
Ben Hudson CI sunucusu kullanıyorum (http://hudson-ci.org/) otomatik ve manuel Temel, Hudson sunucu etmek istediğinize bağlı yıkıcılık kodunu çeker .. vs yıkılma çıkış görevleri, Phing ve phpunit kullanarak inşa etmek için dağıtmak, ve rsync hedef sunucuya dışarı CI sunucudan konuşlandırılacak dosyaları bulunuyor.
Ya da, üretime doğrudan evreleme bir dağıtım durumunda, Hudson rsync ve sonra tekrar üretime kadar, aşağı CI sunucuya, evreleme dosyaları bulunuyor.
Ben işlevsellik aşağıdaki parçaları için hudson işler kurulum kurmak var:
core WP code - deploys core WP files and mu-plugins from src to dst
svn to qa
svn to staging
staging to prod
WP plugins/ folder - deploys only the plugins folder
svn to qa
svn to staging
staging to prod
WP themes/ folder - deploys the entire themes folder
svn to qa
svn to staging
svn to prod
Specific themes - deploys a specific theme (chosen through a drop down during the build process using Hudson's parameterized build feature - http://wiki.hudson-ci.org/display/HUDSON/Parameterized+Build)
svn to qa
svn to staging
svn to prod
Hudson işleri de her sunucuda uygun yerlere belirli ortam PHP dosyalarını (örn. wp-config.php, db-config.php) yanı sıra, Apache ve MySQL yapılandırma dosyaları dağıtmak için yeteneği var. Bazı durumlarda, birden fazla web sunucuları ve çoklu veritabanı sunucuları için dağıtmak ve yapı yapılandırma çoğu Phing yapı dosyası yoluyla halledilir ve. Dosyaları özellikleri yukarıda belirtilmiştir.
Biz geliştirme entegrasyon ortamı olduğunda Gelecekte, muhtemelen herhangi bir kod svn tarihi üzerine otomatik dağıtımları yapacağız.
Bu kurulum farklı skillsets (CSS / HTML, PHP vs ağırlıklı) ile organizasyonun farklı geliştiriciler ayrı ayrı çalışmak ve kod gereksiz kişilik bir grup içeren olmadan hızlı bir şekilde uygun ortamlarda dışarı değişiklikleri almak için izin verir. Hudson doğru insanların bunları yapılandırmak ve onları tekmelemek için sadece erişiminiz yüzden bana farklı dağıtım işleri kilitlemek için izin verir.
Ben kurulum var ne yüksek düzeyde bir genel tür, bana ne düşündüğünüzü bildirin. Bu kurulum ile büyük sıkıntılar keypairs, kullanıcı hesapları ve tüm farklı sunucular arasında rsync ile dosya izinleri oldu.
Dave