autowarefoundation / autoware

Autoware - the world's leading open-source software project for autonomous driving
https://www.autoware.org/
Apache License 2.0
8.94k stars 3k forks source link

Use the same tag for multiple cpu architectures in docker images #5174

Open xmfcx opened 1 week ago

xmfcx commented 1 week ago

Checklist

Description

image

Right now we have different tags for arm64 and amd64 images.

This is redundant since docker supports multiple cpu arch's in same tag.

Example: image

Purpose

Simplify the docker image tags by making use of modern docker features.

Possible approaches

https://www.docker.com/blog/multi-arch-build-and-images-the-simple-way/

Definition of done

Image tags don't have arm64 or amd64 keywords in them.

youtalk commented 1 week ago

It is already performed by daily workflow https://github.com/autowarefoundation/autoware/blob/main/.github/workflows/update-docker-manifest.yaml.

https://github.com/autowarefoundation/autoware/pkgs/container/autoware/268585026?tag=latest-runtime-cuda

xmfcx commented 1 week ago

However, my question is: why are we generating architecture-specific tags initially and then merging them later? Wouldn't it be cleaner and more efficient to push a single tag directly, without separating them at the start? This could help in keeping the package repository more organized.

youtalk commented 1 week ago

I don't know how to do it properly because the CI runners are different from machines and architectures so that I think the manifest could be also different. I hope @oguzkaganozt knows more than me.

youtalk commented 1 week ago

This is not my emergent issue. I'm waiting for your contribution not only by discussion but by PR. Thanks.

oguzkaganozt commented 1 week ago

I will investigate try to find out more straight-forward solution to this.