From d623caa747b165f88e3a8b744bb5e1fbd5c63c6a Mon Sep 17 00:00:00 2001 From: Yutaka Kondo Date: Mon, 27 Jan 2025 09:15:23 +0900 Subject: [PATCH 1/6] update svg Signed-off-by: Yutaka Kondo --- docker/Dockerfile.svg | 1273 +++++++++++++++++++---------------------- 1 file changed, 585 insertions(+), 688 deletions(-) diff --git a/docker/Dockerfile.svg b/docker/Dockerfile.svg index a9465e1a552..8afd9d20b49 100644 --- a/docker/Dockerfile.svg +++ b/docker/Dockerfile.svg @@ -1,692 +1,589 @@ - - - - - G - - - cluster_legend - - - - - key - FROM ... - COPY --from=...  - RUN --mount=(.*)from=...  - - - - key2 - - - - - - - key:e->key2:w - - - - - - key:e->key2:w - - - - - - key:e->key2:w - - - - - - external_image_0 - - $BASE_IMAGE - - - - stage_0 - - base - - - - external_image_0->stage_0 - - - - - - stage_2 - - rosdep-depend - - - - external_image_0->stage_2 - - - - - - stage_1 - - base-cuda - - - - stage_0->stage_1 - - - - - - stage_8 - - core-devel - - - - stage_0->stage_8 - - - - - - stage_18 - - universe-sensing-perception - - - - stage_0->stage_18 - - - - - - - stage_20 - - universe-localization-mapping - - - - stage_0->stage_20 - - - - - stage_21 - - universe-planning-control - - - - stage_0->stage_21 - - - - - - stage_22 - - universe-vehicle-system - - - - stage_0->stage_22 - - - - - - stage_23 - - universe - - - - stage_0->stage_23 - - - - - - - stage_2->stage_8 - - - - - - stage_3 - - rosdep-universe-sensing-perception-depend - - - - stage_2->stage_3 - - - - - - stage_4 - - rosdep-universe-localization-mapping-depend - - - - stage_2->stage_4 - - - - - - stage_5 - - rosdep-universe-planning-control-depend - - - - stage_2->stage_5 - - - - - - stage_6 - - rosdep-universe-vehicle-system-depend - - - - stage_2->stage_6 - - - - - - stage_7 - - rosdep-universe-depend - - - - stage_2->stage_7 - - - - - - - stage_9 - - universe-common-devel - - - - stage_2->stage_9 - - - - - - stage_19 - - universe-sensing-perception-cuda - - - - stage_1->stage_19 - - - - - - stage_24 - - universe-cuda - - - - stage_1->stage_24 - - - - - - stage_8->stage_9 - - - - - - stage_3->stage_18 - - - - - - stage_3->stage_19 - - - - - - stage_11 - - universe-sensing-perception-devel - - - - stage_3->stage_11 - - - - - - stage_12 - - universe-sensing-perception-devel-cuda - - - - stage_3->stage_12 - - - - - - - stage_4->stage_20 - - - - - - - stage_13 - - universe-localization-mapping-devel - - - - stage_4->stage_13 - - - - - - stage_5->stage_21 - - - - - - stage_14 - - universe-planning-control-devel - - - - stage_5->stage_14 - - - - - - stage_6->stage_22 - - - - - - - stage_15 - - universe-vehicle-system-devel - - - - stage_6->stage_15 - - - - - - stage_7->stage_23 - - - - - - stage_7->stage_24 - - - - - - - stage_16 - - universe-devel - - - - stage_7->stage_16 - - - - - - stage_17 - - universe-devel-cuda - - - - stage_7->stage_17 - - - - - - stage_9->stage_11 - - - - - - stage_9->stage_13 - - - - - - stage_9->stage_14 - - - - - - stage_9->stage_15 - - - - - - stage_9->stage_16 - - - - - - stage_10 - - universe-common-devel-cuda - - - - stage_9->stage_10 - - - - - - stage_11->stage_18 - - - - - - stage_11->stage_12 - - - - - - stage_11->stage_16 - - - - - - stage_12->stage_19 - - - - - - stage_12->stage_17 - - - - - - stage_13->stage_20 - - - - - - stage_13->stage_16 - - - - - - stage_14->stage_21 - - - - - - stage_14->stage_16 - - - - - - stage_15->stage_22 - - - - - - stage_15->stage_16 - - - - - - stage_16->stage_23 - - - - - - stage_16->stage_17 - - - - - - stage_17->stage_24 - - - - - - stage_10->stage_12 - - - - - - stage_10->stage_17 - - - - + + +G + + +cluster_legend + + + + +key +FROM ...  +COPY --from=...  +RUN --mount=(.*)from=...  + + + +key2 +  +  +  + + + +key:e->key2:w + + + + + +key:e->key2:w + + + + + +key:e->key2:w + + + + + +external_image_0 + +$BASE_IMAGE + + + +stage_0 + +rosdep-depend + + + +external_image_0->stage_0 + + + + + +stage_1 + +rosdep-universe-visualization-depend + + + +stage_0->stage_1 + + + + + +stage_2 + +rosdep-universe-sensing-perception-depend + + + +stage_0->stage_2 + + + + + +stage_3 + +rosdep-universe-localization-mapping-depend + + + +stage_0->stage_3 + + + + + + +stage_4 + +rosdep-universe-planning-control-depend + + + +stage_0->stage_4 + + + + + +stage_5 + +rosdep-universe-vehicle-system-depend + + + +stage_0->stage_5 + + + + + +stage_6 + +rosdep-universe-depend + + + +stage_0->stage_6 + + + + + +stage_7 + +core-devel + + + +stage_0->stage_7 + + + + + +stage_8 + +universe-common-devel + + + +stage_0->stage_8 + + + + + +stage_15 + +universe-visualization-devel + + + +stage_1->stage_15 + + + + + +stage_23 + +universe-visualization + + + +stage_1->stage_23 + + + + +stage_10 + +universe-sensing-perception-devel + + + +stage_2->stage_10 + + + + + +stage_11 + +universe-sensing-perception-devel-cuda + + + +stage_2->stage_11 + + + + + + +stage_18 + +universe-sensing-perception + + + +stage_2->stage_18 + + + + + +stage_19 + +universe-sensing-perception-cuda + + + +stage_2->stage_19 + + + + + +stage_12 + +universe-localization-mapping-devel + + + +stage_3->stage_12 + + + + + +stage_20 + +universe-localization-mapping + + + +stage_3->stage_20 + + + + + +stage_13 + +universe-planning-control-devel + + + +stage_4->stage_13 + + + + + +stage_21 + +universe-planning-control + + + +stage_4->stage_21 + + + + + +stage_14 + +universe-vehicle-system-devel + + + +stage_5->stage_14 + + + + + +stage_22 + +universe-vehicle-system + + + +stage_5->stage_22 + + + + + +stage_16 + +universe-devel + + + +stage_6->stage_16 + + + + + +stage_17 + +universe-devel-cuda + + + +stage_6->stage_17 + + + + + +stage_24 + +universe + + + +stage_6->stage_24 + + + + + + +stage_25 + +universe-cuda + + + +stage_6->stage_25 + + + + +stage_7->stage_8 + + + + + +stage_8->stage_15 + + + + + +stage_8->stage_10 + + + + + +stage_8->stage_12 + + + + + +stage_8->stage_13 + + + + + +stage_8->stage_14 + + + + + +stage_8->stage_16 + + + + + +stage_9 + +universe-common-devel-cuda + + + +stage_8->stage_9 + + + + + +stage_15->stage_23 + + + + + +stage_15->stage_16 + + + + + +stage_10->stage_11 + + + + + +stage_10->stage_18 + + + + + +stage_10->stage_16 + + + + + +stage_11->stage_19 + + + + + +stage_11->stage_17 + + + + + +stage_12->stage_20 + + + + + +stage_12->stage_16 + + + + + +stage_13->stage_21 + + + + + +stage_13->stage_16 + + + + + +stage_14->stage_22 + + + + + +stage_14->stage_16 + + + + + +stage_16->stage_17 + + + + + +stage_16->stage_24 + + + + + +stage_17->stage_25 + + + + + +external_image_1 + +$AUTOWARE_BASE_IMAGE + + + +external_image_1->stage_7 + + + + + +external_image_1->stage_23 + + + + + + +external_image_1->stage_18 + + + + + +external_image_1->stage_20 + + + + + +external_image_1->stage_21 + + + + + +external_image_1->stage_22 + + + + + +external_image_1->stage_24 + + + + + + + + +stage_9->stage_11 + + + + + +stage_9->stage_17 + + + + + +external_image_2 + +$AUTOWARE_BASE_CUDA_IMAGE + + + +external_image_2->stage_19 + + + + + +external_image_2->stage_25 + + + + + From 33beebedff07c03b920d96a70046f2830233e46d Mon Sep 17 00:00:00 2001 From: Yutaka Kondo Date: Mon, 27 Jan 2025 09:21:32 +0900 Subject: [PATCH 2/6] update readme Signed-off-by: Yutaka Kondo --- docker/README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docker/README.md b/docker/README.md index c5bdf3a7fca..bd9baee8313 100644 --- a/docker/README.md +++ b/docker/README.md @@ -68,6 +68,8 @@ ros2 launch autoware_pointcloud_preprocessor preprocessor.launch.xml ## Multi-stage Dockerfile structure + + ![](./Dockerfile.svg) The suffix `-devel` (e.g. `universe-devel`) is intended for use as a [development container](https://containers.dev). On the other hand, those without the `-devel` suffix (e.g. `universe`) are intended to be used as a runtime container. From f745cf241b6f836412b8a9262aa1e0c1f1dab209 Mon Sep 17 00:00:00 2001 From: Yutaka Kondo Date: Mon, 27 Jan 2025 09:42:09 +0900 Subject: [PATCH 3/6] update sentence Signed-off-by: Yutaka Kondo --- docker/README.md | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/docker/README.md b/docker/README.md index bd9baee8313..d76138cc518 100644 --- a/docker/README.md +++ b/docker/README.md @@ -78,11 +78,11 @@ The suffix `-devel` (e.g. `universe-devel`) is intended for use as a [developmen This is a base image of this Dockerfile. [`ros:humble-ros-base-jammy`](https://hub.docker.com/_/ros/tags?page=&page_size=&ordering=&name=humble-ros-base-jammy) will be given. -### `base` (from Dockerfile.base) +### `$AUTOWARE_BASE_IMAGE` (from Dockerfile.base) This stage performs only the basic setup required for all Autoware images. -### `base-cuda` (from Dockerfile.base) +### `$AUTOWARE_BASE_CUDA_IMAGE` (from Dockerfile.base) This stage is built on top of `base` and adds the CUDA runtime environment and artifacts. @@ -113,7 +113,7 @@ This stage installs the dependency packages based on `/rosdep-universe-common-de ### `universe-common-devel-cuda` -This stage is build on top of `universe-common-devel` and installs the CUDA development environment. +This stage is built on top of `universe-common-devel` and installs the CUDA development environment. ### `universe-sensing-perception-devel` @@ -137,6 +137,10 @@ This stage is an Autoware Universe Sensing/Perception runtime container. It only This stage installs the CUDA runtime environment and copies the binaries built in the `universe-sensing-perception-devel-cuda` stage. +### `universe-visualization-devel` + +This stage installs the dependency packages based on `/rosdep-universe-visualization-depend-packages.txt` and builds the visualization packages. + ### `universe-visualization` This stage is a Autoware Universe Visualization runtime container. It only includes the dependencies given by `/rosdep-universe-visualization-exec-depend-packages.txt` and the binaries built in the `universe-visualization-devel` stage. @@ -182,6 +186,7 @@ This stage installs the dependency packages based on `/rosdep-universe-depend-pa - `universe-localization-mapping-devel` - `universe-planning-control-devel` - `universe-vehicle-system-devel` +- `universe-visualization-devel` Then it builds the remaining packages of `autoware.repos`: @@ -193,7 +198,6 @@ Then it builds the remaining packages of `autoware.repos`: - `universe/autoware.universe/launch` - `universe/autoware.universe/simulator` - `universe/autoware.universe/tools` -- `universe/autoware.universe/visualization` - `vehicle` This stage provides an all-in-one development container to Autoware developers. By running the host's source code with volume mounting, it allows for easy building and debugging of Autoware. From 0bdde5348e073417f86c5b07aa765394ab5e7612 Mon Sep 17 00:00:00 2001 From: Yutaka Kondo Date: Mon, 27 Jan 2025 09:43:54 +0900 Subject: [PATCH 4/6] fix base Signed-off-by: Yutaka Kondo --- docker/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker/README.md b/docker/README.md index d76138cc518..1d6d96b8789 100644 --- a/docker/README.md +++ b/docker/README.md @@ -84,7 +84,7 @@ This stage performs only the basic setup required for all Autoware images. ### `$AUTOWARE_BASE_CUDA_IMAGE` (from Dockerfile.base) -This stage is built on top of `base` and adds the CUDA runtime environment and artifacts. +This stage is built on top of `$AUTOWARE_BASE_IMAGE` and adds the CUDA runtime environment and artifacts. ### `rosdep-depend` From 130bbf3405962427308907f6f697be0990d2111e Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 27 Jan 2025 00:55:59 +0000 Subject: [PATCH 5/6] style(pre-commit): autofix --- docker/Dockerfile.svg | 1309 +++++++++++++++++++++++------------------ 1 file changed, 725 insertions(+), 584 deletions(-) diff --git a/docker/Dockerfile.svg b/docker/Dockerfile.svg index 8afd9d20b49..7404697b1ff 100644 --- a/docker/Dockerfile.svg +++ b/docker/Dockerfile.svg @@ -1,589 +1,730 @@ - + - - -G - - -cluster_legend - - - - -key -FROM ...  -COPY --from=...  -RUN --mount=(.*)from=...  - - - -key2 -  -  -  - - - -key:e->key2:w - - - - - -key:e->key2:w - - - - - -key:e->key2:w - - - - - -external_image_0 - -$BASE_IMAGE - - - -stage_0 - -rosdep-depend - - - -external_image_0->stage_0 - - - - - -stage_1 - -rosdep-universe-visualization-depend - - - -stage_0->stage_1 - - - - - -stage_2 - -rosdep-universe-sensing-perception-depend - - - -stage_0->stage_2 - - - - - -stage_3 - -rosdep-universe-localization-mapping-depend - - - -stage_0->stage_3 - - - - - - -stage_4 - -rosdep-universe-planning-control-depend - - - -stage_0->stage_4 - - - - - -stage_5 - -rosdep-universe-vehicle-system-depend - - - -stage_0->stage_5 - - - - - -stage_6 - -rosdep-universe-depend - - - -stage_0->stage_6 - - - - - -stage_7 - -core-devel - - - -stage_0->stage_7 - - - - - -stage_8 - -universe-common-devel - - - -stage_0->stage_8 - - - - - -stage_15 - -universe-visualization-devel - - - -stage_1->stage_15 - - - - - -stage_23 - -universe-visualization - - - -stage_1->stage_23 - - - - -stage_10 - -universe-sensing-perception-devel - - - -stage_2->stage_10 - - - - - -stage_11 - -universe-sensing-perception-devel-cuda - - - -stage_2->stage_11 - - - - - - -stage_18 - -universe-sensing-perception - - - -stage_2->stage_18 - - - - - -stage_19 - -universe-sensing-perception-cuda - - - -stage_2->stage_19 - - - - - -stage_12 - -universe-localization-mapping-devel - - - -stage_3->stage_12 - - - - - -stage_20 - -universe-localization-mapping - - - -stage_3->stage_20 - - - - - -stage_13 - -universe-planning-control-devel - - - -stage_4->stage_13 - - - - - -stage_21 - -universe-planning-control - - - -stage_4->stage_21 - - - - - -stage_14 - -universe-vehicle-system-devel - - - -stage_5->stage_14 - - - - - -stage_22 - -universe-vehicle-system - - - -stage_5->stage_22 - - - - - -stage_16 - -universe-devel - - - -stage_6->stage_16 - - - - - -stage_17 - -universe-devel-cuda - - - -stage_6->stage_17 - - - - - -stage_24 - -universe - - - -stage_6->stage_24 - - - - - - -stage_25 - -universe-cuda - - - -stage_6->stage_25 - - - - -stage_7->stage_8 - - - - - -stage_8->stage_15 - - - - - -stage_8->stage_10 - - - - - -stage_8->stage_12 - - - - - -stage_8->stage_13 - - - - - -stage_8->stage_14 - - - - - -stage_8->stage_16 - - - - - -stage_9 - -universe-common-devel-cuda - - - -stage_8->stage_9 - - - - - -stage_15->stage_23 - - - - - -stage_15->stage_16 - - - - - -stage_10->stage_11 - - - - - -stage_10->stage_18 - - - - - -stage_10->stage_16 - - - - - -stage_11->stage_19 - - - - - -stage_11->stage_17 - - - - - -stage_12->stage_20 - - - - - -stage_12->stage_16 - - - - - -stage_13->stage_21 - - - - - -stage_13->stage_16 - - - - - -stage_14->stage_22 - - - - - -stage_14->stage_16 - - - - - -stage_16->stage_17 - - - - - -stage_16->stage_24 - - - - - -stage_17->stage_25 - - - - - -external_image_1 - -$AUTOWARE_BASE_IMAGE - - - -external_image_1->stage_7 - - - - - -external_image_1->stage_23 - - - - - - -external_image_1->stage_18 - - - - - -external_image_1->stage_20 - - - - - -external_image_1->stage_21 - - - - - -external_image_1->stage_22 - - - - - -external_image_1->stage_24 - - - - - - - - -stage_9->stage_11 - - - - - -stage_9->stage_17 - - - - - -external_image_2 - -$AUTOWARE_BASE_CUDA_IMAGE - - - -external_image_2->stage_19 - - - - - -external_image_2->stage_25 - - - - - + + + G + + + cluster_legend + + + + + key + FROM ... + COPY --from=...  + RUN --mount=(.*)from=...  + + + + key2 + + + + + + + key:e->key2:w + + + + + + key:e->key2:w + + + + + + key:e->key2:w + + + + + + external_image_0 + + $BASE_IMAGE + + + + stage_0 + + rosdep-depend + + + + external_image_0->stage_0 + + + + + + stage_1 + + rosdep-universe-visualization-depend + + + + stage_0->stage_1 + + + + + + stage_2 + + rosdep-universe-sensing-perception-depend + + + + stage_0->stage_2 + + + + + + stage_3 + + rosdep-universe-localization-mapping-depend + + + + stage_0->stage_3 + + + + + + + stage_4 + + rosdep-universe-planning-control-depend + + + + stage_0->stage_4 + + + + + + stage_5 + + rosdep-universe-vehicle-system-depend + + + + stage_0->stage_5 + + + + + + stage_6 + + rosdep-universe-depend + + + + stage_0->stage_6 + + + + + + stage_7 + + core-devel + + + + stage_0->stage_7 + + + + + + stage_8 + + universe-common-devel + + + + stage_0->stage_8 + + + + + + stage_15 + + universe-visualization-devel + + + + stage_1->stage_15 + + + + + + stage_23 + + universe-visualization + + + + stage_1->stage_23 + + + + + stage_10 + + universe-sensing-perception-devel + + + + stage_2->stage_10 + + + + + + stage_11 + + universe-sensing-perception-devel-cuda + + + + stage_2->stage_11 + + + + + + + stage_18 + + universe-sensing-perception + + + + stage_2->stage_18 + + + + + + stage_19 + + universe-sensing-perception-cuda + + + + stage_2->stage_19 + + + + + + stage_12 + + universe-localization-mapping-devel + + + + stage_3->stage_12 + + + + + + stage_20 + + universe-localization-mapping + + + + stage_3->stage_20 + + + + + + stage_13 + + universe-planning-control-devel + + + + stage_4->stage_13 + + + + + + stage_21 + + universe-planning-control + + + + stage_4->stage_21 + + + + + + stage_14 + + universe-vehicle-system-devel + + + + stage_5->stage_14 + + + + + + stage_22 + + universe-vehicle-system + + + + stage_5->stage_22 + + + + + + stage_16 + + universe-devel + + + + stage_6->stage_16 + + + + + + stage_17 + + universe-devel-cuda + + + + stage_6->stage_17 + + + + + + stage_24 + + universe + + + + stage_6->stage_24 + + + + + + + stage_25 + + universe-cuda + + + + stage_6->stage_25 + + + + + stage_7->stage_8 + + + + + + stage_8->stage_15 + + + + + + stage_8->stage_10 + + + + + + stage_8->stage_12 + + + + + + stage_8->stage_13 + + + + + + stage_8->stage_14 + + + + + + stage_8->stage_16 + + + + + + stage_9 + + universe-common-devel-cuda + + + + stage_8->stage_9 + + + + + + stage_15->stage_23 + + + + + + stage_15->stage_16 + + + + + + stage_10->stage_11 + + + + + + stage_10->stage_18 + + + + + + stage_10->stage_16 + + + + + + stage_11->stage_19 + + + + + + stage_11->stage_17 + + + + + + stage_12->stage_20 + + + + + + stage_12->stage_16 + + + + + + stage_13->stage_21 + + + + + + stage_13->stage_16 + + + + + + stage_14->stage_22 + + + + + + stage_14->stage_16 + + + + + + stage_16->stage_17 + + + + + + stage_16->stage_24 + + + + + + stage_17->stage_25 + + + + + + external_image_1 + + $AUTOWARE_BASE_IMAGE + + + + external_image_1->stage_7 + + + + + + external_image_1->stage_23 + + + + + + + external_image_1->stage_18 + + + + + + external_image_1->stage_20 + + + + + + external_image_1->stage_21 + + + + + + external_image_1->stage_22 + + + + + + external_image_1->stage_24 + + + + + + + + + stage_9->stage_11 + + + + + + stage_9->stage_17 + + + + + + external_image_2 + + $AUTOWARE_BASE_CUDA_IMAGE + + + + external_image_2->stage_19 + + + + + + external_image_2->stage_25 + + + + + From d9787cd0ed47b5658458737ab1e3195e305f10a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=2E=20Fatih=20C=C4=B1r=C4=B1t?= Date: Mon, 27 Jan 2025 04:11:19 +0300 Subject: [PATCH 6/6] pre-commit svg fix: simplify text field MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: M. Fatih Cırıt --- docker/Dockerfile.svg | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docker/Dockerfile.svg b/docker/Dockerfile.svg index 7404697b1ff..bbbb9a89d74 100644 --- a/docker/Dockerfile.svg +++ b/docker/Dockerfile.svg @@ -21,9 +21,9 @@ key2 - - - + + +