]> git.openstreetmap.org Git - nominatim.git/commitdiff
Changed naming of flags.
authorRobbe Haesendonck <googleit@inuits.eu>
Tue, 26 Sep 2023 09:59:32 +0000 (11:59 +0200)
committerSarah Hoffmann <lonvia@denofr.de>
Thu, 7 Dec 2023 08:04:33 +0000 (09:04 +0100)
Made sure legacy import is also still ok

nominatim/clicmd/args.py
nominatim/clicmd/setup.py

index a52f5217e8fe5bb4e90ed9948cc94512143d7b39..433435bc6f37dd1735078f807e599a42d05fdaa7 100644 (file)
@@ -87,8 +87,7 @@ class NominatimArgs:
     offline: bool
     ignore_errors: bool
     index_noanalyse: bool
-    only_import_data: bool
-    only_prepare_database: bool
+    prepare_database: bool
 
     # Arguments to 'index'
     boundaries_only: bool
index 4df14bc519608f0281cea6ea8f1b60fe11d07934..20dbba23036bde043add24fb4b3d663f3456626a 100644 (file)
@@ -45,7 +45,7 @@ class SetupAll:
                            help='OSM file to be imported'
                                 ' (repeat for importing multiple files)')
         group1.add_argument('--continue', dest='continue_at',
-                           choices=['load-data', 'indexing', 'db-postprocess'],
+                           choices=['import-from-file', 'load-data', 'indexing', 'db-postprocess'],
                            help='Continue an import that was interrupted')
         group2 = parser.add_argument_group('Optional arguments')
         group2.add_argument('--osm2pgsql-cache', metavar='SIZE', type=int,
@@ -65,9 +65,7 @@ class SetupAll:
                            help='Continue import even when errors in SQL are present')
         group3.add_argument('--index-noanalyse', action='store_true',
                            help='Do not perform analyse operations during index (expert only)')
-        group3.add_argument('--only-import-data', action='store_true',
-                            help='Do not attempt to create the database')
-        group3.add_argument('--only-prepare-database', action='store_true',
+        group3.add_argument('--prepare-database', action='store_true',
                             help='Create the database but do not import any data')
 
 
@@ -82,15 +80,15 @@ class SetupAll:
 
         if args.continue_at is None:
             files = args.get_osm_file_list()
-            if not files and not args.only_prepare_database:
+            if not files and not args.prepare_database:
                 raise UsageError("No input files (use --osm-file).")
 
-            if args.only_import_data and args.only_prepare_database:
+            if args.continue_at is not None and args.prepare_database:
                 raise UsageError(
-                    "Cannot use --only-import-data and --only-prepare-database together."
+                    "Cannot use --continue and --prepare-database together."
                 )
 
-            if args.only_prepare_database or self._is_complete_import(args):
+            if args.prepare_database or self._is_complete_import(args):
                 LOG.warning('Creating database')
                 database_import.setup_database_skeleton(args.config.get_libpq_dsn(),
                                                         rouser=args.config.DATABASE_WEBUSER)
@@ -98,8 +96,8 @@ class SetupAll:
                 if not self._is_complete_import(args):
                     return 0
 
-            if not args.only_prepare_database or \
-                    args.only_import_data or \
+            if not args.prepare_database or \
+                    args.continue_at == 'import-from-file' or \
                     self._is_complete_import(args):
                 # Check if the correct plugins are installed
                 database_import.check_existing_database_plugins(args.config.get_libpq_dsn())
@@ -130,7 +128,7 @@ class SetupAll:
 
                 self._setup_tables(args.config, args.reverse_only)
 
-        if args.continue_at is None or args.continue_at == 'load-data':
+        if args.continue_at is None or args.continue_at in ('import-from-file', 'load-data'):
             LOG.warning('Initialise tables')
             with connect(args.config.get_libpq_dsn()) as conn:
                 database_import.truncate_data_tables(conn)
@@ -141,12 +139,12 @@ class SetupAll:
         LOG.warning("Setting up tokenizer")
         tokenizer = self._get_tokenizer(args.continue_at, args.config)
 
-        if args.continue_at is None or args.continue_at == 'load-data':
+        if args.continue_at is None or args.continue_at in ('import-from-file', 'load-data'):
             LOG.warning('Calculate postcodes')
             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 None or args.continue_at in ('import-from-file', 'load-data', 'indexing'):
             LOG.warning('Indexing places')
             indexer = Indexer(args.config.get_libpq_dsn(), tokenizer, num_threads)
             indexer.index_full(analyse=not args.index_noanalyse)
@@ -178,7 +176,7 @@ class SetupAll:
     def _is_complete_import(self, args: NominatimArgs) -> bool:
         """ Determine if the import is complete or if only the database should be prepared.
         """
-        return not args.only_import_data and not args.only_prepare_database
+        return args.continue_at is None and not args.prepare_database
 
 
     def _setup_tables(self, config: Configuration, reverse_only: bool) -> None: