contributte/deployer-extension

Ftp-Deployment Extension for Nette

Installs: 595 057

Dependents: 0

Suggesters: 0

Security: 0

Stars: 11

Watchers: 4

Forks: 6

Open Issues: 3

pkg:composer/contributte/deployer-extension

v3.2.1 2021-01-20 10:03 UTC

This package is auto-updated.

Last update: 2025-12-08 16:08:59 UTC


README

Website 🚀 contributte.org | Contact 👨🏻‍💻 f3l1x.io | Twitter 🐦 @contributte

Disclaimer

⚠️ This project is no longer being maintained.
Composer contributte/deployer-extension
Version
PHP
License

Usage

FTP deployment extension for Nette Framework. This extension integrates dg/ftp-deployment into Nette applications, providing easy configuration and deployment capabilities via FTP/FTPS protocols.

Installation

To install this package, use Composer:

composer require contributte/deployer-extension

Quick Start

1. Register the extension

Add the extension to your Nette configuration:

extensions:
	deployer: Contributte\Deployer\DI\DeployerExtension

2. Configure deployment

Basic configuration example:

parameters:
	deploy:
		protocol: ftp # ftp|ftps
		user: user1
		password: mysecretpwd
		scheme: example.com # example.com/www

deployer:
	config:
		mode: run
		logFile: %appDir%/log/deployer.log
		tempDir: %appDir%/temp
		colors: off

	sections:
		web1:
			remote: %deploy.protocol%://%deploy.user%:%deploy.password%@%deploy.scheme%
			local: %wwwDir%
			testMode: false
			allowdelete: on
			passiveMode: on

			ignore:
				- .git*
				- .idea*
				- composer.*
				- /app/config/config.local.neon
				- /log/*
				- "!/log/.htaccess"
				- /temp/*
				- "!/temp/.htaccess"

3. Deploy your application

Automatic deployment:

# Create Deploy Manager
$dm = $container->getByType('Contributte\Deployer\Manager');
$dm->deploy();

Manual deployment:

# Create config
$config = new Config();
$config->setLogFile(..);
$config->setMode(..);

$section = new Section();
$section->setName(..);
$config->addSection($section);

# Deploy
$dm = $container->getByType('Contributte\Deployer\Manager');
$dm->manualDeploy($config);

Features

Multiple deployment sections

Deploy to multiple servers/environments:

deployer:
	sections:
		example.com:
			remote: ftp://user:pass@example.com
			local: %wwwDir%
		test.cz:
			remote: ftp://user:pass@test.cz
			local: %wwwDir%

Listeners

Register custom listeners for pre/post deployment actions:

  • BeforeListener - Runs before deployment
  • AfterListener - Runs after deployment
deployer:
	sections:
		web1:
			before:
				- [@\TestBeforeListener, onBefore]
			after:
				- [@\TestAfterListener, onAfter]

Built-in Plugins

MaintenanceListener - Automatically manage maintenance mode during deployment:

deployer:
	plugins:
		maintenance:
			rewrite:
				- [www/index.php, www/index.maintenance]
			rename:
				- [www/.maintenance.php, www/maintenance.php]

ComposerInstallListener - Runs composer install --no-dev --prefer-dist --optimize-autoloader before deployment.

ComposerUpdateListener - Runs composer update --no-dev --prefer-dist --optimize-autoloader before deployment.

File Purging

Clean specific directories during deployment:

deployer:
	sections:
		web1:
			purge:
				- temp/cache
				- temp/myfolder

Versions

State Version Branch Nette PHP
stable ^3.2.1 master 3.0+ >=7.2

Development

This package was maintained by these authors.

Consider to support contributte development team. Also thank you for using this package.