Skip to content

Point GitLab default image to workspace default image which contains latest image with tools

MR1 - Update workspace default devfile with ruby, nod... (!185393 - merged) This MR contains new Node, Ruby, Rust, and gopls

MR2 - Update workspace default image to latest (!188199 - merged) This MR contains new Java, Php, Python, GCC, and corresponding package managers

Description

After we successfully build workspace default image with more languages and tools, we should update the workspace default image reference in GitLab project.

We should also apply Brendan's suggestion on the default devfile doc.

We do have some recommendations:

  • Use placeholders or generic references where possible, focusing on the functionality rather than specific version numbers.
  • If we must include the exact image reference:
    • Add a comment above the code block mentioning that this value changes periodically.
    • Include information about where to find the latest version.

Here is a possible example of what we can change:

A GitLab default devfile is available for all projects when you create a workspace.
This devfile contains:

```yaml
schemaVersion: 2.2.0
components:
  - name: development-environment
    attributes:
      gl/inject-editor: true
    container:
      image: "registry.gitlab.com/gitlab-org/gitlab-build-images/workspaces/ubuntu-24.04:[VERSION_TAG]"
```

{{< alert type="note" >}}

This container `image` is updated regularly. For the latest version, see the
[default_devfile.yaml](https://gitlab.com/gitlab-org/gitlab/-/blob/master/ee/lib/remote_development/settings/default_devfile.yaml) file.

{{< /alert >}}

The workspace default image includes the latest versions of development tools including Ruby, Node, Rust, Go, and various package managers.

Acceptance criteria

  • Test the image works as expected in prod with user defined devfile, and local
  • Update the workspace default image reference in GitLab project.
  • Update workspace user doc to indicate what languages and tools are installed
  • Update workspace user doc to reflect Brendan's best practice

Implementation plan

NA

Edited by zli