teknoo / composer-install
Composer plugin allowing the creation of a functional package 'out of the box' as well as a cleaning of the project when it is uninstalled.
Fund package maintenance!
Patreon
TeknooSoftware
Installs: 98
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 3
Forks: 0
Open Issues: 0
Type:composer-plugin
Requires
- php: ~8.0
- composer-plugin-api: ~2.0
- php-di/php-di: ~6.3
Requires (Dev)
- composer/composer: ~2.0
- pdepend/pdepend: ~2.10
- phploc/phploc: ^7.0.2
- phpstan/phpstan: ^1.1.2
- phpunit/phpunit: ^9.5.10
- roave/security-advisories: dev-master
- sebastian/phpcpd: ^6.0.3
- squizlabs/php_codesniffer: ~3.6
README
This package is currently deprecated, please use Symfony Flex for Symfony integration
Composer plugin allowing the creation of a functional package "out of the box" as well as a cleaning of the project when it is uninstalled.
This performs some automated install/update or uninstall operations when a package is installed, updated or uninstalled
via Composer. Operations are managed by Action
classes, implementing Teknoo\Composer\Action\ActionInterface
,
provided by this plugin or your packages.
Arguments or configuration to pass to actions must be defined as extra, under the key Teknoo\\Composer\\Installer
like
the following example. It comes with actions dedicated to install bundles for Symfony 4.0+ :
- updating the
bundles.php
file - copy/clean some configuration files into
config/packages
folder. - copy/clean routes files into
config/routes
foler.
Quick Example
{
"name": "your-company/your-package",
[...]
"extra": {
"Teknoo\\Composer\\Installer": {
"config": {
#To configure Teknoo\\Composer\\Installer
#disabled: true #to disabled installer in the current composer project
},
#To add some bundle in bundles.php
"Teknoo\\Composer\\Action\\SymfonyBundle": {
"Your\\Company\\Bundle": {"all": true},
"Your\\Another\\Company\\Bundle": {"dev": true }
},
#To add/update some file in config/packages
"Teknoo\\Composer\\Action\\SymfonyPackages": {
"bundle_config.yaml": [
"# Read the documentation:",
"my_bundle:",
" foo:",
" - 'bar'",
" - '%kernel.project_dir%/vendor/foo/bar.php'",
" bar:",
" foo: 42"
],
"bundle_another_config.yaml": "foo\\nbar",,
"bundle_another_config.yaml": {
"base64": "aGVsbG8gd29ybGQ="
},
}
}
}
}
Support this project
This project is free and will remain free. It is fully supported by the activities of the EIRL. If you like it and help me maintain it and evolve it, don't hesitate to support me on Patreon or Github.
Thanks :) Richard.
Credits
EIRL Richard Déloge - https://deloge.io - Lead developer. SASU Teknoo Software - https://teknoo.software
About Teknoo Software
Teknoo Software is a PHP software editor, founded by Richard Déloge, as part of EIRL Richard Déloge. Teknoo Software's goals : Provide to our partners and to the community a set of high quality services or software, sharing knowledge and skills.
License
Composer Install is licensed under the MIT License - see the licenses folder for details.
Installation & Requirements
To install this library with composer, run this command :
composer require teknoo/composer-install
This library requires :
* PHP 8.0+
* Composer 2.0+
Contribute :)
You are welcome to contribute to this project. Fork it on Github