Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .github/promote-images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@
workspace-python-3.9: "20.*"
workspace-python-3.10: "20.*"
workspace-python-3.11: "20.*"
workspace-ruby-2: "20.*"
workspace-ruby-3: "20.*"
workspace-ruby-3.0: "20.*"
workspace-ruby-3.1: "20.*"
Expand Down
1 change: 0 additions & 1 deletion .github/sync-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ sync:
- python-3.9
- python-3.10
- python-3.11
- ruby-2
- ruby-3
- ruby-3.0
- ruby-3.1
Expand Down
7 changes: 5 additions & 2 deletions .github/workflows/pull-request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@ on:
jobs:
build:
runs-on: ubuntu-latest
env:
DAZZLE_VERSION: 0.1.15
BUILDKIT_VERSION: 0.11.2
steps:
- name: 📥 Checkout workspace-images
uses: actions/checkout@v3
Expand All @@ -24,11 +27,11 @@ jobs:

- name: 🔆 Install dazzle
run: |
curl -sSL https://github.com/gitpod-io/dazzle/releases/download/v0.1.13/dazzle_0.1.13_Linux_x86_64.tar.gz | sudo tar -xvz -C /usr/local/bin
curl -sSL https://github.com/gitpod-io/dazzle/releases/download/v${{env.DAZZLE_VERSION}}/dazzle_${{env.DAZZLE_VERSION}}_Linux_x86_64.tar.gz | sudo tar -xvz -C /usr/local/bin

- name: 🏗️ Setup buildkit
run: |
curl -sSL https://github.com/moby/buildkit/releases/download/v0.10.6/buildkit-v0.10.6.linux-amd64.tar.gz | sudo tar xvz -C /usr
curl -sSL https://github.com/moby/buildkit/releases/download/v${{env.BUILDKIT_VERSION}}/buildkit-v${{env.BUILDKIT_VERSION}}.linux-amd64.tar.gz | sudo tar xvz -C /usr
sudo buildkitd --oci-worker=true --oci-worker-net=host --debug --group docker &
sudo su -c "while ! test -S /run/buildkit/buildkitd.sock; do sleep 0.1; done"
sudo chmod +777 /run/buildkit/buildkitd.sock
Expand Down
6 changes: 4 additions & 2 deletions .github/workflows/push-main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@ jobs:
GAR_IMAGE_REGISTRY: europe-docker.pkg.dev
DH_IMAGE_REGISTRY: registry.hub.docker.com
IAM_SERVICE_ACCOUNT: [email protected]
DAZZLE_VERSION: 0.1.15
BUILDKIT_VERSION: 0.11.2

steps:
- name: 📥 Checkout workspace-images
Expand All @@ -43,7 +45,7 @@ jobs:

- name: 🔆 Install dazzle
run: |
curl -sSL https://github.com/gitpod-io/dazzle/releases/download/v0.1.13/dazzle_0.1.13_Linux_x86_64.tar.gz | sudo tar -xvz -C /usr/local/bin
curl -sSL https://github.com/gitpod-io/dazzle/releases/download/v${{env.DAZZLE_VERSION}}/dazzle_${{env.DAZZLE_VERSION}}_Linux_x86_64.tar.gz | sudo tar -xvz -C /usr/local/bin

- name: 🔆 Install skopeo
run: |
Expand All @@ -56,7 +58,7 @@ jobs:

- name: 🏗️ Setup buildkit
run: |
curl -sSL https://github.com/moby/buildkit/releases/download/v0.10.6/buildkit-v0.10.6.linux-amd64.tar.gz | sudo tar xvz -C /usr
curl -sSL https://github.com/moby/buildkit/releases/download/v${{env.BUILDKIT_VERSION}}/buildkit-v${{env.BUILDKIT_VERSION}}.linux-amd64.tar.gz | sudo tar xvz -C /usr
sudo buildkitd --oci-worker=true --oci-worker-net=host --debug --group docker &
sudo su -c "while ! test -S /run/buildkit/buildkitd.sock; do sleep 0.1; done"
sudo chmod +777 /run/buildkit/buildkitd.sock
Expand Down
5 changes: 3 additions & 2 deletions .gitpod.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,15 @@ FROM gitpod/workspace-full

ENV RETRIGGER=3

ENV BUILDKIT_VERSION=0.10.6
ENV BUILDKIT_VERSION=0.11.2
ENV BUILDKIT_FILENAME=buildkit-v${BUILDKIT_VERSION}.linux-amd64.tar.gz
ENV DAZZLE_VERSION=0.1.15

