mirror of
https://github.com/osm-search/Nominatim.git
synced 2024-11-22 21:28:10 +03:00
Merge pull request #1829 from krahulreddy/websiteSetup
Added setup-website option
This commit is contained in:
commit
354487d7f4
@ -26,6 +26,8 @@ script:
|
||||
- if [[ $TEST_SUITE == "tests" ]]; then phpcs --report-width=120 . ; fi
|
||||
- cd $TRAVIS_BUILD_DIR/test/php
|
||||
- if [[ $TEST_SUITE == "tests" ]]; then /usr/bin/phpunit ./ ; fi
|
||||
- cd $TRAVIS_BUILD_DIR/build
|
||||
- /usr/bin/env php ./utils/setup.php --setup-website
|
||||
- cd $TRAVIS_BUILD_DIR/test/bdd
|
||||
- # behave --format=progress3 api
|
||||
- if [[ $TEST_SUITE == "tests" ]]; then behave -DREMOVE_TEMPLATE=1 --format=progress3 db ; fi
|
||||
|
@ -1,3 +1,3 @@
|
||||
<?php
|
||||
require_once(dirname(dirname(__FILE__)).'/settings/settings.php');
|
||||
require_once(dirname(dirname(__FILE__)).'/website/settings-frontend.php');
|
||||
require_once(CONST_BasePath.'/@script_source@');
|
||||
|
@ -195,6 +195,17 @@ Run this script to verify all required tables and indices got created successful
|
||||
./utils/check_import_finished.php
|
||||
```
|
||||
|
||||
### Setting up the website
|
||||
|
||||
Run the following command to set up the `website/settings-frontend.php`.
|
||||
These settings are used in website/*.php files. You can use the website only after this
|
||||
step is completed.
|
||||
|
||||
```sh
|
||||
./utils/setup.php --setup-website
|
||||
```
|
||||
!!! Note
|
||||
This step is not necessary if you use `--all` option while setting up the DB.
|
||||
|
||||
## Tuning the database
|
||||
|
||||
|
@ -694,6 +694,45 @@ class SetupFunctions
|
||||
$this->removeFlatnodeFile();
|
||||
}
|
||||
|
||||
/**
|
||||
* Setup settings-frontend.php in the build/website directory
|
||||
*
|
||||
* @return null
|
||||
*/
|
||||
public function setupWebsite()
|
||||
{
|
||||
$rOutputFile = fopen(CONST_InstallPath.'/website/settings-frontend.php', 'w');
|
||||
|
||||
fwrite($rOutputFile, "<?php
|
||||
@define('CONST_BasePath', '".CONST_BasePath."');
|
||||
if (file_exists(getenv('NOMINATIM_SETTINGS'))) require_once(getenv('NOMINATIM_SETTINGS'));
|
||||
|
||||
@define('CONST_Debug', ". (CONST_Debug? 'true' : 'false').");
|
||||
@define('CONST_Database_DSN', '".CONST_Database_DSN."'); // or add ;host=...;port=...;user=...;password=...
|
||||
@define('CONST_Default_Language', ".(CONST_Default_Language ? 'true' : 'false').");
|
||||
@define('CONST_Default_Lat', ".CONST_Default_Lat.");
|
||||
@define('CONST_Default_Lon', ".CONST_Default_Lon.");
|
||||
@define('CONST_Default_Zoom', ".CONST_Default_Zoom.");
|
||||
@define('CONST_Map_Tile_URL', '".CONST_Map_Tile_URL."');
|
||||
@define('CONST_Map_Tile_Attribution', '".CONST_Map_Tile_Attribution."'); // Set if tile source isn't osm.org
|
||||
@define('CONST_Log_DB', ".(CONST_Log_DB ? 'true' : 'false').");
|
||||
@define('CONST_Log_File', ".(CONST_Log_File ? 'true' : 'false').");
|
||||
@define('CONST_Max_Word_Frequency', '".CONST_Max_Word_Frequency."');
|
||||
@define('CONST_NoAccessControl', ".CONST_NoAccessControl.");
|
||||
@define('CONST_Places_Max_ID_count', ".CONST_Places_Max_ID_count.");
|
||||
@define('CONST_PolygonOutput_MaximumTypes', ".CONST_PolygonOutput_MaximumTypes.");
|
||||
@define('CONST_Search_AreaPolygons', ".CONST_Search_AreaPolygons.");
|
||||
@define('CONST_Search_BatchMode', ".(CONST_Search_BatchMode ? 'true' : 'false').");
|
||||
@define('CONST_Search_NameOnlySearchFrequencyThreshold', ".CONST_Search_NameOnlySearchFrequencyThreshold.");
|
||||
@define('CONST_Search_ReversePlanForAll', ".CONST_Search_ReversePlanForAll.");
|
||||
@define('CONST_Term_Normalization_Rules', \"".CONST_Term_Normalization_Rules."\");
|
||||
@define('CONST_Use_Aux_Location_data', ".(CONST_Use_Aux_Location_data ? 'true' : 'false').");
|
||||
@define('CONST_Use_US_Tiger_Data', ".(CONST_Use_US_Tiger_Data ? 'true' : 'false').");
|
||||
@define('CONST_Website_BaseURL', '".CONST_Website_BaseURL."');
|
||||
");
|
||||
info(CONST_InstallPath.'/website/settings-frontend.php has been set up successfully');
|
||||
}
|
||||
|
||||
private function removeFlatnodeFile()
|
||||
{
|
||||
if (!is_null(CONST_Osm2pgsql_Flatnode_File) && CONST_Osm2pgsql_Flatnode_File) {
|
||||
|
@ -44,6 +44,7 @@ $aCMDOptions
|
||||
array('create-search-indices', '', 0, 1, 0, 0, 'bool', 'Create additional indices required for search and update'),
|
||||
array('create-country-names', '', 0, 1, 0, 0, 'bool', 'Create default list of searchable country names'),
|
||||
array('drop', '', 0, 1, 0, 0, 'bool', 'Drop tables needed for updates, making the database readonly (EXPERIMENTAL)'),
|
||||
array('setup-website', '', 0, 1, 0, 0, 'bool', 'Used to compile environment variables for the website (EXPERIMENTAL)'),
|
||||
);
|
||||
|
||||
// $aCMDOptions passed to getCmdOpt by reference
|
||||
@ -76,15 +77,17 @@ if ($aCMDResult['create-db'] || $aCMDResult['all']) {
|
||||
$oSetup->createDB();
|
||||
}
|
||||
|
||||
$oSetup->connect();
|
||||
if (!$aCMDResult['setup-website']) {
|
||||
$oSetup->connect();
|
||||
// Try accessing the C module, so we know early if something is wrong
|
||||
checkModulePresence(); // raises exception on failure
|
||||
}
|
||||
|
||||
if ($aCMDResult['setup-db'] || $aCMDResult['all']) {
|
||||
$bDidSomething = true;
|
||||
$oSetup->setupDB();
|
||||
}
|
||||
|
||||
// Try accessing the C module, so we know early if something is wrong
|
||||
checkModulePresence(); // raises exception on failure
|
||||
|
||||
if ($aCMDResult['import-data'] || $aCMDResult['all']) {
|
||||
$bDidSomething = true;
|
||||
@ -153,6 +156,11 @@ if ($aCMDResult['create-country-names'] || $aCMDResult['all']) {
|
||||
$oSetup->createCountryNames($aCMDResult);
|
||||
}
|
||||
|
||||
if ($aCMDResult['setup-website'] || $aCMDResult['all']) {
|
||||
$bDidSomething = true;
|
||||
$oSetup->setupWebsite();
|
||||
}
|
||||
|
||||
// ******************************************************
|
||||
// If we did something, repeat the warnings
|
||||
if (!$bDidSomething) {
|
||||
|
Loading…
Reference in New Issue
Block a user