Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change base image to Ubuntu Jammy #1017

Merged
merged 17 commits into from
Mar 6, 2023
Merged

Change base image to Ubuntu Jammy #1017

merged 17 commits into from
Mar 6, 2023

Conversation

kylos101
Copy link
Collaborator

@kylos101 kylos101 commented Jan 31, 2023

Description

Breaking changes

  1. Update maintained images[1][2] at https://hub.docker.com/u/gitpod from Focal to Jammy
  2. Deprecate and do not update gitpod/workspace-ruby-2; Ruby 2.7 is EOL March 31, 2023.
  3. Upgrade gitpod/workspace-mongodb to mongo v6. v5 doesn't support OpenSSL 3, OpenSSL 3 comes out of the box with Jammy.
  4. Update gitpod/workspace-node-lts from Node 16 to Node 18, and also in gitpod/workspace-full
  5. Update gitpod/workspace-node from Node 18 to Node 19
  6. Install Python 3.9 in gitpod/workspace-yugabytedb*, changing its base ref from full. Refer to its dockerfile for background

Fixes

  1. Replace Go 1.18 (which was failing the build on dazzle build and not part of any dazzle combination / workspace image), with Go 1.20.
    • Continue using 1.19.5 in the go combination (so there is no change to users) for gitpod/workspace-full or gitpod/workspace-go.
    • We should switch to 1.20 as part of the next release, @atduarte and @loujaybee for 👀
  2. Bump Rust to 1.67.1
  3. Bump Ruby patch versions for 3.0, 3.1, and 3.2
  4. Override OpenSSL for Ruby 3.0 to support Jammy
  5. Bump Ruby in gitpod/workspace-full from Ruby 3.1 to 3.2
  6. Bump Python in gitpod/workspace-full from Python 3.8 to 3.11
  7. Bump nvm version from 0.39.0 to 0.39.3
  8. Bump buildkit and dazzle dependencies for CI

New features

  1. Use asdf version manager in Elixir combination to more easily manage erlang and elixir

Related Issue(s)

Fixes: #810, #1016, #1029 and #1012

How to test

  • Our tests pass in this build.
  • After this merges to main
    • Our base image is updated to use the timestamped image, so we can dog food the change.
    • Early adopters use the timestamped image and share feedback

Release Notes

breaking: Upgrade to Ubuntu `22.04` LTS (Jammy Jellyfish)
, please refer to https://www.gitpod.io/changelog/january-changelog#workspace-images-os-and-node-versions-update for details.

@gitpod-io
Copy link

gitpod-io bot commented Feb 8, 2023

@kylos101 kylos101 force-pushed the kylos101/jam branch 2 times, most recently from 218d699 to 573c4bf Compare February 8, 2023 20:43
@kylos101 kylos101 changed the title Kylos101/jam Change base image to Ubuntu Jammy Feb 8, 2023
@kylos101 kylos101 marked this pull request as ready for review February 8, 2023 23:42
@kylos101 kylos101 requested a review from a team February 8, 2023 23:42
@Siddhant-K-code
Copy link
Member

Looks good now :shipit:

tests/tool-brew.yaml Outdated Show resolved Hide resolved
@kylos101 kylos101 force-pushed the kylos101/jam branch 3 times, most recently from 1c9acdf to 83e8382 Compare March 4, 2023 19:50
Copy link
Member

@Siddhant-K-code Siddhant-K-code left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks 🧡, Looks good to me ✨

Left some non-blocking comments 🙏🏽

Comment on lines 151 to +153
- name: yugabytedb
ref:
- full
- base
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is good ✨ . Wondering why we were using full before 🤔

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Most of the database images do, it's like an unofficial convention.

Comment on lines +9 to +10
RUN curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/jammy.gpg | sudo apt-key add - \
&& curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/jammy.list | sudo tee /etc/apt/sources.list.d/tailscale.list \
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggestion (non-blocking): How about we do this, this would save us from managing it manually.

Suggested change
RUN curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/jammy.gpg | sudo apt-key add - \
&& curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/jammy.list | sudo tee /etc/apt/sources.list.d/tailscale.list \
RUN curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/$(lsb_release -cs).gpg | sudo apt-key add - \
&& curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/$(lsb_release -cs).list | sudo tee /etc/apt/sources.list.d/tailscale.list \

# Install MongoDB Shell aka MongoSH (was part of Mongo 5, but, is separate now)
RUN mkdir -p /tmp/mongosh && \
cd /tmp/mongosh && \
wget -qOmongosh.tgz https://downloads.mongodb.com/compass/mongosh-1.8.0-linux-x64.tgz && \
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tried looking for automation of mongosh-* version. But doesn't find any, on their downloads page & docs. Let's keep it, this way only & will patch the changes in future.

@kylos101 kylos101 merged commit 6463940 into main Mar 6, 2023
@gengjiawen
Copy link
Contributor

@kylos101 Is it available on dockerhub now ?

@gengjiawen
Copy link
Contributor

Thx, when will it comes to latest tag ?

@kylos101
Copy link
Collaborator Author

kylos101 commented Mar 7, 2023

Thx, when will it comes to latest tag ?

@gengjiawen let me check with @atduarte and get back to you soon. Thank you for asking!

kylos101 added a commit to gitpod-io/gitpod that referenced this pull request Mar 7, 2023
kylos101 added a commit to gitpod-io/gitpod that referenced this pull request Mar 7, 2023
@gengjiawen
Copy link
Contributor

Looks like still not default one, any timeline ?

@kylos101
Copy link
Collaborator Author

Looks like still not default one, any timeline ?

Thank you for asking, @gengjiawen ! May I ask, have you used the tagged image, yet? Any troubles? I will update the timeline later today, and appreciate you asking.

cc: @atduarte

@gengjiawen
Copy link
Contributor

I have used,works pretty good

roboquat pushed a commit to gitpod-io/gitpod that referenced this pull request Mar 22, 2023
* [dev image] update to Jammy

Ref: gitpod-io/workspace-images#1017

no more `python-dev`

ref:
lewagon/data-setup#219 (comment)
https://wiki.termux.com/wiki/No_more_-dev_packages

* [dev image] update images latest dev image

* [ws-manager] avoid false positive linter errors

* [ws-daemon] fix ineffectual assignment for err

golangci-lint is catching more errors since upgrading to go 1.19.5

* Update to more recent gcloud

* Moar timeout
Siddhant-K-code added a commit that referenced this pull request May 16, 2023
iQQBot pushed a commit that referenced this pull request May 22, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

glibc is old, causes PR builds to fail (sdkman in Java, Rust, etc.) jammy (Ubuntu 22.04 LTS)- based images
4 participants