Skip to content

Commit ecdef14

Browse files
authored
Merge pull request #4210 from hove-io/revert-4209-revert-4204-split_trip_geometries
Revert "Revert "[tyr][feat] add process split-trip-geometries""
2 parents bd8c596 + 2505367 commit ecdef14

File tree

2 files changed

+56
-14
lines changed

2 files changed

+56
-14
lines changed

docker/debian8/Dockerfile-tyr-worker

+4-2
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
11
FROM navitia/master
22

3-
# Install binary enrich-ntfs-with-addresses from tartare-tools
4-
ENV TARTARE_TOOLS_VERSION="v0.39.0"
3+
# Install some binaries from tartare-tools
4+
ENV TARTARE_TOOLS_VERSION="v0.42.0"
55
ARG GITHUB_TOKEN
66
RUN git config --global url."https://x-access-token:${GITHUB_TOKEN}@github.com/hove-io/".insteadOf "ssh://[email protected]/hove-io/"
77
RUN git clone -b ${TARTARE_TOOLS_VERSION} --depth 1 https://x-access-token:${GITHUB_TOKEN}@github.com/hove-io/tartare-tools
88

99
RUN cd tartare-tools \
1010
&& cargo build --release -p enrich-ntfs-with-addresses \
11+
&& cargo build --release -p split-trip-geometries \
1112
&& cp target/release/enrich-ntfs-with-addresses /usr/bin/ \
13+
&& cp target/release/split-trip-geometries /usr/bin/ \
1214
&& cd .. \
1315
&& rm -rf tartare-tools
1416

source/tyr/tyr/binarisation.py

+52-12
Original file line numberDiff line numberDiff line change
@@ -1125,11 +1125,17 @@ def poi2mimir(self, instance_name, input, autocomplete_version, job_id=None, dat
11251125
@celery.task(bind=True)
11261126
def fusio2s3(self, instance_config, filename, job_id, dataset_uid):
11271127
"""Zip fusio file and launch fusio2s3"""
1128-
filename = enrich_ntfs_with_addresses("fusio", instance_config, filename, job_id, dataset_uid)
1128+
1129+
root_dir = os.path.dirname(filename)
1130+
loki_dir = os.path.join(root_dir, "for_loki")
1131+
os.makedirs(loki_dir, 0o755)
1132+
1133+
filename = enrich_ntfs_with_addresses("fusio", instance_config, loki_dir, filename, job_id, dataset_uid)
1134+
filename = split_trip_geometries(loki_dir, filename, job_id, dataset_uid)
11291135
_inner_2s3(self, "fusio", instance_config, filename, job_id, dataset_uid)
11301136

11311137

1132-
def enrich_ntfs_with_addresses(dataset_type, instance_config, filename, job_id, dataset_uid):
1138+
def enrich_ntfs_with_addresses(dataset_type, instance_config, loki_dir, filename, job_id, dataset_uid):
11331139
"""launch enrich-ntfs-with-addresses"""
11341140

11351141
job = models.Job.query.get(job_id)
@@ -1139,13 +1145,8 @@ def enrich_ntfs_with_addresses(dataset_type, instance_config, filename, job_id,
11391145
logger = get_instance_logger(instance, task_id=job_id)
11401146
filename = zip_if_needed(filename)
11411147

1142-
file_dir = os.path.dirname(filename)
1143-
file_basename = os.path.basename(filename)
1144-
output_dir = file_dir + "/for_loki"
1145-
os.makedirs(output_dir, 0o755)
1146-
output = output_dir + "/" + file_basename
1147-
1148-
previous_ntfs_path = output_dir + "/previous_ntfs.zip"
1148+
output = os.path.join(loki_dir, "with_addresses.zip")
1149+
previous_ntfs_path = os.path.join(loki_dir, "/previous_ntfs.zip")
11491150

11501151
file_key = "{coverage}/{dataset_type}.zip".format(coverage=instance_config.name, dataset_type=dataset_type)
11511152

@@ -1171,11 +1172,50 @@ def enrich_ntfs_with_addresses(dataset_type, instance_config, filename, job_id,
11711172
if use_previous_ntfs:
11721173
params.extend(["--previous-ntfs", previous_ntfs_path])
11731174

1175+
binary = "enrich-ntfs-with-addresses"
1176+
1177+
res = None
1178+
with collect_metric(binary, job, dataset_uid):
1179+
res = launch_exec(binary, params, logger)
1180+
if res != 0:
1181+
raise ValueError("{} failed".format(binary))
1182+
except:
1183+
logger.exception("")
1184+
job.state = "failed"
1185+
dataset.state = "failed"
1186+
raise
1187+
finally:
1188+
models.db.session.commit()
1189+
1190+
return output
1191+
1192+
1193+
def split_trip_geometries(loki_dir, filename, job_id, dataset_uid):
1194+
"""launch split-trip-geometries"""
1195+
1196+
job = models.Job.query.get(job_id)
1197+
dataset = _retrieve_dataset_and_set_state("fusio", job.id)
1198+
instance = job.instance
1199+
1200+
logger = get_instance_logger(instance, task_id=job_id)
1201+
filename = zip_if_needed(filename)
1202+
1203+
output = os.path.join(loki_dir, "with_split_trip_geometries.zip")
1204+
1205+
try:
1206+
params = [
1207+
"--input",
1208+
filename,
1209+
"--output",
1210+
output,
1211+
]
1212+
1213+
binary = "split-trip-geometries"
11741214
res = None
1175-
with collect_metric("enrich-ntfs-with-addresses", job, dataset_uid):
1176-
res = launch_exec("enrich-ntfs-with-addresses", params, logger)
1215+
with collect_metric(binary, job, dataset_uid):
1216+
res = launch_exec(binary, params, logger)
11771217
if res != 0:
1178-
raise ValueError("enrich-ntfs-with-addresses failed")
1218+
raise ValueError("{} failed".format(binary))
11791219
except:
11801220
logger.exception("")
11811221
job.state = "failed"

0 commit comments

Comments
 (0)