Skip to content

rs_workflows/on_demand/sentinel3/s3_l2_olci.md

<< Back to index

sentinel 3 OLCI Level-2 processing.

process_s3l2_olci(flow_params=None, input_products=None) async

Sentinel-3 OLCI L2 processing.

Source code in docs/rs-client-libraries/rs_workflows/on_demand/sentinel3/s3_l2_olci.py
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
@flow(
    name="process-s3-l2-olci",
)
async def process_s3l2_olci(
    flow_params: Level2FlowParams | None = None,
    input_products: list[FlowInputProduct] | None = None,
) -> list[dict[str, Any]]:
    """
    Sentinel-3 OLCI L2 processing.
    """
    mission = "3"
    # to use s3-l2-default-setting
    flow_parameters = await (flow_params or Level2FlowParams()).resolve(mission)

    get_run_logger().info(f"Flow params: {flow_parameters}")
    # Call DPR flow
    products = await call_dpr_flow(
        FlowEnvArgs(owner_id=flow_parameters.owner_identifier),
        input_products=input_products or flow_parameters.input_products,
        external_variables={
            "start_datetime": flow_parameters.start_datetime,
            "end_datetime": flow_parameters.end_datetime,
            "satellite": flow_parameters.satellite,
        },
        dask_cluster_label=flow_parameters.dask_cluster_label,
        processor_name=flow_parameters.processor_name,
        processor_version=flow_parameters.processor_version,
        pipeline=flow_parameters.pipeline,
        unit=flow_parameters.unit,
        priority=flow_parameters.priority,
        processing_mode=flow_parameters.processing_mode,
        workflow=flow_parameters.workflow,
        generated_product_to_collection_identifier=flow_parameters.generated_product_to_collection_identifier or [],
        auxiliary_product_to_collection_identifier=flow_parameters.auxiliary_product_to_collection_identifier or [],
    )

    flow_run_id = str(runtime.flow_run.id or "unknown")
    # Trigger quicklooks independently for all published products.
    emit_olci_quicklook_event(
        level="l2",
        owner_id=flow_parameters.owner_identifier,
        products=products,
        flow_run_id=flow_run_id,
    )
    return products

process_s3l2_olci_task(*args, **kwargs) async

See: dpr_processing

Source code in docs/rs-client-libraries/rs_workflows/on_demand/sentinel3/s3_l2_olci.py
78
79
80
81
@task(name="process-s3-l2-olci")
async def process_s3l2_olci_task(*args, **kwargs) -> list[dict[str, Any]]:
    """See: dpr_processing"""
    return await process_s3l2_olci.fn(*args, **kwargs)