Pin socktop apt version (1.60.2-1); bump to 0.3.10
Build and Deploy to K3s / test (push) Successful in 1m33s
Build and Deploy to K3s / lint (push) Successful in 1m0s
Build and Deploy to K3s / build-and-push (push) Successful in 5m17s
Build and Deploy to K3s / deploy (push) Successful in 1m9s

Image 0.3.9 baked socktop 1.60.1 because CI's registry layer cache reused
the apt-install layer from before the 1.60.2 release. 1.60.1 has no
--no-kill flag, so the restricted shell's invocation parsed it as the
positional websocket URL, breaking (and on overwrite, corrupting) the
local profile. Pinning the package version busts the cache and ties the
installed binary to the flags the restricted shell uses.

Also point the manifest's webterm container at the current tag so a
manual kubectl apply cannot roll the image back to 0.2.2.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
jasonwitty
2026-08-24 09:16:29 -07:00
parent 768487c268
commit 6711ac030f
4 changed files with 10 additions and 5 deletions
Generated
+1 -1
View File
@@ -2609,7 +2609,7 @@ dependencies = [
[[package]] [[package]]
name = "webterm" name = "webterm"
version = "0.3.8" version = "0.3.10"
dependencies = [ dependencies = [
"actix", "actix",
"actix-files", "actix-files",
+1 -1
View File
@@ -6,7 +6,7 @@ documentation = "https://docs.rs/webterm"
readme = "README.md" readme = "README.md"
categories = ["web-programming", "web-programming::websocket", "web-programming::http-server", "command-line-utilities"] categories = ["web-programming", "web-programming::websocket", "web-programming::http-server", "command-line-utilities"]
keywords = ["terminal", "xterm", "websocket", "terminus", "console"] keywords = ["terminal", "xterm", "websocket", "terminus", "console"]
version = "0.3.9" version = "0.3.10"
authors = ["fabian.freyer@physik.tu-berlin.de","jasonpwitty+socktop@proton.me"] authors = ["fabian.freyer@physik.tu-berlin.de","jasonpwitty+socktop@proton.me"]
edition = "2021" edition = "2021"
license = "BSD-3-Clause" license = "BSD-3-Clause"
+7 -2
View File
@@ -121,12 +121,17 @@ RUN apt-get update && \
curl \ curl \
&& rm -rf /var/lib/apt/lists/* && rm -rf /var/lib/apt/lists/*
# Add socktop APT repository and install packages # Add socktop APT repository and install packages.
# The version is pinned: the restricted shell passes flags that must exist in
# the installed binary (e.g. --no-kill), and CI's registry layer cache would
# otherwise happily reuse an apt layer from before a socktop release. Bump the
# pin together with any restricted-shell.sh change that uses a new flag.
ARG SOCKTOP_VERSION=1.60.2-1
RUN curl -fsSL https://jasonwitty.github.io/socktop/KEY.gpg | \ RUN curl -fsSL https://jasonwitty.github.io/socktop/KEY.gpg | \
gpg --dearmor -o /usr/share/keyrings/socktop-archive-keyring.gpg && \ gpg --dearmor -o /usr/share/keyrings/socktop-archive-keyring.gpg && \
echo "deb [signed-by=/usr/share/keyrings/socktop-archive-keyring.gpg] https://jasonwitty.github.io/socktop stable main" > /etc/apt/sources.list.d/socktop.list && \ echo "deb [signed-by=/usr/share/keyrings/socktop-archive-keyring.gpg] https://jasonwitty.github.io/socktop stable main" > /etc/apt/sources.list.d/socktop.list && \
apt-get update && \ apt-get update && \
apt-get install -y --no-install-recommends socktop socktop-agent && \ apt-get install -y --no-install-recommends socktop=${SOCKTOP_VERSION} socktop-agent=${SOCKTOP_VERSION} && \
rm -rf /var/lib/apt/lists/* rm -rf /var/lib/apt/lists/*
# Create application user (if not already exists from socktop packages) # Create application user (if not already exists from socktop packages)
+1 -1
View File
@@ -85,7 +85,7 @@ spec:
containers: containers:
- name: webterm - name: webterm
image: gt.wittyoneoff.com/jason/socktop-webterm:0.2.2 image: gt.wittyoneoff.com/jason/socktop-webterm:0.3.10
imagePullPolicy: Always imagePullPolicy: Always
command: ["/docker-entrypoint.sh"] command: ["/docker-entrypoint.sh"]