msc.py 1.55 KB
Newer Older
BO ZHANG's avatar
BO ZHANG committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# Process a dataset, given
# - project_id = "none"
# - obs_type = "*"
from csst_dag.dag import dags
import argparse

# python -m csst_dag.trigger.csst-msc-l1-mbi -h
# python -m csst_dag.trigger.csst-msc-l1-mbi --dataset csst-msc-c9-25sqdeg-v3 --batch-id
parser = argparse.ArgumentParser(
    description="Scheduler for MSC L1 pipeline.",
    formatter_class=argparse.ArgumentDefaultsHelpFormatter,
)

parser.add_argument("--dataset", type=str, help="Dataset name")
# parser.add_argument("--instrument", type=str, help="Instrument name", default="MSC")
parser.add_argument("--project-id", type=str, help="Project ID", default="None")
parser.add_argument("--obs-type", type=str, help="Observation type", default="WIDE")
parser.add_argument("--batch-id", type=str, help="Batch ID", default="default")
args = parser.parse_args()
print(args)

DAG_LOOP_MAP = {
    "WIDE": ["csst-msc-l1-mbi", "csst-msc-l1-sls"],
    "DEEP": ["csst-msc-l1-mbi", "csst-msc-l1-sls"],
    "BIAS": ["csst-msc-l1-qc0"],
    "DARK": ["csst-msc-l1-qc0"],
    "FLAT": ["csst-msc-l1-qc0"],
}

for obs_type, dag_ids in DAG_LOOP_MAP.items():
BO ZHANG's avatar
BO ZHANG committed
31
    print(f"* Processing {obs_type}")
BO ZHANG's avatar
BO ZHANG committed
32
    for dag_id in dag_ids:
BO ZHANG's avatar
BO ZHANG committed
33
        print(f"   - {dag_id} ··· ", end="")
BO ZHANG's avatar
BO ZHANG committed
34
        dag = dags.get_dag(dag_id=dag_id)
BO ZHANG's avatar
BO ZHANG committed
35
        msgs = dag.schedule(
BO ZHANG's avatar
BO ZHANG committed
36
37
38
39
40
41
42
43
            dataset=args.dataset,
            obs_type=args.obs_type,
            project_id=args.project_id,
            batch_id=args.batch_id,
            initial_prc_status=-2,
            final_prc_status=-2,
            demo=True,
        )
BO ZHANG's avatar
BO ZHANG committed
44
        print(f"{len(msgs)} tasks scheduled.")