Skip to content

Migrate gitlab-workspaces-tools image to gitlab-build-images

MR - Migrate gitlab-workspaces-tools (gitlab-org/gitlab-build-images!905 - merged)

MR - Add workspace tools image test CI (gitlab-org/gitlab-build-images!977 - merged)

Description

Following the discussions on this issue when we create the default image, Build golden container image to be used by defa... (gitlab-org/gitlab#474984 - closed)

Currently, for gitlab-workspaces-tools image, we only build and publish linux/amd64.

https://gitlab.com/gitlab-org/remote-development/gitlab-workspaces-tools/-/blob/bc5a14f844ec4c636edc4b2902e7399ce5b4de1c/scripts/build/docker_build_and_publish.sh#L50

https://gitlab.com/gitlab-org/remote-development/gitlab-workspaces-tools/-/blob/bc5a14f844ec4c636edc4b2902e7399ce5b4de1c/.gitlab-ci.yml#L2

This works fine for our production, but would cause one issue with local development using mac with m2/m3.

As the default image we build is using OCI media type and contains both linux/arm64 and linux/amd64, then kubelet would auto detect our k83 node, which is using linux/arm64. Then as gitlab-workspaces-tools image only support amd64, then the local workspace creation would fail.

In this issue, we plan to move gitlab-workspaces-tools to gitlab-build-images and build new images with OCI media type (using docker buildx), as a proper way to resolve our current local development issue.

Acceptance Criteria

  • Migrate the code from gitlab-workspaces-tools to gitlab-build-images. That would automatically get us linux/arm64 support.
  • Build and publish the new multi-architecture image for gitlab-workspaces-tools image.

Technical Requirements

NA

Design Requirements

NA

Impact Assessment

NA

User Story

NA

Edited by zli