Skip to main content
Version: 7.x

Common Recipe

Webpod - deploy JavaScript apps
require 'recipe/common.php';

Source

Configuration

user

Source

Name of current user who is running deploy. If not set will try automatically get git user name, otherwise output of whoami command.

Autogenerated

The value of this configuration is autogenerated on access.

keep_releases

Source

Number of releases to preserve in releases folder.

Default value
10

repository

Source

Repository to deploy.

default_timeout

Source

Default timeout for run() and runLocally() functions.

Set to null to disable timeout.

Default value
300

env

Source

Remote environment variables.

set('env', [
'KEY' => 'something',
]);

It is possible to override it per run() call.

run('echo $KEY', env: ['KEY' => 'over']);

dotenv

Source

Path to .env file which will be used as environment variables for each command per run().

set('dotenv', '{{current_path}}/.env');
Default value
false

deploy_path

Source

The deploy path.

For example can be set for a bunch of host once as:

set('deploy_path', '~/{{alias}}');
Required

Throws exception if not set.

current_path

Source

Return current release path. Default to deploy_path/current.

set('current_path', '/var/public_html');
Default value
'{{deploy_path}}/current'

bin/php

Source

Path to the php bin.

Default value
if (currentHost()->hasOwn('php_version')) {
return '/usr/bin/php{{php_version}}';
}
return which('php');

bin/git

Source

Path to the git bin.

Default value
return which('git');

Source

Should bin/symlink use --relative option or not. Will detect automatically.

Default value
return commandSupportsOption('ln', '--relative');

Source

Path to the ln bin. With predefined options -nfs.

Default value
return get('use_relative_symlink') ? 'ln -nfs --relative' : 'ln -nfs';

sudo_askpass

Source

Path to a file which will store temp script with sudo password. Defaults to .dep/sudo_pass. This script is only temporary and will be deleted after sudo command executed.

Autogenerated

The value of this configuration is autogenerated on access.

Tasks

deploy:prepare

Source

Prepares a new release.

This task is group task which contains next tasks:

deploy:publish

Source

Publishes the release.

This task is group task which contains next tasks:

deploy

Source

Deploys your project.

This task is group task which contains next tasks:

deploy:success

Source

Prints success message

deploy:failed

Source

Hook on deploy failure.

logs:app

Source

Shows application logs.

Follows latest application logs.