USER root

# Install dazzle, buildkit and pre-commit
RUN curl -sSL https://github.com/moby/buildkit/releases/download/v${BUILDKIT_VERSION}/${BUILDKIT_FILENAME} | tar -xvz -C /usr
RUN curl -sSL https://github.com/gitpod-io/dazzle/releases/download/v0.1.13/dazzle_0.1.13_Linux_x86_64.tar.gz | tar -xvz -C /usr/local/bin
RUN curl -sSL https://github.com/gitpod-io/dazzle/releases/download/v${DAZZLE_VERSION}/dazzle_${DAZZLE_VERSION}_Linux_x86_64.tar.gz | tar -xvz -C /usr/local/bin
RUN curl -sSL https://github.com/mvdan/sh/releases/download/v3.5.1/shfmt_v3.5.1_linux_amd64 -o /usr/bin/shfmt \
&& chmod +x /usr/bin/shfmt
RUN install-packages shellcheck \
Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@ e.g.
# fetch keyring over https connection and unpack it using gpg's --dearmor option
curl -fsSL https://apt.my-secure.org/my-unofficial-repo.gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/my-unofficial-repo.gpg.key
# and then add them to a apt key sources list.
echo "deb [signed-by=/usr/share/keyrings/my-unofficial-repo.gpg.key] http://apt.my-secure.org/focal/ \
echo "deb [signed-by=/usr/share/keyrings/my-unofficial-repo.gpg.key] http://apt.my-secure.org/jammy/ \
my-unofficial-repo-toolchain main" | sudo tee /etc/apt/sources.list.d/my-unofficial-repo.list > /dev/null
```

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,6 @@ Each contains a set of chunks: a common base, and a language, and includes Docke
- [`gitpod/workspace-node`](https://hub.docker.com/r/gitpod/workspace-node) ✅
- [`gitpod/workspace-node-lts`](https://hub.docker.com/r/gitpod/workspace-node-lts) ✅
- [`gitpod/workspace-python`](https://hub.docker.com/r/gitpod/workspace-python) ✅
- [`gitpod/workspace-ruby-2`](https://hub.docker.com/r/gitpod/workspace-ruby-2) ✅
- [`gitpod/workspace-ruby-3`](https://hub.docker.com/r/gitpod/workspace-ruby-3) ✅
- [`gitpod/workspace-ruby-3.0`](https://hub.docker.com/r/gitpod/workspace-ruby-3.0) ✅
- [`gitpod/workspace-ruby-3.1`](https://hub.docker.com/r/gitpod/workspace-ruby-3.1) ✅
Expand Down Expand Up @@ -87,6 +86,7 @@ These images are no longer being published:

- gitpod/workspace-python-3.6 (please use [`gitpod/workspace-python-3.7`](https://hub.docker.com/r/gitpod/workspace-python-3.7) instead)
- gitpod/workspace-postgresql (please use [`gitpod/workspace-postgres`](https://hub.docker.com/r/gitpod/workspace-postgres) instead)
- gitpod/workspace-ruby-2 (please use [`gitpod/workspace-ruby-3.2`](https://hub.docker.com/r/gitpod/workspace-ruby-3.2) instead)

## Contributing

Expand Down
2 changes: 1 addition & 1 deletion base/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM buildpack-deps:focal
FROM buildpack-deps:jammy

COPY install-packages upgrade-packages /usr/bin/

Expand Down
2 changes: 1 addition & 1 deletion base/install-packages
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ if [[ $EUID != 0 ]]; then
fi

# Set a runlevel to avoid invoke-rc.d warnings
# http://manpages.ubuntu.com/manpages/focal/man8/runlevel.8.html#environment
# http://manpages.ubuntu.com/manpages/jammy/man8/runlevel.8.html#environment
# shellcheck disable=SC2034
RUNLEVEL=1

Expand Down
4 changes: 2 additions & 2 deletions chunks/lang-c/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ USER root
ENV TRIGGER_REBUILD=1

RUN curl -fsSL https://apt.llvm.org/llvm-snapshot.gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/llvm-archive-keyring.gpg \
&& echo "deb [signed-by=/usr/share/keyrings/llvm-archive-keyring.gpg] http://apt.llvm.org/focal/ \
llvm-toolchain-focal-15 main" | sudo tee /etc/apt/sources.list.d/llvm.list > /dev/null \
&& echo "deb [signed-by=/usr/share/keyrings/llvm-archive-keyring.gpg] http://apt.llvm.org/jammy/ \
llvm-toolchain-jammy-15 main" | sudo tee /etc/apt/sources.list.d/llvm.list > /dev/null \
&& apt update \
&& install-packages \
clang \
Expand Down
24 changes: 19 additions & 5 deletions chunks/lang-elixir/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,23 @@ USER root
# Dazzle does not rebuild a layer until one of its lines are changed. Increase this counter to rebuild this layer.
ENV TRIGGER_REBUILD=1

RUN cd /tmp \
&& wget https://packages.erlang-solutions.com/erlang-solutions_2.0_all.deb \
&& dpkg -i erlang-solutions_2.0_all.deb \
&& install-packages elixir

USER gitpod

# Install asdf to make it easier to manage elixir versions
#
# Why?
# 1. At the time of this writing, `apt-get install elixir` was installing
# a version that was not compatible with glibc in Ubuntu Jammy.
# 2. This makes it explicit as to what versions we're installing.
# 3. It'll give users the ability to easily make changes at runtime to experiment
RUN git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.11.1
RUN echo ". "$HOME/.asdf/asdf.sh"" >> /home/gitpod/.bashrc.d/100-asdf
RUN echo ". "$HOME/.asdf/completions/asdf.bash"" >> /home/gitpod/.bashrc.d/100-asdf
ENV PATH=/home/gitpod/.asdf/bin:/home/gitpod/.asdf/shims:$PATH

RUN asdf plugin-add erlang https://github.com/asdf-vm/asdf-erlang.git
RUN asdf plugin-add elixir https://github.com/asdf-vm/asdf-elixir.git
RUN asdf install erlang 25.2.2
RUN asdf install elixir 1.13.4-otp-25
RUN asdf global erlang 25.2.2
RUN asdf global elixir 1.13.4-otp-25
27 changes: 14 additions & 13 deletions chunks/lang-go/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -11,19 +11,20 @@ ENV GO_VERSION=${GO_VERSION}
ENV GOPATH=$HOME/go-packages
ENV GOROOT=$HOME/go
ENV PATH=$GOROOT/bin:$GOPATH/bin:$PATH
RUN curl -fsSL https://dl.google.com/go/go$GO_VERSION.linux-amd64.tar.gz | tar xzs && \
RUN curl -fsSL https://dl.google.com/go/go$GO_VERSION.linux-amd64.tar.gz | tar xzs
# install VS Code Go tools for use with gopls as per https://github.com/golang/vscode-go/blob/master/docs/tools.md
# also https://github.com/golang/vscode-go/blob/27bbf42a1523cadb19fad21e0f9d7c316b625684/src/goTools.ts#L139
go install -v github.com/uudashr/gopkgs/cmd/gopkgs@v2 && \
go install -v github.com/ramya-rao-a/go-outline@latest && \
go install -v github.com/cweill/gotests/gotests@latest && \
go install -v github.com/fatih/gomodifytags@latest && \
go install -v github.com/josharian/impl@latest && \
go install -v github.com/haya14busa/goplay/cmd/goplay@latest && \
go install -v github.com/go-delve/delve/cmd/dlv@latest && \
go install -v github.com/golangci/golangci-lint/cmd/golangci-lint@latest && \
go install -v golang.org/x/tools/gopls@latest && \
go install -v honnef.co/go/tools/cmd/staticcheck@latest && \
sudo rm -rf $GOPATH/src $GOPATH/pkg $HOME/.cache/go $HOME/.cache/go-build && \
RUN go install -v github.com/uudashr/gopkgs/cmd/gopkgs@v2 \
&& go install -v github.com/ramya-rao-a/go-outline@latest \
&& go install -v github.com/cweill/gotests/gotests@latest \
&& go install -v github.com/fatih/gomodifytags@latest \
&& go install -v github.com/josharian/impl@latest \
&& go install -v github.com/haya14busa/goplay/cmd/goplay@latest \
&& go install -v github.com/go-delve/delve/cmd/dlv@latest \
&& go install -v github.com/golangci/golangci-lint/cmd/golangci-lint@latest \
&& go install -v golang.org/x/tools/gopls@latest \
&& go install -v honnef.co/go/tools/cmd/staticcheck@latest

RUN sudo rm -rf $GOPATH/src $GOPATH/pkg $HOME/.cache/go $HOME/.cache/go-build && \
printf '%s\n' 'export GOPATH=/workspace/go' \
'export PATH=$GOPATH/bin:$PATH' > $HOME/.bashrc.d/300-go
'export PATH=$GOPATH/bin:$PATH' > $HOME/.bashrc.d/300-go
6 changes: 3 additions & 3 deletions chunks/lang-go/chunk.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
variants:
- name: "1.18.10"
args:
GO_VERSION: 1.18.10
- name: "1.19.5"
args:
GO_VERSION: 1.19.5
- name: "1.20"
args:
GO_VERSION: 1.20
2 changes: 1 addition & 1 deletion chunks/lang-node/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ ENV NODE_VERSION=${NODE_VERSION}
ENV PNPM_HOME=/home/gitpod/.pnpm
ENV PATH=/home/gitpod/.nvm/versions/node/v${NODE_VERSION}/bin:/home/gitpod/.yarn/bin:${PNPM_HOME}:$PATH

RUN curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | PROFILE=/dev/null bash \
RUN curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | PROFILE=/dev/null bash \
&& bash -c ". .nvm/nvm.sh \
&& nvm install v${NODE_VERSION} \
&& nvm alias default v${NODE_VERSION} \
Expand Down
6 changes: 3 additions & 3 deletions chunks/lang-node/chunk.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
variants:
- name: "16"
args:
NODE_VERSION: 16.19.1
- name: "18"
args:
NODE_VERSION: 18.14.2
- name: "19"
args:
NODE_VERSION: 19.7.0
28 changes: 14 additions & 14 deletions chunks/lang-ruby/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,21 +6,21 @@ ARG RUBY_VERSION
USER gitpod

# Dazzle does not rebuild a layer until one of its lines are changed. Increase this counter to rebuild this layer.
ENV TRIGGER_REBUILD=1

RUN curl -fsSL https://rvm.io/mpapis.asc | gpg --import - \
&& curl -fsSL https://rvm.io/pkuczynski.asc | gpg --import - \
&& curl -fsSL https://get.rvm.io | bash -s stable \
&& bash -lc " \
rvm requirements \
&& rvm install ${RUBY_VERSION} \
&& rvm use ${RUBY_VERSION} --default \
&& rvm rubygems current \
&& gem install bundler --no-document \
&& gem install solargraph --no-document" \
&& echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*' >> /home/gitpod/.bashrc.d/70-ruby
ENV TRIGGER_REBUILD=2

RUN curl -fsSL https://rvm.io/mpapis.asc | gpg --import -
RUN curl -fsSL https://rvm.io/pkuczynski.asc | gpg --import -
RUN curl -fsSL https://get.rvm.io | bash -s stable

ADD ./install.sh /tmp
RUN /tmp/install.sh $RUBY_VERSION




RUN echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*' >> /home/gitpod/.bashrc.d/70-ruby
RUN echo "rvm_gems_path=/workspace/.rvm" > ~/.rvmrc

ENV GEM_HOME=/workspace/.rvm
ENV GEM_PATH=$GEM_HOME:$GEM_PATH
ENV PATH=/workspace/.rvm/bin:$PATH
ENV PATH=/home/gitpod/.rvm/bin:$PATH
9 changes: 3 additions & 6 deletions chunks/lang-ruby/chunk.yaml
Original file line number Diff line number Diff line change
@@ -1,13 +1,10 @@
variants:
- name: "2.7"
args:
RUBY_VERSION: 2.7.6
- name: "3.0"
args:
RUBY_VERSION: 3.0.4
RUBY_VERSION: 3.0.5
- name: "3.1"
args:
RUBY_VERSION: 3.1.2
RUBY_VERSION: 3.1.3
- name: "3.2"
args:
RUBY_VERSION: 3.2.0
RUBY_VERSION: 3.2.1
27 changes: 27 additions & 0 deletions chunks/lang-ruby/install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
#!/bin/bash
set -euo pipefail

RUBY_VERSION=$1

# the version of openssl changed in Jammy, Ruby 3.0 needs an older version
# https://github.com/rvm/rvm/issues/5209#issuecomment-1114159447
# another option: https://github.com/rvm/rvm/issues/5209#issuecomment-1134927685 or sudo apt install libssl-dev=1.1.1l-1ubuntu1.4
if grep -q "3.0." <<<"${RUBY_VERSION}"; then
bash -lc "
rvm requirements \
&& rvm pkg install openssl \
&& rvm install \"${RUBY_VERSION}\" --with-openssl-dir=\"${HOME}\"/.rvm/usr --default \
&& rvm alias create default \"${RUBY_VERSION}\" \
&& rvm rubygems current \
&& gem install bundler --no-document \
&& gem install solargraph --no-document"
else
# Ruby 3.1 and higher do not
bash -lc "
rvm requirements \
&& rvm install \"${RUBY_VERSION}\" --default \
&& rvm alias create default \"${RUBY_VERSION}\" \
&& rvm rubygems current \
&& gem install bundler --no-document \
&& gem install solargraph --no-document"
fi
2 changes: 1 addition & 1 deletion chunks/lang-rust/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ FROM ${base}
USER gitpod

# Dazzle does not rebuild a layer until one of its lines are changed. Increase this counter to rebuild this layer.
ENV TRIGGER_REBUILD=4
ENV TRIGGER_REBUILD=5

ENV PATH=$HOME/.cargo/bin:$PATH

Expand Down
3 changes: 1 addition & 2 deletions chunks/tool-brew/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,4 @@ ENV MANPATH="$MANPATH:/home/linuxbrew/.linuxbrew/share/man"
ENV INFOPATH="$INFOPATH:/home/linuxbrew/.linuxbrew/share/info"
ENV HOMEBREW_NO_AUTO_UPDATE=1

RUN sudo apt remove -y cmake \
&& brew install cmake
RUN brew install cmake
11 changes: 10 additions & 1 deletion chunks/tool-mongodb/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,20 @@ USER gitpod
# Dazzle does not rebuild a layer until one of its lines are changed. Increase this counter to rebuild this layer.
ENV TRIGGER_REBUILD=1

# 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.

tar xf mongosh.tgz && \
cd mongosh-* && \
sudo cp bin/* /usr/local/bin/ && \
rm -rf /tmp/mongosh

# Install MongoDB
# Source: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu-tarball/#install-mongodb-community-edition
RUN mkdir -p /tmp/mongodb && \
cd /tmp/mongodb && \
wget -qOmongodb.tgz https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2004-5.0.2.tgz && \
wget -qOmongodb.tgz https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2204-6.0.4.tgz && \
tar xf mongodb.tgz && \
cd mongodb-* && \
sudo cp bin/* /usr/local/bin/ && \
Expand Down
4 changes: 3 additions & 1 deletion chunks/tool-postgresql/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,9 @@ ENV PGWORKSPACE="/workspace/.pgsql"
ENV PGDATA="$PGWORKSPACE/data"

# Install PostgreSQL
RUN sudo install-packages postgresql-12 postgresql-contrib-12
RUN sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list' && \
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add - && \
sudo install-packages postgresql-12 postgresql-contrib-12

# Setup PostgreSQL server for user gitpod
ENV PATH="/usr/lib/postgresql/12/bin:$PATH"
Expand Down
4 changes: 2 additions & 2 deletions chunks/tool-tailscale/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ USER root
# Dazzle does not rebuild a layer until one of its lines are changed. Increase this counter to rebuild this layer.
ENV TRIGGER_REBUILD=3

RUN curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/focal.gpg | sudo apt-key add - \
&& curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/focal.list | sudo tee /etc/apt/sources.list.d/tailscale.list \
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 \
Comment on lines +9 to +10
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 \

&& apt-get update \
&& apt-get install -y tailscale \
&& rm /etc/apt/sources.list.d/tailscale.list \
Expand Down
12 changes: 12 additions & 0 deletions chunks/tool-yugabytedb/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ ARG YB_VERSION
ARG YB_BUILD
ARG YB_BIN_PATH=/usr/local/yugabyte
ARG ROLE=gitpod
ARG PYTHON_VERSION

USER $ROLE
# create bin and data path
Expand All @@ -22,6 +23,17 @@ RUN curl -sSLo ./yugabyte.tar.gz https://downloads.yugabyte.com/releases/${YB_VE
&& chmod +x $YB_BIN_PATH/bin/* \
&& rm ./yugabyte.tar.gz

# python is a required dependency of ycqlsh
# but it doesn't support Python 3.10+ due to https://github.com/yugabyte/cqlsh/issues/11, install 3.9 for now
# when building yugabyte combos, if our base is full, related python chunk tests fail
# so, use base as the combo ref, add chunks, but ignore Python chunk and install manually
ENV PATH="$HOME/.pyenv/bin:$HOME/.pyenv/shims:$PATH"
ENV PYENV_ROOT="$HOME/.pyenv"
RUN git clone https://github.com/pyenv/pyenv.git ~/.pyenv \
&& git -C ~/.pyenv checkout ff93c58babd813066bf2d64d004a5cee33c0f27b \
&& pyenv install ${PYTHON_VERSION} \
&& pyenv global ${PYTHON_VERSION}

# configure the interpreter
RUN ["/usr/local/yugabyte/bin/post_install.sh"]

Expand Down
Loading