logo
35
146
WeChat Login

【讨论】关于 CNB_VSCODE_REMOTE_SSH_SCHEMA 变量的渲染时机#1256

Resolved
created 2025-07-15
Edit

这个特性将解决什么问题?

我在基础镜像中,增加了一些别名,用于方便执行一些操作,别名如下:

     echo "alias openw='python3 -m webbrowser \"\$CNB_VSCODE_WEB_URL\"'" >> ~/.aliases.zsh &&\
     echo "alias openv='python3 -m webbrowser \"\$CNB_VSCODE_REMOTE_SSH_SCHEMA\"'" >> ~/.aliases.zsh &&\
     echo 'open() { python3 -m webbrowser "http://localhost:$1"; }' >> ~/.aliases.zsh &&\
     echo 'openr() { python3 -m webbrowser "$(echo "${CNB_VSCODE_PROXY_URI//\{\{port\}\}/$1}")"; }' >> ~/.aliases.zsh &&\
     echo "alias opendoc='python3 -m webbrowser https://cnb.cool/znb/qifei/-/issues/3'" >> ~/.aliases.zsh &&\

其中 openw, openv 是希望能够快速在WebIDE和vscode两个平台之间跳转,而不用再去到个人主页的云原生开发列表打开。

现在遇到的问题是:如果启动云原生开发,先打开WebIDE,然后执行openv我发现无法正常运行,排查发现是 CNB_VSCODE_REMOTE_SSH_SCHEMA 变量没有渲染。看起来这个变量值是在打开了vscode的时候渲染的。

讨论下:是否有可能在云原生开发启动的时候,就把这个变量的值填充上。

设想的解决方案?如有

Developer

这个变量是流水线执行时,code-server 命令执行后,注入进去的。你打开 WebIde 时按道理环境变量是已经注入进去的

实测是没有注入进去的哦:

080831a5-d109-45d3-8c28-aa7b338cbc57.png
Developer

你这个仓库是公开的吗?如果是,发下我看看

另外一个神奇的点,我貌似没有主动引用,也没有主动关联,为啥这个issue会关联这个issue

znb/qifei#3

7497cf40-61cf-4207-9524-0e695a2a5658.png
Developer

issue 关联这个问题,帮额外提个 issue,我找其他同事看看

Developer

我们将所有环境变量注入到了 /etc/profile 文件中,你可以看看这个文件

应该是你这个终端,这个 /etc/profile 没有生效

可以试试 source /etc/profile 后,再使用

如果着急可以这样搞临时解决,如果不着急等我换个方法注入这个环境变量应该能解决这个问题

assigned self
added labels
体验优化

了解了,暂时不急,是使用场景用到了,暂时没有也问题不大,等随后上了就好。

Administrator

另外一个神奇的点,我貌似没有主动引用,也没有主动关联,为啥这个issue会关联这个issue

znb/qifei#3

7497cf40-61cf-4207-9524-0e695a2a5658.png

该问题已在 #1259 处理

Administrator

使用其他 shell(如 zsh、fish 等) 导致环境变量丢失的问题,可以参考这里的解决方案

https://cnb.cool/cnb/cool/default-dev-env/-/blob/main/Dockerfile#L30

/etc/profile 加入到 xxxrc 里面也是一个合理的做法,并不是 hack。


这个 issue 暂时关闭了,如果有问题可以随时打开

1
Resolved ISSUE
assigned self

使用其他 shell(如 zsh、fish 等) 导致环境变量丢失的问题,可以参考这里的解决方案

https://cnb.cool/cnb/cool/default-dev-env/-/blob/main/Dockerfile#L30

/etc/profile 加入到 xxxrc 里面也是一个合理的做法,并不是 hack。


这个 issue 暂时关闭了,如果有问题可以随时打开

@maplemiao(苗兆丰) 实测可行。

Assignee
(晶晶)
(苗兆丰)
Label
体验优化
Priority
None yet
Time period
-
Property
Add custom properties to record and label key information
Participant