Requires OpenSearch (2.7+) to be running.
- See https://opensearch.org/docs/latest/install-and-configure/install-opensearch/index/ for installation instructions.
- Install
ingest-attachmentplugin in correct version for out OS version. (https://opensearch.org/docs/latest/install-and-configure/plugins/) - MUST setup a valid SSL certificate to allow secure connection to OS instance.
- MUST set username and password for accessing OS (defaults to
admin:admin, strongly recommended to change it).
$bsgESBackendUsername = 'username';
$bsgESBackendPassword = 'password';- If needed, configure host, port etc. (see
extension.jsonfor available config variables)
php tests/phpunit/phpunit.php extensions/BlueSpiceExtendedSearch/tests/phpunit/
// initialize indices
php extensions/BlueSpiceExtendedSearch/maintenance/initBackends.php
// crawl the sources
php extensions/BlueSpiceExtendedSearch/maintenance/rebuildIndex.php
// Index documents
php maintenance/runJobs.php
Search infrastructure allows other extensions to implement plugins that will extend or modify the normal behaviour of the search.
Plugin must implement BS\ExtendedSearch\Plugin\ISearchPlugin interface.
Depending on the needs of the plugin, it should implement additional interfaces
BS\ExtendedSearch\Plugin\IMappingModifier- to modify the mapping and index settingsBS\ExtendedSearch\Plugin\IDocumentDataModifier- to modify the data being indexed (also adding new fields)BS\ExtendedSearch\Plugin\ILookupModifierProvider- to provide the list ofBS\ExtendedSearch\Plugin\ILookupModifierinstancesBS\ExtendedSearch\Plugin\IFormattingModifier- to modify formatting of fulltext and AC resultsBS\ExtendedSearch\Plugin\IFilterModifier- to modify filters available on the client-sideBS\ExtendedSearch\IPostProcessingProvider- to provider the list ofBS\ExtendedSearch\Plugin\IPostProcessorinstances
Register plugins:
- In manifest registry, in attribute
PluginRegistryasplugin-key=>OF_spec, or - Using a hook:
BSExtendedSearchRegisterPlugin
- Replace revision used by the
wikipagesource -BSExtendedSearchWikiPageFetchRevisionhook - Skip indexing of documents -
BSExtendedSearchIndexDocumentSkiphook - Get file version to index by the
repofilesource -BSExtendedSearchRepoFileGetFilehook