contributte / deployer-extension
Ftp-Deployment Extension for Nette
Fund package maintenance!
f3l1x
contributte.org/partners.html
Installs: 595 057
Dependents: 0
Suggesters: 0
Security: 0
Stars: 11
Watchers: 4
Forks: 6
Open Issues: 3
pkg:composer/contributte/deployer-extension
Requires
- php: >=7.2
- dg/ftp-deployment: ^3.3.1
- nette/di: ^3.0.2
Requires (Dev)
- mockery/mockery: ^1.3.0
- ninjify/nunjuck: ^0.4
- ninjify/qa: ^0.12
- phpstan/phpstan: ^0.12.0
- phpstan/phpstan-deprecation-rules: ^0.12.0
- phpstan/phpstan-nette: ^0.12.0
- phpstan/phpstan-strict-rules: ^0.12.0
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.