Files
oc-deploy/docker/demo/db-1/datas/workflow.json
2026-04-14 10:17:07 +02:00

773 lines
77 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

[
{
"_id": "58314c99-c595-4ca2-8b5e-822a6774efed",
"abstractobject": {
"id": "58314c99-c595-4ca2-8b5e-822a6774efed",
"not_in_catalog": false,
"name": "alpr",
"is_draft": false,
"creator_id": "c0cece97-7730-4c2a-8c20-a30944564106",
"update_date": {"$date": "2026-04-10T07:47:52.875Z"},
"updater_id": "c0cece97-7730-4c2a-8c20-a30944564106",
"user_updater_id": "admin",
"access_mode": 0
},
"resourceset": {
"storages": ["e726020a-b68e-4abc-ab36-c3640ea3f557"],
"processings": ["0d565c87-50ae-4a73-843d-f8b2d4047772","f3c8346b-3536-4c99-8b11-1be9c01697de","2ce0323f-a85d-4b8b-a783-5280f48d634a","3041990c-5c5d-40c4-8329-c1df1b812dc3"],
"computes": ["0bb77206-371a-428e-8ae3-ff11575071e2","7b989e97-c3e7-49d2-a3a7-f959da4870b5"],
"datas": ["d573dc63-4de0-4e29-8a4e-c15cbb3aed06"]
},
"schedule_active": false,
"graph": {
"partial": false,
"zoom": 1,
"items": {
"c30100a7-1162-4c6b-a8dd-e42fd4d352a2": {
"id": "c30100a7-1162-4c6b-a8dd-e42fd4d352a2", "width": 100, "height": 100,
"position": {"id": "", "x": 351.45, "y": 563.55},
"itemresource": {"processing": {"license": "GPLv2", "open_source": false, "infrastructure": 0, "usage": {"scaling_model": "2"},
"abstractinstanciatedresource": {"abstractresource": {"purchaseinfo": null, "type": "processing",
"logo": "http://localhost:8000/static/images/alpine-logo.png",
"description": "Official Alpine Linux minimal Docker image.", "short_description": "A minimal Docker image",
"owners": [{"name": "IRT"}], "allowed_booking_modes": null,
"abstractobject": {"id": "2ce0323f-a85d-4b8b-a783-5280f48d634a", "not_in_catalog": false, "is_draft": false,
"creation_date": {"$date": "2021-09-30T14:00:00Z"}, "updater_id": "c0cece97-7730-4c2a-8c20-a30944564106",
"access_mode": 0, "name": "alpine", "creator_id": "c0cece97-7730-4c2a-8c20-a30944564106", "update_date": {"$date": "2021-09-30T14:00:00Z"}}},
"instances": [{"resourceinstance": {"abstractobject": {"access_mode": 0, "id": "2ce0323f-a85d-4b8b-a783-5280f48d634a", "not_in_catalog": false, "name": "alpine Toulouse", "is_draft": false},
"origin": {"origin_type": 0, "origin_verified": false}, "location": {"latitude": 43.6047, "longitude": 1.4442},
"partnerships": [{"peer_groups": {"*": ["*"]}, "namespace": "default"}]},
"access": {"container": {"image": "alpine:3.18", "command": "cat"}}}]}}}
},
"fd831155-e6d1-4f24-83aa-bb9af0a3c264": {
"id": "fd831155-e6d1-4f24-83aa-bb9af0a3c264", "width": 100, "height": 42,
"position": {"id": "", "x": 438.53, "y": 429.41},
"itemresource": {"processing": {"infrastructure": 0, "usage": {"scaling_model": "2"}, "open_source": false, "license": "GPLv3",
"abstractinstanciatedresource": {"abstractresource": {"type": "processing",
"logo": "http://localhost:8000/static/images/alpr-logo.png",
"description": "Open source Automatic License Plate Recognition library.", "short_description": "Open source Automatic License Plate Recognition library.",
"owners": [{"name": "IRT"}], "allowed_booking_modes": null, "purchaseinfo": null,
"abstractobject": {"name": "alpr", "is_draft": false, "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"access_mode": 0, "id": "3041990c-5c5d-40c4-8329-c1df1b812dc3", "not_in_catalog": false,
"creator_id": "c0cece97-7730-4c2a-8c20-a30944564106", "update_date": {"$date": "2021-09-30T14:00:00Z"}, "updater_id": "c0cece97-7730-4c2a-8c20-a30944564106"}},
"instances": [{"resourceinstance": {"abstractobject": {"id": "3041990c-5c5d-40c4-8329-c1df1b812dc3", "not_in_catalog": false, "name": "alpr Toulouse", "is_draft": false, "access_mode": 0},
"origin": {"origin_type": 0, "origin_verified": false}, "location": {"latitude": 43.6047, "longitude": 1.4442},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}]},
"access": {"container": {"image": "openalpr/openalpr", "command": "alpr"}}}]}}}
},
"0c5ffc8c-c7db-471d-a45f-65a14b6a93e9": {
"id": "0c5ffc8c-c7db-471d-a45f-65a14b6a93e9", "width": 100, "height": 100,
"position": {"id": "", "x": 220.18, "y": 296.47},
"itemresource": {"storage": {"storage_type": 0, "acronym": "DC_myDC",
"abstractinstanciatedresource": {"abstractresource": {"type": "storage", "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/IRT local file storage.png",
"description": "S3-compliant IRT local file storage.", "short_description": "S3 compliant IRT file storage",
"owners": [{"name": "IRT"}], "allowed_booking_modes": null,
"abstractobject": {"not_in_catalog": false, "name": "IRT local file storage", "update_date": {"$date": "2021-09-30T14:00:00Z"},
"id": "e726020a-b68e-4abc-ab36-c3640ea3f557", "is_draft": false, "creator_id": "c0cece97-7730-4c2a-8c20-a30944564106",
"creation_date": {"$date": "2021-09-30T14:00:00Z"}, "updater_id": "c0cece97-7730-4c2a-8c20-a30944564106", "access_mode": 0}},
"instances": [{"resourceinstance": {"env": [{"attr": "source", "readonly": true}],
"abstractobject": {"access_mode": 0, "id": "e726020a-b68e-4abc-ab36-c3640ea3f557", "not_in_catalog": false, "name": "IRT local file storage Toulouse", "is_draft": false},
"origin": {"origin_type": 0, "origin_verified": false}, "location": {"latitude": 43.6047, "longitude": 1.4442},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}]},
"source": "/mnt/vol", "security_level": "public", "size_type": 0, "local": true, "size": 500, "encryption": true, "redundancy": "RAID5S", "throughput": "r:300,w:350"}]}}}
},
"0e4ffccd-f0fb-478b-b3b4-173e7f7cc741": {
"id": "0e4ffccd-f0fb-478b-b3b4-173e7f7cc741", "width": 100, "height": 46,
"position": {"id": "", "x": 436.64, "y": 186.08},
"itemresource": {"processing": {"infrastructure": 0, "usage": {"scaling_model": "2"}, "open_source": false, "license": "MIT",
"abstractinstanciatedresource": {"abstractresource": {"owners": [{"name": "IRT"}], "allowed_booking_modes": null, "purchaseinfo": null, "type": "processing",
"logo": "http://localhost:8000/static/images/curl-logo.png",
"description": "Official curl Docker image. Transfers data from or to a server.", "short_description": "Transfer or retrieve information from or to a server",
"abstractobject": {"name": "CURL", "creation_date": {"$date": "2021-09-30T14:00:00Z"}, "updater_id": "c0cece97-7730-4c2a-8c20-a30944564106",
"access_mode": 0, "id": "0d565c87-50ae-4a73-843d-f8b2d4047772", "not_in_catalog": false, "is_draft": false,
"creator_id": "c0cece97-7730-4c2a-8c20-a30944564106", "update_date": {"$date": "2021-09-30T14:00:00Z"}}},
"instances": [{"resourceinstance": {"abstractobject": {"access_mode": 0, "id": "0d565c87-50ae-4a73-843d-f8b2d4047772", "not_in_catalog": false, "name": "CURL Toulouse", "is_draft": false},
"origin": {"origin_type": 0, "origin_verified": false}, "location": {"latitude": 43.6047, "longitude": 1.4442},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}]},
"access": {"container": {"image": "curlimages/curl:8.5.0", "command": "curl"}}}]}}}
},
"3968d439-f294-4607-95f0-3afb61b87f9a": {
"id": "3968d439-f294-4607-95f0-3afb61b87f9a", "width": 100, "height": 80,
"position": {"id": "", "x": 435.83, "y": 77.63},
"itemresource": {"data": {"type": "data", "quality": "low", "open_data": false, "static": true, "size": 0.59, "example": "tutut",
"abstractinstanciatedresource": {"abstractresource": {"allowed_booking_modes": null, "purchaseinfo": null,
"logo": "http://images.wondershare.com/repairit/article/guide-on-jpeg-repair-online-01.png",
"description": "Sample JPEG image of a red car with a visible license plate.", "short_description": "A casual red car",
"owners": [{"name": "Red Car"}],
"abstractobject": {"name": "Red Car", "is_draft": false, "creator_id": "c0cece97-7730-4c2a-8c20-a30944564106",
"creation_date": {"$date": "2021-09-30T14:00:00Z"}, "access_mode": 0, "id": "d573dc63-4de0-4e29-8a4e-c15cbb3aed06",
"not_in_catalog": false, "update_date": {"$date": "2021-09-30T14:00:00Z"}, "updater_id": "c0cece97-7730-4c2a-8c20-a30944564106"}},
"instances": [{"source": "http://plates.openalpr.com/h786poj.jpg",
"resourceinstance": {"location": {"longitude": 1.4442, "latitude": 43.6047},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}],
"abstractobject": {"is_draft": false, "access_mode": 0, "id": "d573dc63-4de0-4e29-8a4e-c15cbb3aed06", "not_in_catalog": false, "name": "Red Car"},
"origin": {"origin_type": 0, "origin_verified": false}}}]}}}
},
"425a4a07-9d7b-423f-9e97-0ce408279e7f": {
"id": "425a4a07-9d7b-423f-9e97-0ce408279e7f", "width": 100, "height": 100,
"position": {"id": "", "x": 638.33, "y": 295.86},
"itemresource": {"compute": {"architecture": "x86", "infrastructure": 0,
"abstractinstanciatedresource": {"abstractresource": {"type": "compute", "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/vm_logo.png",
"description": "VM hosted on opencloud-demo-2, shared with peer-1.", "short_description": "VM hosted on opencloud-demo-2 — peer-2 owned",
"owners": [{"name": "IRT Saint Exupery"}], "allowed_booking_modes": null,
"abstractobject": {"id": "0bb77206-371a-428e-8ae3-ff11575071e2", "not_in_catalog": false, "name": "VM Target 2",
"creator_id": "b87318c9-f5f8-44bb-8d48-913f4ddd6c31", "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"update_date": {"$date": "2021-09-30T14:00:00Z"}, "updater_id": "c0cece97-7730-4c2a-8c20-a30944564106", "access_mode": 0, "is_draft": false}},
"instances": [{"resourceinstance": {"origin": {"origin_type": 0, "origin_verified": false},
"location": {"latitude": 48.8566, "longitude": 2.3522},
"abstractobject": {"access_mode": 0, "id": "0bb77206-371a-428e-8ae3-ff11575071e2", "not_in_catalog": false, "name": "VM Proxmox Pierre 2", "is_draft": false}},
"security_level": "private", "power_sources": ["solar"]}]}}}
},
"775c5cb3-5dc0-46ae-949c-1c5911b2ca4c": {
"id": "775c5cb3-5dc0-46ae-949c-1c5911b2ca4c", "width": 100, "height": 100,
"position": {"id": "", "x": 643.35, "y": 429.86},
"itemresource": {"compute": {"architecture": "x86", "infrastructure": 0,
"abstractinstanciatedresource": {"abstractresource": {"type": "compute", "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/Mundi datacenter.png",
"description": "Mundi cloud computing node operated by IRT Saint-Exupéry.", "short_description": "Mundi Opencloud GPU instance — peer-1 owned",
"owners": [{"name": "IRT Saint Exupery"}], "allowed_booking_modes": null,
"abstractobject": {"not_in_catalog": false, "name": "Mundi datacenter", "is_draft": false,
"creator_id": "c0cece97-7730-4c2a-8c20-a30944564106", "update_date": {"$date": "2021-09-30T14:00:00Z"},
"id": "7b989e97-c3e7-49d2-a3a7-f959da4870b5", "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"updater_id": "c0cece97-7730-4c2a-8c20-a30944564106", "access_mode": 0}},
"instances": [{"resourceinstance": {"abstractobject": {"not_in_catalog": false, "name": "Mundi datacenter Toulouse", "is_draft": false, "access_mode": 0, "id": "7b989e97-c3e7-49d2-a3a7-f959da4870b5"},
"origin": {"origin_type": 0, "origin_verified": false}, "location": {"latitude": 43.6047, "longitude": 1.4442},
"partnerships": [{"allowed_gpus": {"RTX 3090 FE": 4}, "allowed_ram": 20000, "namespace": "default", "peer_groups": {"*": ["*"]}, "allowed_cpus": {"Intel Core i7-14700KF": 1}}]},
"security_level": "public", "power_sources": ["solaire", "charbon"]}]}}}
},
"aec3a3af-2b3c-4c4c-a849-af2a9bb554f3": {
"id": "aec3a3af-2b3c-4c4c-a849-af2a9bb554f3", "width": 100, "height": 112,
"position": {"id": "", "x": 438.03, "y": 295.96},
"itemresource": {"processing": {"license": "Apache-2.0", "open_source": true, "infrastructure": 0, "usage": {"scaling_model": "2"},
"abstractinstanciatedresource": {"abstractresource": {"type": "processing", "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/imagemagic-logo.png",
"description": "ImageMagick® image manipulation suite.", "short_description": "ImageMagick® image manipulation suite",
"owners": [{"name": "IRT"}], "allowed_booking_modes": null,
"abstractobject": {"not_in_catalog": false, "name": "imagemagic", "is_draft": false,
"creator_id": "c0cece97-7730-4c2a-8c20-a30944564106", "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"update_date": {"$date": "2021-09-30T14:00:00Z"}, "id": "f3c8346b-3536-4c99-8b11-1be9c01697de",
"updater_id": "c0cece97-7730-4c2a-8c20-a30944564106", "access_mode": 0}},
"instances": [{"resourceinstance": {"origin": {"origin_type": 0, "origin_verified": false},
"location": {"latitude": 43.6047, "longitude": 1.4442},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}],
"abstractobject": {"is_draft": false, "access_mode": 0, "id": "f3c8346b-3536-4c99-8b11-1be9c01697de", "not_in_catalog": false, "name": "imagemagic Toulouse"}},
"access": {"container": {"image": "dpokidov/imagemagick:7.1.0-62-2", "command": "magick"}}}]}}}
}
},
"links": [
{"env": [], "source": {"id": "0c5ffc8c-c7db-471d-a45f-65a14b6a93e9", "x": 319.68, "y": 345.97}, "destination": {"id": "aec3a3af-2b3c-4c4c-a849-af2a9bb554f3", "x": 436.53, "y": 351.32}, "style": {"head_radius": 6, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "color": 4294472049, "stroke": 1.7, "tension": 1, "dash_width": 2, "dash_space": 2, "end_arrow": {"id": "", "x": -1, "y": 0}, "start_arrow": {"id": "", "x": 1, "y": 0}, "end_arrow_width": 10}},
{"env": [], "source": {"id": "0c5ffc8c-c7db-471d-a45f-65a14b6a93e9", "x": 319.68, "y": 345.97}, "destination": {"id": "fd831155-e6d1-4f24-83aa-bb9af0a3c264", "x": 437.03, "y": 449.99}, "style": {"head_radius": 6, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "color": 4294472049, "stroke": 1.7, "tension": 1, "dash_width": 2, "dash_space": 2, "end_arrow": {"id": "", "x": -1, "y": 0}, "start_arrow": {"id": "", "x": 1, "y": 0}, "end_arrow_width": 10}},
{"env": [], "source": {"id": "0c5ffc8c-c7db-471d-a45f-65a14b6a93e9", "x": 269.68, "y": 395.97}, "destination": {"id": "c30100a7-1162-4c6b-a8dd-e42fd4d352a2", "x": 349.95, "y": 613.05}, "style": {"color": 4294472049, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_space": 2, "end_arrow": {"id": "", "x": -1, "y": 0}, "start_arrow": {"id": "", "x": 0, "y": 1}, "arrow_style": 0, "dash_width": 2, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}},
{"env": [], "source": {"id": "0e4ffccd-f0fb-478b-b3b4-173e7f7cc741", "x": 436.14, "y": 208.63}, "destination": {"id": "0c5ffc8c-c7db-471d-a45f-65a14b6a93e9", "x": 268.68, "y": 295.97}, "style": {"color": 4294472049, "stroke": 1.7, "head_radius": 6, "end_arrow": {"id": "", "x": 0, "y": -1}, "arrow_style": 0, "end_arrow_width": 10, "tension": 1, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": -1, "y": 0}, "arrow_direction": 0, "start_arrow_width": 10}},
{"env": [], "source": {"id": "0e4ffccd-f0fb-478b-b3b4-173e7f7cc741", "x": 536.14, "y": 208.63}, "destination": {"id": "425a4a07-9d7b-423f-9e97-0ce408279e7f", "x": 636.83, "y": 295.36}, "style": {"end_arrow": {"id": "", "x": 0, "y": -1}, "start_arrow": {"x": 1, "y": 0, "id": ""}, "color": 4294940672, "stroke": 1.7, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2}},
{"env": [], "source": {"id": "0e4ffccd-f0fb-478b-b3b4-173e7f7cc741", "x": 486.14, "y": 231.68}, "destination": {"id": "aec3a3af-2b3c-4c4c-a849-af2a9bb554f3", "x": 486.53, "y": 295.46}, "style": {"dash_space": 0, "end_arrow": {"id": "", "x": 0, "y": -1}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "tension": 1, "dash_width": 0, "start_arrow": {"id": "", "x": 0, "y": 1}, "end_arrow_width": 10, "color": 4278190080, "stroke": 1.7, "head_radius": 6}},
{"env": [], "source": {"id": "3968d439-f294-4607-95f0-3afb61b87f9a", "x": 485.33, "y": 157.15}, "destination": {"id": "0e4ffccd-f0fb-478b-b3b4-173e7f7cc741", "x": 485.14, "y": 185.58}, "style": {"start_arrow": {"id": "", "x": 0, "y": 1}, "arrow_style": 0, "arrow_direction": 0, "color": 4280391411, "stroke": 1.7, "head_radius": 6, "dash_width": 2, "end_arrow": {"id": "", "x": 0, "y": -1}, "start_arrow_width": 10, "end_arrow_width": 10, "tension": 1, "dash_space": 2}},
{"env": [], "source": {"id": "aec3a3af-2b3c-4c4c-a849-af2a9bb554f3", "x": 537.53, "y": 351.32}, "destination": {"id": "425a4a07-9d7b-423f-9e97-0ce408279e7f", "x": 636.83, "y": 345.36}, "style": {"dash_width": 2, "dash_space": 2, "start_arrow_width": 10, "end_arrow_width": 10, "end_arrow": {"x": -1, "y": 0, "id": ""}, "start_arrow": {"id": "", "x": 1, "y": 0}, "arrow_style": 0, "arrow_direction": 0, "color": 4294940672, "stroke": 1.7, "tension": 1, "head_radius": 6}},
{"env": [], "source": {"id": "aec3a3af-2b3c-4c4c-a849-af2a9bb554f3", "x": 487.53, "y": 407.18}, "destination": {"id": "fd831155-e6d1-4f24-83aa-bb9af0a3c264", "x": 487.28, "y": 428.91}, "style": {"tension": 1, "end_arrow": {"id": "", "x": 0, "y": -1}, "start_arrow": {"id": "", "x": 0, "y": 1}, "arrow_style": 0, "arrow_direction": 0, "stroke": 1.7, "head_radius": 6, "dash_width": 0, "dash_space": 0, "start_arrow_width": 10, "end_arrow_width": 10, "color": 4278190080}},
{"env": [], "source": {"id": "c30100a7-1162-4c6b-a8dd-e42fd4d352a2", "x": 450.95, "y": 613.05}, "destination": {"id": "775c5cb3-5dc0-46ae-949c-1c5911b2ca4c", "x": 691.85, "y": 529.36}, "style": {"color": 4294940672, "stroke": 1.7, "head_radius": 6, "dash_width": 2, "dash_space": 2, "end_arrow": {"x": 0, "y": 1, "id": ""}, "start_arrow": {"id": "", "x": 1, "y": 0}, "arrow_direction": 0, "tension": 1, "arrow_style": 0, "start_arrow_width": 10, "end_arrow_width": 10}},
{"env": [], "source": {"id": "fd831155-e6d1-4f24-83aa-bb9af0a3c264", "x": 538.52, "y": 449.99}, "destination": {"id": "775c5cb3-5dc0-46ae-949c-1c5911b2ca4c", "x": 641.85, "y": 479.36}, "style": {"tension": 1, "dash_space": 2, "start_arrow_width": 10, "stroke": 1.7, "head_radius": 6, "dash_width": 2, "end_arrow": {"x": -1, "y": 0, "id": ""}, "start_arrow": {"id": "", "x": 1, "y": 0}, "arrow_style": 0, "arrow_direction": 0, "end_arrow_width": 10, "color": 4294940672}},
{"env": [], "source": {"id": "fd831155-e6d1-4f24-83aa-bb9af0a3c264", "x": 488.28, "y": 471.08}, "destination": {"id": "c30100a7-1162-4c6b-a8dd-e42fd4d352a2", "x": 449.95, "y": 613.05}, "style": {"start_arrow_width": 10, "end_arrow_width": 10, "color": 4278190080, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_space": 0, "end_arrow": {"y": 0, "id": "", "x": 1}, "start_arrow": {"id": "", "x": 0, "y": 1}, "dash_width": 0, "arrow_style": 0, "arrow_direction": 0}}
]
},
"shared": [],
"exposes": {},
"outputs": {
"0c5ffc8c-c7db-471d-a45f-65a14b6a93e9": [{"name": "SOURCE", "value": "/mnt/vol", "readonly": false, "optionnal": false}],
"0e4ffccd-f0fb-478b-b3b4-173e7f7cc741": [{"name": "FILENAME", "value": "image.jpg", "readonly": false, "optionnal": false}],
"3968d439-f294-4607-95f0-3afb61b87f9a": [{"readonly": false, "optionnal": false, "name": "SOURCE", "value": "http://plates.openalpr.com/h786poj.jpg"}],
"aec3a3af-2b3c-4c4c-a849-af2a9bb554f3": [{"optionnal": false, "name": "OUTPUT_FILENAME", "value": "treated_image.jpg", "readonly": false}],
"fd831155-e6d1-4f24-83aa-bb9af0a3c264": [{"name": "OUTPUT_FILENAME", "value": "alpr.json", "readonly": false, "optionnal": false}]
},
"env": {
"0c5ffc8c-c7db-471d-a45f-65a14b6a93e9": [{"optionnal": false, "name": "SOURCE", "value": "/mnt/vol", "readonly": false}],
"0e4ffccd-f0fb-478b-b3b4-173e7f7cc741": [{"value": "image.jpg", "readonly": false, "optionnal": false, "name": "FILENAME"}],
"aec3a3af-2b3c-4c4c-a849-af2a9bb554f3": [{"readonly": false, "optionnal": false, "name": "OUTPUT_FILENAME", "value": "treated_image.jpg"}],
"c30100a7-1162-4c6b-a8dd-e42fd4d352a2": [{"readonly": true, "optionnal": false, "name": "ALPR_OUTPUT_FILENAME", "value": "alpr.json", "origin": "fd831155-e6d1-4f24-83aa-bb9af0a3c264"}],
"fd831155-e6d1-4f24-83aa-bb9af0a3c264": [{"optionnal": false, "name": "OUTPUT_FILENAME", "value": "alpr.json", "readonly": false}]
},
"inputs": {
"0e4ffccd-f0fb-478b-b3b4-173e7f7cc741": [
{"name": "IRT_LOCAL_FILE_STORAGE_SOURCE", "value": "/mnt/vol", "origin": "0c5ffc8c-c7db-471d-a45f-65a14b6a93e9", "readonly": true, "optionnal": false},
{"name": "RED_CAR_SOURCE", "value": "http://plates.openalpr.com/h786poj.jpg", "origin": "3968d439-f294-4607-95f0-3afb61b87f9a", "readonly": true, "optionnal": false}
],
"aec3a3af-2b3c-4c4c-a849-af2a9bb554f3": [
{"readonly": true, "optionnal": false, "name": "IRT_LOCAL_FILE_STORAGE_SOURCE", "value": "/mnt/vol", "origin": "0c5ffc8c-c7db-471d-a45f-65a14b6a93e9"},
{"value": "image.jpg", "origin": "0e4ffccd-f0fb-478b-b3b4-173e7f7cc741", "readonly": true, "optionnal": false, "name": "CURL_FILENAME"}
],
"fd831155-e6d1-4f24-83aa-bb9af0a3c264": [
{"name": "IRT_LOCAL_FILE_STORAGE_SOURCE", "value": "/mnt/vol", "origin": "0c5ffc8c-c7db-471d-a45f-65a14b6a93e9", "readonly": true, "optionnal": false},
{"name": "IMAGEMAGIC_OUTPUT_FILENAME", "value": "treated_image.jpg", "origin": "aec3a3af-2b3c-4c4c-a849-af2a9bb554f3", "readonly": true, "optionnal": false}
],
"c30100a7-1162-4c6b-a8dd-e42fd4d352a2": [
{"value": "/mnt/vol", "origin": "0c5ffc8c-c7db-471d-a45f-65a14b6a93e9", "readonly": true, "optionnal": false, "name": "IRT_LOCAL_FILE_STORAGE_SOURCE"},
{"readonly": true, "optionnal": false, "name": "ALPR_OUTPUT_FILENAME", "value": "alpr.json", "origin": "fd831155-e6d1-4f24-83aa-bb9af0a3c264"}
]
},
"args": {
"0e4ffccd-f0fb-478b-b3b4-173e7f7cc741": ["-SL", "$RED_CAR_SOURCE", "-o", "$IRT_LOCAL_FILE_STORAGE_SOURCE/$FILENAME"],
"aec3a3af-2b3c-4c4c-a849-af2a9bb554f3": ["$IRT_LOCAL_FILE_STORAGE_SOURCE/$CURL_FILENAME", "$IRT_LOCAL_FILE_STORAGE_SOURCE/$OUTPUT_FILENAME"],
"fd831155-e6d1-4f24-83aa-bb9af0a3c264": ["--country", "eu", "--json", "$IRT_LOCAL_FILE_STORAGE_SOURCE/$IMAGEMAGIC_OUTPUT_FILENAME", ">", "$IRT_LOCAL_FILE_STORAGE_SOURCE/$OUTPUT_FILENAME"],
"c30100a7-1162-4c6b-a8dd-e42fd4d352a2": ["$IRT_LOCAL_FILE_STORAGE_SOURCE/$ALPR_OUTPUT_FILENAME"]
}
},
{
"_id": "11111111-1111-4111-8111-111111111111",
"abstractobject": {
"id": "11111111-1111-4111-8111-111111111111",
"not_in_catalog": false,
"name": "image-meta-extractor",
"is_draft": false,
"creator_id": "c0cece97-7730-4c2a-8c20-a30944564106",
"creation_date": {"$date": "2026-04-10T00:00:00.000Z"},
"update_date": {"$date": "2026-04-10T00:00:00.000Z"},
"updater_id": "c0cece97-7730-4c2a-8c20-a30944564106",
"user_updater_id": "admin",
"access_mode": 0
},
"resourceset": {
"storages": ["e726020a-b68e-4abc-ab36-c3640ea3f557"],
"processings": ["0d565c87-50ae-4a73-843d-f8b2d4047772", "aa110001-aa11-4001-8001-aaaaaaaaaaaa"],
"computes": ["7b989e97-c3e7-49d2-a3a7-f959da4870b5", "0bb77206-371a-428e-8ae3-ff11575071e2"],
"datas": ["d573dc63-4de0-4e29-8a4e-c15cbb3aed06"]
},
"schedule_active": false,
"graph": {
"partial": false,
"zoom": 1,
"items": {
"a1000001-0000-4000-8000-000000000001": {
"id": "a1000001-0000-4000-8000-000000000001", "width": 100, "height": 80,
"position": {"id": "", "x": 430, "y": 60},
"itemresource": {"data": {"type": "data", "quality": "low", "open_data": false, "static": true, "size": 0.59, "example": "http://plates.openalpr.com/h786poj.jpg",
"abstractinstanciatedresource": {"abstractresource": {"allowed_booking_modes": null, "purchaseinfo": null,
"logo": "http://images.wondershare.com/repairit/article/guide-on-jpeg-repair-online-01.png",
"description": "Sample JPEG image of a red car with a visible license plate.",
"short_description": "Sample image of a red car with license plate",
"owners": [{"name": "OpenALPR"}],
"abstractobject": {"name": "Red Car", "is_draft": false, "creator_id": "c0cece97-7730-4c2a-8c20-a30944564106",
"creation_date": {"$date": "2021-09-30T14:00:00Z"}, "access_mode": 0,
"id": "d573dc63-4de0-4e29-8a4e-c15cbb3aed06", "not_in_catalog": false,
"update_date": {"$date": "2021-09-30T14:00:00Z"}, "updater_id": "c0cece97-7730-4c2a-8c20-a30944564106"}},
"instances": [{"source": "http://plates.openalpr.com/h786poj.jpg",
"resourceinstance": {"location": {"longitude": 1.4442, "latitude": 43.6047},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}],
"abstractobject": {"is_draft": false, "access_mode": 0, "id": "d573dc63-4de0-4e29-8a4e-c15cbb3aed06", "not_in_catalog": false, "name": "Red Car"},
"origin": {"origin_type": 0, "origin_verified": false}}}]}}}
},
"a1000002-0000-4000-8000-000000000002": {
"id": "a1000002-0000-4000-8000-000000000002", "width": 100, "height": 46,
"position": {"id": "", "x": 430, "y": 200},
"itemresource": {"processing": {"license": "MIT", "open_source": true, "infrastructure": 0, "usage": {"scaling_model": "2"},
"abstractinstanciatedresource": {"abstractresource": {"type": "processing", "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/curl-logo.png",
"description": "Official curl Docker image. Transfers data from or to a server.",
"short_description": "Transfer data from/to a server — official curl image",
"owners": [{"name": "IRT"}], "allowed_booking_modes": null,
"abstractobject": {"id": "0d565c87-50ae-4a73-843d-f8b2d4047772", "name": "CURL", "is_draft": false,
"creator_id": "c0cece97-7730-4c2a-8c20-a30944564106", "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"update_date": {"$date": "2021-09-30T14:00:00Z"}, "updater_id": "c0cece97-7730-4c2a-8c20-a30944564106",
"access_mode": 0, "not_in_catalog": false}},
"instances": [{"resourceinstance": {"abstractobject": {"id": "0d565c87-50ae-4a73-843d-f8b2d4047772", "name": "CURL Toulouse", "is_draft": false, "access_mode": 0, "not_in_catalog": false},
"origin": {"origin_type": 0, "origin_verified": false}, "location": {"latitude": 43.6047, "longitude": 1.4442},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}]},
"access": {"container": {"image": "curlimages/curl:8.5.0", "command": "curl"}}}]}}}
},
"a1000003-0000-4000-8000-000000000003": {
"id": "a1000003-0000-4000-8000-000000000003", "width": 100, "height": 46,
"position": {"id": "", "x": 430, "y": 340},
"itemresource": {"processing": {"license": "PSF-2.0", "open_source": true, "infrastructure": 0, "usage": {"scaling_model": "2"},
"abstractinstanciatedresource": {"abstractresource": {"type": "processing", "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/alpine-logo.png",
"description": "Official Python 3.11 slim Docker image for data processing scripts.",
"short_description": "Official Python 3.11 runtime for data processing",
"owners": [{"name": "Python Software Foundation"}], "allowed_booking_modes": null,
"abstractobject": {"id": "aa110001-aa11-4001-8001-aaaaaaaaaaaa", "name": "Python Data Processor", "is_draft": false,
"creator_id": "c0cece97-7730-4c2a-8c20-a30944564106", "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"update_date": {"$date": "2026-04-10T00:00:00Z"}, "updater_id": "c0cece97-7730-4c2a-8c20-a30944564106",
"access_mode": 0, "not_in_catalog": false}},
"instances": [{"resourceinstance": {"abstractobject": {"id": "aa110001-aa11-4001-8001-aaaaaaaaaaaa", "name": "Python Data Processor Toulouse", "is_draft": false, "access_mode": 0, "not_in_catalog": false},
"origin": {"origin_type": 0, "origin_verified": false}, "location": {"latitude": 43.6047, "longitude": 1.4442},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}]},
"access": {"container": {"image": "python:3.11-slim", "command": "python"}}}]}}}
},
"a1000004-0000-4000-8000-000000000004": {
"id": "a1000004-0000-4000-8000-000000000004", "width": 100, "height": 100,
"position": {"id": "", "x": 210, "y": 270},
"itemresource": {"storage": {"storage_type": 5, "acronym": "DC_myDC",
"abstractinstanciatedresource": {"abstractresource": {"type": "storage", "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/IRT local file storage.png",
"description": "S3-compliant IRT local file storage.", "short_description": "S3-compliant local file storage (peer-1)",
"owners": [{"name": "IRT"}], "allowed_booking_modes": null,
"abstractobject": {"id": "e726020a-b68e-4abc-ab36-c3640ea3f557", "name": "IRT local file storage", "is_draft": false,
"creator_id": "c0cece97-7730-4c2a-8c20-a30944564106", "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"update_date": {"$date": "2021-09-30T14:00:00Z"}, "updater_id": "c0cece97-7730-4c2a-8c20-a30944564106", "access_mode": 0, "not_in_catalog": false}},
"instances": [{"resourceinstance": {"env": [{"attr": "source", "readonly": true}],
"abstractobject": {"id": "e726020a-b68e-4abc-ab36-c3640ea3f557", "name": "IRT local file storage Toulouse", "is_draft": false, "access_mode": 0, "not_in_catalog": false},
"origin": {"origin_type": 0, "origin_verified": false}, "location": {"latitude": 43.6047, "longitude": 1.4442},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}]},
"source": "/mnt/vol", "security_level": "public", "size_type": 0, "local": true, "size": 500, "encryption": true, "redundancy": "RAID5S", "throughput": "r:300,w:350"}]}}}
},
"a1000005-0000-4000-8000-000000000005": {
"id": "a1000005-0000-4000-8000-000000000005", "width": 100, "height": 100,
"position": {"id": "", "x": 640, "y": 190},
"itemresource": {"compute": {"architecture": "x86", "infrastructure": 0,
"abstractinstanciatedresource": {"abstractresource": {"type": "compute", "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/Mundi datacenter.png",
"description": "Mundi cloud computing node, peer-1 owned. Executes the CURL download step.",
"short_description": "Mundi Opencloud GPU instance — peer-1 owned",
"owners": [{"name": "IRT Saint Exupery"}], "allowed_booking_modes": null,
"abstractobject": {"id": "7b989e97-c3e7-49d2-a3a7-f959da4870b5", "name": "Mundi datacenter", "is_draft": false,
"creator_id": "c0cece97-7730-4c2a-8c20-a30944564106", "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"update_date": {"$date": "2021-09-30T14:00:00Z"}, "updater_id": "c0cece97-7730-4c2a-8c20-a30944564106", "access_mode": 0, "not_in_catalog": false}},
"instances": [{"resourceinstance": {"abstractobject": {"id": "7b989e97-c3e7-49d2-a3a7-f959da4870b5", "name": "Mundi datacenter Toulouse", "is_draft": false, "access_mode": 0},
"origin": {"origin_type": 0, "origin_verified": false}, "location": {"latitude": 43.6047, "longitude": 1.4442},
"partnerships": [{"allowed_gpus": {"RTX 3090 FE": 4}, "allowed_ram": 20000, "namespace": "default", "peer_groups": {"*": ["*"]}, "allowed_cpus": {"Intel Core i7-14700KF": 1}}]},
"security_level": "public", "power_sources": ["solaire", "charbon"]}]}}}
},
"a1000006-0000-4000-8000-000000000006": {
"id": "a1000006-0000-4000-8000-000000000006", "width": 100, "height": 100,
"position": {"id": "", "x": 640, "y": 330},
"itemresource": {"compute": {"architecture": "x86", "infrastructure": 0,
"abstractinstanciatedresource": {"abstractresource": {"type": "compute", "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/vm_logo.png",
"description": "VM hosted on opencloud-demo-2, peer-2 owned. Executes the Python analysis step.",
"short_description": "VM hosted on opencloud-demo-2 — peer-2 owned",
"owners": [{"name": "IRT Saint Exupery"}], "allowed_booking_modes": null,
"abstractobject": {"id": "0bb77206-371a-428e-8ae3-ff11575071e2", "name": "VM Target 2", "is_draft": false,
"creator_id": "b87318c9-f5f8-44bb-8d48-913f4ddd6c31", "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"update_date": {"$date": "2021-09-30T14:00:00Z"}, "updater_id": "c0cece97-7730-4c2a-8c20-a30944564106", "access_mode": 0, "not_in_catalog": false}},
"instances": [{"resourceinstance": {"abstractobject": {"id": "0bb77206-371a-428e-8ae3-ff11575071e2", "name": "VM Proxmox Pierre 2", "is_draft": false, "access_mode": 0},
"origin": {"origin_type": 0, "origin_verified": false}, "location": {"latitude": 48.8566, "longitude": 2.3522}},
"security_level": "private", "power_sources": ["solar"]}]}}}
}
},
"links": [
{"env": [], "source": {"id": "a1000001-0000-4000-8000-000000000001", "x": 480, "y": 140}, "destination": {"id": "a1000002-0000-4000-8000-000000000002", "x": 480, "y": 200}, "style": {"color": 4280391411, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": 0, "y": 1}, "end_arrow": {"id": "", "x": 0, "y": -1}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}},
{"env": [], "source": {"id": "a1000002-0000-4000-8000-000000000002", "x": 430, "y": 223}, "destination": {"id": "a1000004-0000-4000-8000-000000000004", "x": 310, "y": 320}, "style": {"color": 4294472049, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": -1, "y": 0}, "end_arrow": {"id": "", "x": 1, "y": 0}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}},
{"env": [], "source": {"id": "a1000004-0000-4000-8000-000000000004", "x": 310, "y": 320}, "destination": {"id": "a1000003-0000-4000-8000-000000000003", "x": 430, "y": 363}, "style": {"color": 4294472049, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": 1, "y": 0}, "end_arrow": {"id": "", "x": -1, "y": 0}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}},
{"env": [], "source": {"id": "a1000002-0000-4000-8000-000000000002", "x": 530, "y": 223}, "destination": {"id": "a1000005-0000-4000-8000-000000000005", "x": 640, "y": 240}, "style": {"color": 4294940672, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": 1, "y": 0}, "end_arrow": {"id": "", "x": -1, "y": 0}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}},
{"env": [], "source": {"id": "a1000003-0000-4000-8000-000000000003", "x": 530, "y": 363}, "destination": {"id": "a1000006-0000-4000-8000-000000000006", "x": 640, "y": 380}, "style": {"color": 4294940672, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": 1, "y": 0}, "end_arrow": {"id": "", "x": -1, "y": 0}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}}
]
},
"shared": [],
"exposes": {},
"outputs": {
"a1000001-0000-4000-8000-000000000001": [{"name": "SOURCE", "value": "http://plates.openalpr.com/h786poj.jpg", "readonly": false, "optionnal": false}],
"a1000004-0000-4000-8000-000000000004": [{"name": "SOURCE", "value": "/mnt/vol", "readonly": false, "optionnal": false}],
"a1000002-0000-4000-8000-000000000002": [{"name": "FILENAME", "value": "image.jpg", "readonly": false, "optionnal": false}],
"a1000003-0000-4000-8000-000000000003": [{"name": "OUTPUT_FILENAME", "value": "metadata.json", "readonly": false, "optionnal": false}]
},
"env": {
"a1000002-0000-4000-8000-000000000002": [{"name": "FILENAME", "value": "image.jpg", "readonly": false, "optionnal": false}],
"a1000003-0000-4000-8000-000000000003": [{"name": "OUTPUT_FILENAME", "value": "metadata.json", "readonly": false, "optionnal": false}]
},
"inputs": {
"a1000002-0000-4000-8000-000000000002": [
{"name": "RED_CAR_SOURCE", "value": "http://plates.openalpr.com/h786poj.jpg", "origin": "a1000001-0000-4000-8000-000000000001", "readonly": true, "optionnal": false},
{"name": "IRT_LOCAL_FILE_STORAGE_SOURCE", "value": "/mnt/vol", "origin": "a1000004-0000-4000-8000-000000000004", "readonly": true, "optionnal": false}
],
"a1000003-0000-4000-8000-000000000003": [
{"name": "IRT_LOCAL_FILE_STORAGE_SOURCE", "value": "/mnt/vol", "origin": "a1000004-0000-4000-8000-000000000004", "readonly": true, "optionnal": false},
{"name": "CURL_FILENAME", "value": "image.jpg", "origin": "a1000002-0000-4000-8000-000000000002", "readonly": true, "optionnal": false}
]
},
"args": {
"a1000002-0000-4000-8000-000000000002": ["-SL", "$RED_CAR_SOURCE", "-o", "$IRT_LOCAL_FILE_STORAGE_SOURCE/$FILENAME"],
"a1000003-0000-4000-8000-000000000003": ["analyze_image.py", "--input", "$IRT_LOCAL_FILE_STORAGE_SOURCE/$CURL_FILENAME", "--output", "$IRT_LOCAL_FILE_STORAGE_SOURCE/$OUTPUT_FILENAME"]
}
},
{
"_id": "22222222-2222-4222-8222-222222222222",
"abstractobject": {
"id": "22222222-2222-4222-8222-222222222222",
"not_in_catalog": false,
"name": "api-monitoring-stack",
"is_draft": false,
"creator_id": "c0cece97-7730-4c2a-8c20-a30944564106",
"creation_date": {"$date": "2026-04-10T00:00:00.000Z"},
"update_date": {"$date": "2026-04-10T00:00:00.000Z"},
"updater_id": "c0cece97-7730-4c2a-8c20-a30944564106",
"user_updater_id": "admin",
"access_mode": 0
},
"resourceset": {
"storages": ["ff660006-ff66-4006-8006-ffffffffffff"],
"processings": ["0d565c87-50ae-4a73-843d-f8b2d4047772", "dd440004-dd44-4004-8004-dddddddddddd", "cc330003-cc33-4003-8003-cccccccccccc"],
"computes": ["7b989e97-c3e7-49d2-a3a7-f959da4870b5", "ee550005-ee55-4005-8005-eeeeeeeeeeee"],
"datas": ["hh880008-hh88-4008-8008-hhhhhhhhhhhh"]
},
"schedule_active": false,
"graph": {
"partial": false,
"zoom": 1,
"items": {
"b2000001-0000-4000-8000-000000000001": {
"id": "b2000001-0000-4000-8000-000000000001", "width": 100, "height": 80,
"position": {"id": "", "x": 430, "y": 60},
"itemresource": {"data": {"type": "data", "quality": "high", "open_data": false, "static": false, "size": 1200,
"example": "{\"ts\":\"2026-04-10T08:00:00Z\",\"method\":\"GET\",\"path\":\"/workflow\",\"status\":200,\"latency_ms\":45}",
"abstractinstanciatedresource": {"abstractresource": {"allowed_booking_modes": null, "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/alpine-logo.png",
"description": "Structured NDJSON HTTP access-log stream from the peer-2 API gateway. ~1.2 GB/day at 300 req/min.",
"short_description": "Peer-2 API gateway NDJSON access logs",
"owners": [{"name": "opencloud-demo-2"}],
"abstractobject": {"name": "Web API Logs", "is_draft": false, "creator_id": "b87318c9-f5f8-44bb-8d48-913f4ddd6c31",
"creation_date": {"$date": "2021-09-30T14:00:00Z"}, "access_mode": 0,
"id": "hh880008-hh88-4008-8008-hhhhhhhhhhhh", "not_in_catalog": false,
"update_date": {"$date": "2026-04-10T00:00:00Z"}, "updater_id": "b87318c9-f5f8-44bb-8d48-913f4ddd6c31"}},
"instances": [{"source": "http://localhost:9000/logs/api.log",
"resourceinstance": {"location": {"longitude": 2.3522, "latitude": 48.8566},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}],
"abstractobject": {"is_draft": false, "access_mode": 0, "id": "hh880008-hh88-4008-8008-hhhhhhhhhhhh", "not_in_catalog": false, "name": "Web API Logs Paris"},
"env": [{"attr": "source", "readonly": true}],
"origin": {"origin_type": 0, "origin_verified": false}}}]}}}
},
"b2000002-0000-4000-8000-000000000002": {
"id": "b2000002-0000-4000-8000-000000000002", "width": 100, "height": 46,
"position": {"id": "", "x": 430, "y": 200},
"itemresource": {"processing": {"license": "MIT", "open_source": true, "infrastructure": 0, "usage": {"scaling_model": "2"},
"abstractinstanciatedresource": {"abstractresource": {"type": "processing", "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/curl-logo.png",
"description": "Official curl Docker image. Fetches the API log file from the peer-2 gateway endpoint and writes it to MinIO storage.",
"short_description": "Official curl image — multi-protocol data fetcher",
"owners": [{"name": "IRT"}], "allowed_booking_modes": null,
"abstractobject": {"id": "0d565c87-50ae-4a73-843d-f8b2d4047772", "name": "CURL", "is_draft": false,
"creator_id": "c0cece97-7730-4c2a-8c20-a30944564106", "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"update_date": {"$date": "2021-09-30T14:00:00Z"}, "updater_id": "c0cece97-7730-4c2a-8c20-a30944564106",
"access_mode": 0, "not_in_catalog": false}},
"instances": [{"resourceinstance": {"abstractobject": {"id": "0d565c87-50ae-4a73-843d-f8b2d4047772", "name": "CURL Paris", "is_draft": false, "access_mode": 0, "not_in_catalog": false},
"origin": {"origin_type": 0, "origin_verified": false}, "location": {"latitude": 48.8566, "longitude": 2.3522},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}]},
"access": {"container": {"image": "curlimages/curl:8.5.0", "command": "curl"}}}]}}}
},
"b2000003-0000-4000-8000-000000000003": {
"id": "b2000003-0000-4000-8000-000000000003", "width": 100, "height": 46,
"position": {"id": "", "x": 430, "y": 340},
"itemresource": {"processing": {"license": "BSD-3-Clause", "open_source": true, "infrastructure": 0, "usage": {"scaling_model": "2"},
"abstractinstanciatedresource": {"abstractresource": {"type": "processing", "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/alpine-logo.png",
"description": "Official Redis 7-alpine image. Ingests structured API-status objects from storage and caches them with a 300-second TTL.",
"short_description": "Official Redis 7-alpine — TTL cache with pub/sub support",
"owners": [{"name": "Redis Ltd"}], "allowed_booking_modes": null,
"abstractobject": {"id": "dd440004-dd44-4004-8004-dddddddddddd", "name": "Redis Cache", "is_draft": false,
"creator_id": "b87318c9-f5f8-44bb-8d48-913f4ddd6c31", "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"update_date": {"$date": "2026-04-10T00:00:00Z"}, "updater_id": "b87318c9-f5f8-44bb-8d48-913f4ddd6c31",
"access_mode": 0, "not_in_catalog": false}},
"instances": [{"resourceinstance": {"abstractobject": {"id": "dd440004-dd44-4004-8004-dddddddddddd", "name": "Redis Cache Paris", "is_draft": false, "access_mode": 0, "not_in_catalog": false},
"origin": {"origin_type": 0, "origin_verified": false}, "location": {"latitude": 48.8566, "longitude": 2.3522},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}]},
"access": {"container": {"image": "redis:7-alpine", "command": "redis-server"}}}]}}}
},
"b2000004-0000-4000-8000-000000000004": {
"id": "b2000004-0000-4000-8000-000000000004", "width": 100, "height": 46,
"position": {"id": "", "x": 430, "y": 480},
"itemresource": {"processing": {"license": "BSD-2-Clause", "open_source": true, "infrastructure": 0, "usage": {"scaling_model": "2"},
"abstractinstanciatedresource": {"abstractresource": {"type": "processing", "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/alpine-logo.png",
"description": "Official Nginx 1.25-alpine image. Serves Redis-cached API status JSON as an HTTP endpoint on port 80 for the OpenCloud operator dashboard.",
"short_description": "Official Nginx 1.25-alpine — HTTP frontend and static result endpoint",
"owners": [{"name": "nginx"}], "allowed_booking_modes": null,
"abstractobject": {"id": "cc330003-cc33-4003-8003-cccccccccccc", "name": "Nginx Gateway", "is_draft": false,
"creator_id": "b87318c9-f5f8-44bb-8d48-913f4ddd6c31", "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"update_date": {"$date": "2026-04-10T00:00:00Z"}, "updater_id": "b87318c9-f5f8-44bb-8d48-913f4ddd6c31",
"access_mode": 0, "not_in_catalog": false}},
"instances": [{"resourceinstance": {"abstractobject": {"id": "cc330003-cc33-4003-8003-cccccccccccc", "name": "Nginx Gateway Paris", "is_draft": false, "access_mode": 0, "not_in_catalog": false},
"origin": {"origin_type": 0, "origin_verified": false}, "location": {"latitude": 48.8566, "longitude": 2.3522},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}]},
"access": {"container": {"image": "nginx:1.25-alpine", "command": "nginx"}}}]}}}
},
"b2000005-0000-4000-8000-000000000005": {
"id": "b2000005-0000-4000-8000-000000000005", "width": 100, "height": 100,
"position": {"id": "", "x": 210, "y": 340},
"itemresource": {"storage": {"storage_type": 5, "acronym": "DC_myDC",
"abstractinstanciatedresource": {"abstractresource": {"type": "storage", "purchaseinfo": null,
"logo": "http://min.io/resources/img/logo/ORIGINAL/vertical/dark/minioVerticalLogo-Dark.png",
"description": "MinIO NVMe RAID-6 1 TB object store, peer-2 owned. Primary sink for CURL log dumps and Redis snapshot exports.",
"short_description": "Peer-2 MinIO NVMe RAID-6 — 1 TB, AES-256, S3-compatible",
"owners": [{"name": "opencloud-demo-2"}], "allowed_booking_modes": null,
"abstractobject": {"id": "ff660006-ff66-4006-8006-ffffffffffff", "name": "Peer2 MinIO Storage", "is_draft": false,
"creator_id": "b87318c9-f5f8-44bb-8d48-913f4ddd6c31", "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"update_date": {"$date": "2026-04-10T00:00:00Z"}, "updater_id": "b87318c9-f5f8-44bb-8d48-913f4ddd6c31", "access_mode": 0, "not_in_catalog": false}},
"instances": [{"resourceinstance": {"env": [{"attr": "source", "readonly": true}],
"abstractobject": {"id": "ff660006-ff66-4006-8006-ffffffffffff", "name": "Peer2 MinIO Storage Paris", "is_draft": false, "access_mode": 0, "not_in_catalog": false},
"origin": {"origin_type": 0, "origin_verified": false}, "location": {"latitude": 48.8566, "longitude": 2.3522},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}]},
"source": "/mnt/minio", "security_level": "public", "size_type": 0, "local": true, "size": 1000, "encryption": true, "redundancy": "RAID6", "throughput": "r:500,w:400"}]}}}
},
"b2000006-0000-4000-8000-000000000006": {
"id": "b2000006-0000-4000-8000-000000000006", "width": 100, "height": 100,
"position": {"id": "", "x": 640, "y": 380},
"itemresource": {"compute": {"architecture": "x86", "infrastructure": 0,
"abstractinstanciatedresource": {"abstractresource": {"type": "compute", "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/vm_logo.png",
"description": "Peer-2 bare-metal cluster, 4 nodes × dual EPYC 9654 + 2× RTX 4090. Executes Redis and Nginx steps.",
"short_description": "Peer-2 bare-metal cluster — dual EPYC 9654 + 2× RTX 4090, peer-2 owned",
"owners": [{"name": "opencloud-demo-2"}], "allowed_booking_modes": null,
"abstractobject": {"id": "ee550005-ee55-4005-8005-eeeeeeeeeeee", "name": "Demo Peer2 Server", "is_draft": false,
"creator_id": "b87318c9-f5f8-44bb-8d48-913f4ddd6c31", "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"update_date": {"$date": "2026-04-10T00:00:00Z"}, "updater_id": "b87318c9-f5f8-44bb-8d48-913f4ddd6c31", "access_mode": 0, "not_in_catalog": false}},
"instances": [{"resourceinstance": {"abstractobject": {"id": "ee550005-ee55-4005-8005-eeeeeeeeeeee", "name": "Demo Peer2 Server Paris", "is_draft": false, "access_mode": 0},
"location": {"latitude": 48.8566, "longitude": 2.3522},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}]},
"security_level": "public", "power_sources": ["solaire"]}]}}}
},
"b2000007-0000-4000-8000-000000000007": {
"id": "b2000007-0000-4000-8000-000000000007", "width": 100, "height": 100,
"position": {"id": "", "x": 640, "y": 190},
"itemresource": {"compute": {"architecture": "x86", "infrastructure": 0,
"abstractinstanciatedresource": {"abstractresource": {"type": "compute", "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/Mundi datacenter.png",
"description": "IRT Saint-Exupéry GPU cluster, peer-1 owned. Executes the CURL ingestion step for the api-monitoring workflow.",
"short_description": "IRT Saint-Exupéry GPU cluster — peer-1 owned",
"owners": [{"name": "IRT Saint Exupery"}], "allowed_booking_modes": null,
"abstractobject": {"id": "7b989e97-c3e7-49d2-a3a7-f959da4870b5", "name": "Mundi datacenter", "is_draft": false,
"creator_id": "c0cece97-7730-4c2a-8c20-a30944564106", "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"update_date": {"$date": "2021-09-30T14:00:00Z"}, "updater_id": "c0cece97-7730-4c2a-8c20-a30944564106", "access_mode": 0, "not_in_catalog": false}},
"instances": [{"resourceinstance": {"abstractobject": {"id": "7b989e97-c3e7-49d2-a3a7-f959da4870b5", "name": "Mundi datacenter Toulouse", "is_draft": false, "access_mode": 0},
"location": {"latitude": 43.6047, "longitude": 1.4442},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}]},
"security_level": "public", "power_sources": ["solaire", "charbon"]}]}}}
}
},
"links": [
{"env": [], "source": {"id": "b2000001-0000-4000-8000-000000000001", "x": 480, "y": 140}, "destination": {"id": "b2000002-0000-4000-8000-000000000002", "x": 480, "y": 200}, "style": {"color": 4280391411, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": 0, "y": 1}, "end_arrow": {"id": "", "x": 0, "y": -1}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}},
{"env": [], "source": {"id": "b2000002-0000-4000-8000-000000000002", "x": 430, "y": 223}, "destination": {"id": "b2000005-0000-4000-8000-000000000005", "x": 310, "y": 390}, "style": {"color": 4294472049, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": -1, "y": 0}, "end_arrow": {"id": "", "x": 1, "y": 0}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}},
{"env": [], "source": {"id": "b2000005-0000-4000-8000-000000000005", "x": 310, "y": 390}, "destination": {"id": "b2000003-0000-4000-8000-000000000003", "x": 430, "y": 363}, "style": {"color": 4294472049, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": 1, "y": 0}, "end_arrow": {"id": "", "x": -1, "y": 0}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}},
{"env": [], "source": {"id": "b2000003-0000-4000-8000-000000000003", "x": 430, "y": 386}, "destination": {"id": "b2000004-0000-4000-8000-000000000004", "x": 430, "y": 480}, "style": {"color": 4278190080, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": 0, "y": 1}, "end_arrow": {"id": "", "x": 0, "y": -1}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}},
{"env": [], "source": {"id": "b2000002-0000-4000-8000-000000000002", "x": 530, "y": 223}, "destination": {"id": "b2000007-0000-4000-8000-000000000007", "x": 640, "y": 240}, "style": {"color": 4294940672, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": 1, "y": 0}, "end_arrow": {"id": "", "x": -1, "y": 0}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}},
{"env": [], "source": {"id": "b2000003-0000-4000-8000-000000000003", "x": 530, "y": 363}, "destination": {"id": "b2000006-0000-4000-8000-000000000006", "x": 640, "y": 430}, "style": {"color": 4294940672, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": 1, "y": 0}, "end_arrow": {"id": "", "x": -1, "y": 0}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}},
{"env": [], "source": {"id": "b2000004-0000-4000-8000-000000000004", "x": 530, "y": 503}, "destination": {"id": "b2000006-0000-4000-8000-000000000006", "x": 640, "y": 480}, "style": {"color": 4294940672, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": 1, "y": 0}, "end_arrow": {"id": "", "x": -1, "y": 0}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}}
]
},
"shared": [],
"exposes": {},
"outputs": {
"b2000001-0000-4000-8000-000000000001": [{"name": "SOURCE", "value": "http://localhost:9000/logs/api.log", "readonly": false, "optionnal": false}],
"b2000005-0000-4000-8000-000000000005": [{"name": "SOURCE", "value": "/mnt/minio", "readonly": false, "optionnal": false}],
"b2000002-0000-4000-8000-000000000002": [{"name": "LOGFILE", "value": "api.log", "readonly": false, "optionnal": false}],
"b2000003-0000-4000-8000-000000000003": [{"name": "CACHE_KEY", "value": "api_status", "readonly": false, "optionnal": false}]
},
"env": {
"b2000002-0000-4000-8000-000000000002": [{"name": "LOGFILE", "value": "api.log", "readonly": false, "optionnal": false}],
"b2000003-0000-4000-8000-000000000003": [{"name": "CACHE_KEY", "value": "api_status", "readonly": false, "optionnal": false}, {"name": "CACHE_TTL", "value": "300", "readonly": false, "optionnal": false}]
},
"inputs": {
"b2000002-0000-4000-8000-000000000002": [
{"name": "WEB_API_LOGS_SOURCE", "value": "http://localhost:9000/logs/api.log", "origin": "b2000001-0000-4000-8000-000000000001", "readonly": true, "optionnal": false},
{"name": "PEER2_MINIO_STORAGE_SOURCE", "value": "/mnt/minio", "origin": "b2000005-0000-4000-8000-000000000005", "readonly": true, "optionnal": false}
],
"b2000003-0000-4000-8000-000000000003": [
{"name": "PEER2_MINIO_STORAGE_SOURCE", "value": "/mnt/minio", "origin": "b2000005-0000-4000-8000-000000000005", "readonly": true, "optionnal": false},
{"name": "CURL_LOGFILE", "value": "api.log", "origin": "b2000002-0000-4000-8000-000000000002", "readonly": true, "optionnal": false}
],
"b2000004-0000-4000-8000-000000000004": [
{"name": "PEER2_MINIO_STORAGE_SOURCE", "value": "/mnt/minio", "origin": "b2000005-0000-4000-8000-000000000005", "readonly": true, "optionnal": false},
{"name": "REDIS_CACHE_KEY", "value": "api_status", "origin": "b2000003-0000-4000-8000-000000000003", "readonly": true, "optionnal": false}
]
},
"args": {
"b2000002-0000-4000-8000-000000000002": ["-SL", "$WEB_API_LOGS_SOURCE", "-o", "$PEER2_MINIO_STORAGE_SOURCE/$LOGFILE"],
"b2000003-0000-4000-8000-000000000003": ["redis-server", "--save", "", "--appendonly", "no"],
"b2000004-0000-4000-8000-000000000004": ["nginx", "-g", "daemon off;"]
}
},
{
"_id": "33333333-3333-4333-8333-333333333333",
"abstractobject": {
"id": "33333333-3333-4333-8333-333333333333",
"not_in_catalog": false,
"name": "sensor-data-collector",
"is_draft": false,
"creator_id": "c0cece97-7730-4c2a-8c20-a30944564106",
"creation_date": {"$date": "2026-04-10T00:00:00.000Z"},
"update_date": {"$date": "2026-04-10T00:00:00.000Z"},
"updater_id": "c0cece97-7730-4c2a-8c20-a30944564106",
"user_updater_id": "admin",
"access_mode": 0
},
"resourceset": {
"storages": ["e726020a-b68e-4abc-ab36-c3640ea3f557"],
"processings": ["2ce0323f-a85d-4b8b-a783-5280f48d634a", "aa110001-aa11-4001-8001-aaaaaaaaaaaa", "e518d7a4-426a-4900-94e5-300767b1bb31"],
"computes": ["7b989e97-c3e7-49d2-a3a7-f959da4870b5", "ee550005-ee55-4005-8005-eeeeeeeeeeee"],
"datas": ["gg770007-gg77-4007-8007-gggggggggggg"]
},
"schedule_active": false,
"graph": {
"partial": false,
"zoom": 1,
"items": {
"c3000001-0000-4000-8000-000000000001": {
"id": "c3000001-0000-4000-8000-000000000001", "width": 100, "height": 80,
"position": {"id": "", "x": 430, "y": 60},
"itemresource": {"data": {"type": "data", "quality": "medium", "open_data": false, "static": false, "size": 0.25,
"example": "http://plates.openalpr.com/eu-001.jpg",
"abstractinstanciatedresource": {"abstractresource": {"allowed_booking_modes": null, "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/alpine-logo.png",
"description": "Rolling JPEG snapshots from a Toulouse ring-road traffic camera, 0.2 Hz, 1920×1080 px.",
"short_description": "Toulouse ring-road live JPEG feed — 1920×1080, 0.2 Hz",
"owners": [{"name": "IRT"}],
"abstractobject": {"name": "Traffic Camera Feed", "is_draft": false, "creator_id": "c0cece97-7730-4c2a-8c20-a30944564106",
"creation_date": {"$date": "2021-09-30T14:00:00Z"}, "access_mode": 0,
"id": "gg770007-gg77-4007-8007-gggggggggggg", "not_in_catalog": false,
"update_date": {"$date": "2026-04-10T00:00:00Z"}, "updater_id": "c0cece97-7730-4c2a-8c20-a30944564106"}},
"instances": [{"source": "http://plates.openalpr.com/eu-001.jpg",
"resourceinstance": {"location": {"longitude": 1.4442, "latitude": 43.6047},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}],
"abstractobject": {"is_draft": false, "access_mode": 0, "id": "gg770007-gg77-4007-8007-gggggggggggg", "not_in_catalog": false, "name": "Traffic Camera Feed Toulouse"},
"env": [{"attr": "source", "readonly": true}],
"origin": {"origin_type": 0, "origin_verified": false}}}]}}}
},
"c3000002-0000-4000-8000-000000000002": {
"id": "c3000002-0000-4000-8000-000000000002", "width": 100, "height": 46,
"position": {"id": "", "x": 430, "y": 200},
"itemresource": {"processing": {"license": "MIT", "open_source": true, "infrastructure": 0, "usage": {"scaling_model": "2"},
"abstractinstanciatedresource": {"abstractresource": {"type": "processing", "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/alpine-logo.png",
"description": "Official Alpine 3.18 image. Downloads the camera frame via wget and saves it to IRT shared storage.",
"short_description": "Official Alpine 3.18 — minimal shell environment for scripting sidecars",
"owners": [{"name": "IRT"}], "allowed_booking_modes": null,
"abstractobject": {"id": "2ce0323f-a85d-4b8b-a783-5280f48d634a", "name": "alpine", "is_draft": false,
"creator_id": "c0cece97-7730-4c2a-8c20-a30944564106", "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"update_date": {"$date": "2021-09-30T14:00:00Z"}, "updater_id": "c0cece97-7730-4c2a-8c20-a30944564106",
"access_mode": 0, "not_in_catalog": false}},
"instances": [{"resourceinstance": {"abstractobject": {"id": "2ce0323f-a85d-4b8b-a783-5280f48d634a", "name": "alpine Toulouse", "is_draft": false, "access_mode": 0, "not_in_catalog": false},
"origin": {"origin_type": 0, "origin_verified": false}, "location": {"latitude": 43.6047, "longitude": 1.4442},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}]},
"access": {"container": {"image": "alpine:3.18", "command": "sh"}}}]}}}
},
"c3000003-0000-4000-8000-000000000003": {
"id": "c3000003-0000-4000-8000-000000000003", "width": 100, "height": 46,
"position": {"id": "", "x": 430, "y": 340},
"itemresource": {"processing": {"license": "PSF-2.0", "open_source": true, "infrastructure": 0, "usage": {"scaling_model": "2"},
"abstractinstanciatedresource": {"abstractresource": {"type": "processing", "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/alpine-logo.png",
"description": "Official Python 3.11-slim image. Reads the camera frame from IRT storage, runs vehicle detection with OpenCV, and writes vehicle_meta.json.",
"short_description": "Official Python 3.11-slim — frame analysis and vehicle detection runtime",
"owners": [{"name": "Python Software Foundation"}], "allowed_booking_modes": null,
"abstractobject": {"id": "aa110001-aa11-4001-8001-aaaaaaaaaaaa", "name": "Python Data Processor", "is_draft": false,
"creator_id": "c0cece97-7730-4c2a-8c20-a30944564106", "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"update_date": {"$date": "2026-04-10T00:00:00Z"}, "updater_id": "c0cece97-7730-4c2a-8c20-a30944564106",
"access_mode": 0, "not_in_catalog": false}},
"instances": [{"resourceinstance": {"abstractobject": {"id": "aa110001-aa11-4001-8001-aaaaaaaaaaaa", "name": "Python Data Processor Paris", "is_draft": false, "access_mode": 0, "not_in_catalog": false},
"origin": {"origin_type": 0, "origin_verified": false}, "location": {"latitude": 48.8566, "longitude": 2.3522},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}]},
"access": {"container": {"image": "python:3.11-slim", "command": "python"}}}]}}}
},
"c3000004-0000-4000-8000-000000000004": {
"id": "c3000004-0000-4000-8000-000000000004", "width": 100, "height": 46,
"position": {"id": "", "x": 430, "y": 480},
"itemresource": {"processing": {"license": "EPL-2.0", "open_source": true, "infrastructure": 0, "usage": {"scaling_model": "2"},
"abstractinstanciatedresource": {"abstractresource": {"type": "processing", "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/mosquitto-logo.png",
"description": "Official Eclipse Mosquitto 2.0.18 MQTT broker. Reads vehicle_meta.json from IRT storage and publishes it to sensors/camera/vehicle topic.",
"short_description": "Official Eclipse Mosquitto 2.0 — MQTT v5/v3 broker with QoS and ACL support",
"owners": [{"name": "IRT"}], "allowed_booking_modes": null,
"abstractobject": {"id": "e518d7a4-426a-4900-94e5-300767b1bb31", "name": "Mosquitto server", "is_draft": false,
"creator_id": "c0cece97-7730-4c2a-8c20-a30944564106", "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"update_date": {"$date": "2021-09-30T14:00:00Z"}, "updater_id": "c0cece97-7730-4c2a-8c20-a30944564106",
"access_mode": 0, "not_in_catalog": false}},
"instances": [{"resourceinstance": {"abstractobject": {"id": "e518d7a4-426a-4900-94e5-300767b1bb31", "name": "Mosquitto server Toulouse", "is_draft": false, "access_mode": 0, "not_in_catalog": false},
"origin": {"origin_type": 0, "origin_verified": false}, "location": {"latitude": 43.6047, "longitude": 1.4442},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}]},
"access": {"container": {"image": "eclipse-mosquitto:2.0.18", "command": "mosquitto"}}}]}}}
},
"c3000005-0000-4000-8000-000000000005": {
"id": "c3000005-0000-4000-8000-000000000005", "width": 100, "height": 100,
"position": {"id": "", "x": 210, "y": 340},
"itemresource": {"storage": {"storage_type": 5, "acronym": "DC_myDC",
"abstractinstanciatedresource": {"abstractresource": {"type": "storage", "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/IRT local file storage.png",
"description": "IRT SSD RAID-5S scratch store, peer-1 owned. Shared intermediary for all sensor-collector pipeline stages.",
"short_description": "IRT RAID-5S SSD scratch store — 500 GB, AES-256, S3-compatible (peer-1)",
"owners": [{"name": "IRT"}], "allowed_booking_modes": null,
"abstractobject": {"id": "e726020a-b68e-4abc-ab36-c3640ea3f557", "name": "IRT local file storage", "is_draft": false,
"creator_id": "c0cece97-7730-4c2a-8c20-a30944564106", "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"update_date": {"$date": "2021-09-30T14:00:00Z"}, "updater_id": "c0cece97-7730-4c2a-8c20-a30944564106", "access_mode": 0, "not_in_catalog": false}},
"instances": [{"resourceinstance": {"env": [{"attr": "source", "readonly": true}],
"abstractobject": {"id": "e726020a-b68e-4abc-ab36-c3640ea3f557", "name": "IRT local file storage Toulouse", "is_draft": false, "access_mode": 0, "not_in_catalog": false},
"origin": {"origin_type": 0, "origin_verified": false}, "location": {"latitude": 43.6047, "longitude": 1.4442},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}]},
"source": "/mnt/vol", "security_level": "public", "size_type": 0, "local": true, "size": 500, "encryption": true, "redundancy": "RAID5S", "throughput": "r:300,w:350"}]}}}
},
"c3000006-0000-4000-8000-000000000006": {
"id": "c3000006-0000-4000-8000-000000000006", "width": 100, "height": 100,
"position": {"id": "", "x": 640, "y": 330},
"itemresource": {"compute": {"architecture": "x86", "infrastructure": 0,
"abstractinstanciatedresource": {"abstractresource": {"type": "compute", "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/vm_logo.png",
"description": "Peer-2 bare-metal cluster, 4 nodes × dual EPYC 9654 + 2× RTX 4090, peer-2 owned. Executes Python vehicle-detection step cross-peer.",
"short_description": "Peer-2 bare-metal cluster — dual EPYC 9654 + 2× RTX 4090, peer-2 owned",
"owners": [{"name": "opencloud-demo-2"}], "allowed_booking_modes": null,
"abstractobject": {"id": "ee550005-ee55-4005-8005-eeeeeeeeeeee", "name": "Demo Peer2 Server", "is_draft": false,
"creator_id": "b87318c9-f5f8-44bb-8d48-913f4ddd6c31", "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"update_date": {"$date": "2026-04-10T00:00:00Z"}, "updater_id": "b87318c9-f5f8-44bb-8d48-913f4ddd6c31", "access_mode": 0, "not_in_catalog": false}},
"instances": [{"resourceinstance": {"abstractobject": {"id": "ee550005-ee55-4005-8005-eeeeeeeeeeee", "name": "Demo Peer2 Server Paris", "is_draft": false, "access_mode": 0},
"location": {"latitude": 48.8566, "longitude": 2.3522},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}]},
"security_level": "public", "power_sources": ["solaire"]}]}}}
},
"c3000007-0000-4000-8000-000000000007": {
"id": "c3000007-0000-4000-8000-000000000007", "width": 100, "height": 100,
"position": {"id": "", "x": 640, "y": 190},
"itemresource": {"compute": {"architecture": "x86", "infrastructure": 0,
"abstractinstanciatedresource": {"abstractresource": {"type": "compute", "purchaseinfo": null,
"logo": "http://localhost:8000/static/images/Mundi datacenter.png",
"description": "IRT Saint-Exupéry GPU cluster, peer-1 owned. Executes the Alpine frame-download and Mosquitto publish steps.",
"short_description": "IRT Saint-Exupéry GPU cluster — peer-1 owned",
"owners": [{"name": "IRT Saint Exupery"}], "allowed_booking_modes": null,
"abstractobject": {"id": "7b989e97-c3e7-49d2-a3a7-f959da4870b5", "name": "Mundi datacenter", "is_draft": false,
"creator_id": "c0cece97-7730-4c2a-8c20-a30944564106", "creation_date": {"$date": "2021-09-30T14:00:00Z"},
"update_date": {"$date": "2021-09-30T14:00:00Z"}, "updater_id": "c0cece97-7730-4c2a-8c20-a30944564106", "access_mode": 0, "not_in_catalog": false}},
"instances": [{"resourceinstance": {"abstractobject": {"id": "7b989e97-c3e7-49d2-a3a7-f959da4870b5", "name": "Mundi datacenter Toulouse", "is_draft": false, "access_mode": 0},
"location": {"latitude": 43.6047, "longitude": 1.4442},
"partnerships": [{"namespace": "default", "peer_groups": {"*": ["*"]}}]},
"security_level": "public", "power_sources": ["solaire", "charbon"]}]}}}
}
},
"links": [
{"env": [], "source": {"id": "c3000001-0000-4000-8000-000000000001", "x": 480, "y": 140}, "destination": {"id": "c3000002-0000-4000-8000-000000000002", "x": 480, "y": 200}, "style": {"color": 4280391411, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": 0, "y": 1}, "end_arrow": {"id": "", "x": 0, "y": -1}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}},
{"env": [], "source": {"id": "c3000002-0000-4000-8000-000000000002", "x": 430, "y": 223}, "destination": {"id": "c3000005-0000-4000-8000-000000000005", "x": 310, "y": 390}, "style": {"color": 4294472049, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": -1, "y": 0}, "end_arrow": {"id": "", "x": 1, "y": 0}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}},
{"env": [], "source": {"id": "c3000005-0000-4000-8000-000000000005", "x": 310, "y": 390}, "destination": {"id": "c3000003-0000-4000-8000-000000000003", "x": 430, "y": 363}, "style": {"color": 4294472049, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": 1, "y": 0}, "end_arrow": {"id": "", "x": -1, "y": 0}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}},
{"env": [], "source": {"id": "c3000003-0000-4000-8000-000000000003", "x": 430, "y": 386}, "destination": {"id": "c3000005-0000-4000-8000-000000000005", "x": 310, "y": 440}, "style": {"color": 4294472049, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": -1, "y": 0}, "end_arrow": {"id": "", "x": 1, "y": 0}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}},
{"env": [], "source": {"id": "c3000005-0000-4000-8000-000000000005", "x": 310, "y": 440}, "destination": {"id": "c3000004-0000-4000-8000-000000000004", "x": 430, "y": 503}, "style": {"color": 4294472049, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": 1, "y": 0}, "end_arrow": {"id": "", "x": -1, "y": 0}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}},
{"env": [], "source": {"id": "c3000002-0000-4000-8000-000000000002", "x": 530, "y": 223}, "destination": {"id": "c3000007-0000-4000-8000-000000000007", "x": 640, "y": 240}, "style": {"color": 4294940672, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": 1, "y": 0}, "end_arrow": {"id": "", "x": -1, "y": 0}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}},
{"env": [], "source": {"id": "c3000003-0000-4000-8000-000000000003", "x": 530, "y": 363}, "destination": {"id": "c3000006-0000-4000-8000-000000000006", "x": 640, "y": 380}, "style": {"color": 4294940672, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": 1, "y": 0}, "end_arrow": {"id": "", "x": -1, "y": 0}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}},
{"env": [], "source": {"id": "c3000004-0000-4000-8000-000000000004", "x": 530, "y": 503}, "destination": {"id": "c3000007-0000-4000-8000-000000000007", "x": 640, "y": 290}, "style": {"color": 4294940672, "stroke": 1.7, "tension": 1, "head_radius": 6, "dash_width": 2, "dash_space": 2, "start_arrow": {"id": "", "x": 1, "y": 0}, "end_arrow": {"id": "", "x": -1, "y": 0}, "arrow_style": 0, "arrow_direction": 0, "start_arrow_width": 10, "end_arrow_width": 10}}
]
},
"shared": [],
"exposes": {},
"outputs": {
"c3000001-0000-4000-8000-000000000001": [{"name": "SOURCE", "value": "http://plates.openalpr.com/eu-001.jpg", "readonly": false, "optionnal": false}],
"c3000005-0000-4000-8000-000000000005": [{"name": "SOURCE", "value": "/mnt/vol", "readonly": false, "optionnal": false}],
"c3000002-0000-4000-8000-000000000002": [{"name": "FRAME_FILENAME", "value": "frame.jpg", "readonly": false, "optionnal": false}],
"c3000003-0000-4000-8000-000000000003": [{"name": "ANALYSIS_FILENAME", "value": "vehicle_meta.json", "readonly": false, "optionnal": false}]
},
"env": {
"c3000002-0000-4000-8000-000000000002": [{"name": "FRAME_FILENAME", "value": "frame.jpg", "readonly": false, "optionnal": false}],
"c3000003-0000-4000-8000-000000000003": [{"name": "ANALYSIS_FILENAME", "value": "vehicle_meta.json", "readonly": false, "optionnal": false}]
},
"inputs": {
"c3000002-0000-4000-8000-000000000002": [
{"name": "TRAFFIC_CAMERA_FEED_SOURCE", "value": "http://plates.openalpr.com/eu-001.jpg", "origin": "c3000001-0000-4000-8000-000000000001", "readonly": true, "optionnal": false},
{"name": "IRT_LOCAL_FILE_STORAGE_SOURCE", "value": "/mnt/vol", "origin": "c3000005-0000-4000-8000-000000000005", "readonly": true, "optionnal": false}
],
"c3000003-0000-4000-8000-000000000003": [
{"name": "IRT_LOCAL_FILE_STORAGE_SOURCE", "value": "/mnt/vol", "origin": "c3000005-0000-4000-8000-000000000005", "readonly": true, "optionnal": false},
{"name": "ALPINE_FRAME_FILENAME", "value": "frame.jpg", "origin": "c3000002-0000-4000-8000-000000000002", "readonly": true, "optionnal": false}
],
"c3000004-0000-4000-8000-000000000004": [
{"name": "IRT_LOCAL_FILE_STORAGE_SOURCE", "value": "/mnt/vol", "origin": "c3000005-0000-4000-8000-000000000005", "readonly": true, "optionnal": false},
{"name": "PYTHON_ANALYSIS_FILENAME", "value": "vehicle_meta.json", "origin": "c3000003-0000-4000-8000-000000000003", "readonly": true, "optionnal": false}
]
},
"args": {
"c3000002-0000-4000-8000-000000000002": ["wget", "-O", "$IRT_LOCAL_FILE_STORAGE_SOURCE/$FRAME_FILENAME", "$TRAFFIC_CAMERA_FEED_SOURCE"],
"c3000003-0000-4000-8000-000000000003": ["analyze_frame.py", "--input", "$IRT_LOCAL_FILE_STORAGE_SOURCE/$ALPINE_FRAME_FILENAME", "--output", "$IRT_LOCAL_FILE_STORAGE_SOURCE/$ANALYSIS_FILENAME"],
"c3000004-0000-4000-8000-000000000004": ["-c", "/mosquitto/config/mosquitto.conf"]
}
}
]