endroid/installer

Composer plugin for installing configuration files

Fund package maintenance!
endroid

Installs: 8 003 580

Dependents: 35

Suggesters: 0

Security: 0

Stars: 143

Watchers: 4

Forks: 6

Open Issues: 1

Type:composer-plugin

1.5.0 2024-10-20 18:31 UTC

README

By endroid

Latest Stable Version Build Status Total Downloads Monthly Downloads License

Composer plugin for installing configuration files. The installer automatically detects the project type in which your library is installed and installs the corresponding configuration files from your package.

Read the blog for more information on why I created this plugin.

Installation

composer config allow-plugins.endroid/installer true
composer require endroid/installer

Usage

Add the configuration files you want to be copied upon installation and update of the package to the .install directory in the root of your package. The files will be copied to the corresponding directories in the project.

.install
    symfony
        config
            packages
                package_name.yaml
            routes
                package_name.yaml

Please note that the installer will only copy files that are not yet present in the project to make sure user made changes will not be overwritten. If you want the latest default configuration just remove the files locally before update.

Disabling auto installation for a package

Generally you want the files to be installed automatically but if you experience issues with the installer or just don't want some package to be auto installed you can specify this via your composer.json.

"extra": {
    "endroid": {
        "installer": {
            "enabled": false,
            "exclude": [
                "endroid/asset",
                "endroid/embed"
            ]
        }
    }
}

Versioning

Version numbers follow the MAJOR.MINOR.PATCH scheme. Backwards compatible changes will be kept to a minimum but be aware that these can occur. Lock your dependencies for production and test your code when upgrading.

License

This bundle is under the MIT license. For the full copyright and license information please view the LICENSE file that was distributed with this source code.