Files
dougal-software/bin/import_preplots.py

47 lines
1.1 KiB
Python
Raw Normal View History

2020-08-08 23:59:13 +02:00
#!/usr/bin/python3
"""
Import preplot data.
For each preplot file defined in each survey, check for new
or modified preplots and (re-)import them into the database.
"""
from glob import glob
import sys
2020-08-08 23:59:13 +02:00
import configuration
import preplots
from datastore import Datastore
if __name__ == '__main__':
print("Reading configuration")
surveys = configuration.surveys()
print("Connecting to database")
db = Datastore()
print("Reading surveys")
for survey in surveys:
print(f'Survey: {survey["id"]} ({survey["schema"]})')
db.set_survey(survey["schema"])
for file in survey["preplots"]:
print(f"Preplot: {file['path']}")
if not db.file_in_db(file["path"]):
print("Importing")
try:
preplot = preplots.from_file(file)
except FileNotFoundError:
print(f"File does not exist: {file['path']}", file=sys.stderr)
continue
2020-08-08 23:59:13 +02:00
if type(preplot) is list:
print("Saving to DB")
db.save_preplots(preplot, file["path"], file["class"], survey["epsg"])
elif type(preplot) is str:
print(preplot)
else:
print("Already in DB")
print("Done")