我正在寻找使用
进行wordpress部署的正确方法我有什么:
我在寻找:
问题
问题:
结构代码
<pre>
STAGES = {
'development' : {
'hosts' : ['deployer@deployment-server'],
'code_dir' : '/var/www/my_wordpress_site' ,
'code_branch' : 'development'
},
....
}
def stage_set(stage_name='development'):
env.stage = stage_name
for option, value in STAGES[env.stage].items():
setattr(env, option, value)
....
@task
def development():
stage_set('development')
@task
def deploy():
require('stage', provided_by=(production, staging, development))
with settings(warn_only=True):
if sudo("test -d %s" % env.code_dir, user='www-data', group='www-data').failed:
sudo("git clone git@bitbucket.org:myuser/my_wordpress_site.git %s" % (env.code_dir), user='www-data', group='www-data')
with cd(env.code_dir):
sudo("php -r \"copy('https://getcomposer.org/installer', 'composer-setup.php');\"", user='www-data', group='www-data')
sudo("php -r \"if (hash_file('SHA384', 'composer-setup.php') === '55d6ead61b29c7bdee5cccfb50076874187bd9f21f65d8991d46ec5cc90518f447387fb9f76ebae1fbbacf329e583e30') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;\"", user='www-data', group='www-data')
sudo("php composer-setup.php", user='www-data', group='www-data')
sudo("php -r \"unlink('composer-setup.php');\"", user='www-data', group='www-data')
sudo("php composer.phar install --no-dev", user='www-data', group='www-data')
with cd(env.code_dir):
sudo("git pull", user='www-data', group='www-data')
sudo("php composer.phar update --no-dev", user='www-data', group='www-data')
</pre>