@staticmethod
def run(args): # pylint: disable=too-many-statements
- from ..tools import database_import
- from ..tools import refresh
+ from ..tools import database_import, refresh, postcodes, freeze
from ..indexer.indexer import Indexer
- from ..tools import postcodes
from ..tokenizer import factory as tokenizer_factory
if args.osm_file and not Path(args.osm_file).is_file():
if args.continue_at is None or args.continue_at == 'load-data':
LOG.warning('Calculate postcodes')
- postcodes.import_postcodes(args.config.get_libpq_dsn(), args.project_dir,
- tokenizer)
+ postcodes.update_postcodes(args.config.get_libpq_dsn(),
+ args.project_dir, tokenizer)
if args.continue_at is None or args.continue_at in ('load-data', 'indexing'):
if args.continue_at is not None and args.continue_at != 'load-data':
LOG.warning('Create search index for default country names.')
database_import.create_country_names(conn, tokenizer,
args.config.LANGUAGES)
+ conn.commit()
+ if args.no_updates:
+ freeze.drop_update_tables(conn)
tokenizer.finalize_import(args.config)
+
webdir = args.project_dir / 'website'
LOG.warning('Setup website at %s', webdir)
- refresh.setup_website(webdir, args.config)
+ with connect(args.config.get_libpq_dsn()) as conn:
+ refresh.setup_website(webdir, args.config, conn)
with connect(args.config.get_libpq_dsn()) as conn:
try: