deployphp / deployer

The PHP deployment tool with support for popular frameworks out of the box
https://deployer.org
MIT License
10.41k stars 1.47k forks source link

I'd like to deploy into multiple folders on one server #3844

Closed sts-ryan-holton closed 3 weeks ago

sts-ryan-holton commented 3 weeks ago

Hi, I have a server and I need to deploy multiple isntances of my project with different configurations for each instance. So anotherwords I need my /var/www directory to look a bit like:

forms
    fudge
        site1
            current
            releases
            shared
        site2
            current
            releases
            shared

My current deploy.php file looks like:

<?php

namespace Deployer;

require 'recipe/common.php';
require 'contrib/npm.php';
require 'deploy/recipe/fudge-nuxt.php';

// Project repository
set('repository', 'git@application-fudge:company/application-fudge.git');

// Shared files/dirs between deploys
add('shared_files', ['.env', 'brand-theme.scss']);

// Set number of releases to keep
set('keep_releases', 2);

// Writable dirs by web server
set('allow_anonymous_stats', false);

// Site: Fudge
host('my-ip')
    ->set('labels', ['stage' => 'forms'])
    ->set('repository', 'git@application-fudge:company/application-fudge')
    ->set('branch', 'feature/fudge_v2')
    ->set('remote_user', 'root')
    ->set('deploy_path', '/var/www/forms/fudge/site1');

after('deploy:update_code', 'npm:install');
after('npm:install', 'deploy:vendors');
after('deploy:writable', 'nuxt:generate');
after('deploy:failed', 'deploy:unlock');

Upvote & Fund

Fund with Polar