smartdevs / infinitestack-composer-installer
Requires
- composer-plugin-api: ^1.0
Requires (Dev)
- composer/composer: 1.0.*@dev
- phpunit/phpunit: 4.1.*
This package is auto-updated.
Last update: 2018-02-06 11:50:18 UTC
README
Example composer.json
File
This is an example for a InfiniteStack blueprint manageable by composer. The only important parts to set in your
composer.json file are "type": "infinitestack-stackformation-component"
which describes what your
package is and "require": { "smartdevs/infinitestack-composer-installer": "~1.0" }
which tells composer
to load the custom installers.
{
"name": "you/yourblueorint",
"type": "infinitestack-stackformation-component",
"require": {
"smartdevs/infinitestack-composer-installer": "~1.0"
}
}
Custom Install Paths
If you are consuming a package that uses the smartdevs/infinitestack-composer-installer
you can
override the install path with the following extra in your composer.json
:
{
"extra": {
"installer-paths": {
"stackformation/blueprints/vendor/{$name}/": ["you/yourblueorint", "vendor/package"]
}
}
}
A package type can have a custom installation path with a type:
prefix.
{
"extra": {
"installer-paths": {
"stackformation/blueprints/vendor/{$name}/": ["type:infinitestack-stackformation-component"]
}
}
}
Custom Install Names
If you're a package author and need your package to be named differently when
installed consider using the installer-name
extra.
For example you have a package named smartdevs/infinitestack-stackformation-component-vpc
with the type
infinitestack-stackformation-component
. Installing with infinitestack-composer-installer
would install to the
path blueprints/vendor/infinitestack-stackformation-component-vpc
. Due to the strict naming conventions, you as a
package author actually need the package to be named and installed to
blueprints/vendor/vpc
. Using the following config within your package composer.json
will allow this:
{
"name": "smartdevs/infinitestack-stackformation-component-vpc",
"type": "infinitestack-stackformation-component",
"extra": {
"installer-name": "vpc"
}
}