puli / repository-manager
Manages the puli.json file of a Puli project.
Requires
- php: ^5.3.9|^7.0
- psr/log: ^1.0
- puli/discovery: ^1.0-beta9
- puli/repository: ^1.0-beta9
- puli/url-generator: ^1.0-beta4
- ramsey/uuid: ^2.8
- symfony/event-dispatcher: ^2.3|^3.0
- symfony/filesystem: ^2.3|^3.0
- webmozart/assert: ^1.0
- webmozart/expression: ^1.0
- webmozart/glob: ^4.0
- webmozart/json: ^1.2.1
- webmozart/path-util: ^2.2.3
Requires (Dev)
- basho/riak: ^1.4
- phpunit/phpunit: ^4.6
- predis/predis: ^1.0
- sebastian/comparator: ^1.2
- sebastian/version: ^1.0.1
- webmozart/key-value-store: ^1.0-beta7
Suggests
- basho/riak: to use Riak based key-value stores
- predis/predis: to use Predis based key-value stores
- webmozart/key-value-store: to use key-value store change streams/discoveries
This package is auto-updated.
Last update: 2021-04-07 16:51:38 UTC
README
Latest release: 1.0.0-beta10
PHP >= 5.3.9
The Puli Manager Component builds a resource repository and discovery from a puli.json configuration in the root of your project:
{ "path-mappings": { "/app": "res" } }
This mapping can be loaded with the RepositoryManager
:
use Puli\Manager\Api\Container; $puli = new Container(getcwd()); $puli->start(); $repoManager = $puli->getRepositoryManager(); $repoManager->buildRepository();
The RepositoryManager
also supports methods to manipulate the puli.json.
Modules
A puli.json configuration can also be placed in any module installed in your
project. This module needs to be registered with Puli with the
ModuleManager
:
$moduleManager = $puli->getModuleManager(); $moduleManager->installModule('path/to/module', 'vendor/module-name');
Usually, modules are installed automatically by Puli's Composer Plugin.
Managers
The following is a table of all managers supported by this package:
Class | Description |
---|---|
RepositoryManager |
Manages resource mappings and builds ResourceRepository instances |
DiscoveryManager |
Manages bindings and binding types and builds Discovery instances |
AssetManager |
Manages asset mappings used by the UrlGenerator |
ServerManager |
Manages servers used by the UrlGenerator |
FactoryManager |
Manages the generation of the GeneratedPuliFactory class |
ModuleManager |
Manages the installed modules |
ConfigFileManager |
Manages changes to a global config.json file |
RootModuleFileManager |
Manages changes to the puli.json file of the project |
Authors
Installation
Follow the Installation guide guide to install Puli in your project.
Documentation
Read the Puli Documentation if you want to learn more about Puli.
Contribute
Contributions to are very welcome!
- Report any bugs or issues you find on the issue tracker.
- You can grab the source code at Puli’s Git repository.
Support
If you are having problems, send a mail to bschussek@gmail.com or shout out to @webmozart on Twitter.
License
All contents of this package are licensed under the MIT license.