laravel-elasticsearch-config-builder maintained by triadev
Description
Elasticsearch config (mappings + settings) builder for laravel.
Author
Last update
2018/09/21 21:00
(dev-master)
License
Downloads
7
Tags
LaravelElasticsearchConfigBuilder
Elasticsearch config (mappings + settings) builder for laravel.
Supported laravel versions
Supported elasticsearch versions
Main features
- Build mappings
- Build settings
- Multilanguage keys
- Multilanguage indices
- Mapping validation check
Installation
Composer
composer require triadev/laravel-elasticsearch-config-builder
Application
The package is registered through the package discovery of laravel and Composer.
Configuration
| Key | Value | Description |
|---|---|---|
| filePath | STRING | File path for elasticsearch configs |
| validation.whitelistFilter | ARRAY | --- |
| indices | ARRAY | [INDEX => VERSION, ...] |
Mappings
Directory (i.e. 1.0.0) with elasticsearch config files.
mappings.php (Example)
return [
TYPE => [
'properties' => [
FIELD => [
'type' => TYPE
],
...
],
...
],
...
];
settings.php (Example)
return [
'refresh_interval' => "30s",
'analysis' => [
'filter' => [
'germanStop' => [
'type' => 'stop',
'stopwords' => '_german_'
]
],
'analyzer' => [
'exampleAnalyzer' => [
'type' => 'custom',
'tokenizer' => 'standard',
'filter' => [
'germanStop'
]
]
]
]
];
translations.php (Example)
| Key | Value | Description |
|---|---|---|
| type | STRING | field or index |
| locales | ARRAY | deDE, enUS, ... |
| fields | ARRAY | fields to translation |
| configPerLocale | ARRAY | --- |
return [
'type' => 'field',
'locales' => [
'enUS'
],
'fields' => [
'example.properties.title'
],
'configPerLocale' => [
'example.properties.title' => [
'enUS' => [
'analyzer' => 'exampleAnalyzerEn'
]
]
]
];
Reporting Issues
If you do find an issue, please feel free to report it with GitHub's bug tracker for this project.
Alternatively, fork the project and make a pull request. :)
Testing
- docker-compose -f docker-compose.yml up
- composer test
Contributing
Please see CONTRIBUTING for details.
Credits
Other
Project related links
License
The code for LaravelElasticsearchConfigBuilder is distributed under the terms of the MIT license (see LICENSE).