This documentation is for a release that is no longer maintained
See documentation for the latest supported version.发行注记和已知问题
Red Hat OpenShift Dev Spaces 3.15 发行注记和已知问题
摘要
使开源包含更多
红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。我们从这四个术语开始:master、slave、黑名单和白名单。由于此项工作十分艰巨,这些更改将在即将推出的几个发行版本中逐步实施。有关更多详情,请参阅我们的首席技术官 Chris Wright 提供的消息。
第 1 章 关于 Red Hat OpenShift Dev Spaces
Red Hat OpenShift Dev Spaces 在 Red Hat OpenShift 上通过企业级设置提供基于 Web 的开发环境:
- 云环境(CDE)服务器
- Microsoft Visual Studio Code - 开源和 JetBrains IntelliJ IDEA 社区(技术预览)
- 带有流行编程语言、框架和红帽技术的容器化环境
Red Hat OpenShift Dev Spaces 非常适合基于容器的开发。
Red Hat OpenShift Dev Spaces 3.15 基于 Eclipse Che 7.88。
1.1. 支持的平台
OpenShift Dev Spaces 在以下 CPU 架构上的 OpenShift 4.12-4.16 上运行:
-
AMD64 和 Intel 64 (
x
86_64) -
IBM Z (
s390x
)
以下 CPU 架构需要 Openshift 4.13-4.16 来运行 OpenShift Dev Spaces:
-
IBM Power (
ppc64le
)
1.2. 支持政策
对于 Red Hat OpenShift Dev Spaces 3.15,红帽将为部署、配置和使用产品提供支持。
1.3. Red Hat OpenShift Dev Spaces 和 Eclipse Che 的不同
Red Hat OpenShift Dev Spaces 和基于它的上游项目之间的一些区别,Eclipse Che:
- OpenShift Dev Spaces 仅在 Red Hat OpenShift 上被支持。
- OpenShift Dev Spaces 基于 Red Hat Enterprise Linux,并定期更新使其包含最新的安全修复。
- OpenShift Dev Spaces 为使用语言和技术提供 devfile,如 Quarkus、Lombok、NodeJS、Python、DotNet、Golang、C/C++ 和 PHP。您可以在 devspaces-devfileregistry 容器镜像源 中找到最新的示例项目。
- OpenShift Dev Spaces 使用 OpenShift OAuth 进行用户登录和管理。
红帽提供了许可证和打包,以确保对 OpenShift Dev Spaces 的企业级支持。
第 2 章 新功能及功能增强
2.1. 自动 podman 登录到
外部容器 registry
从这个版本开始,podman login
会在为 User Preferences
中配置的所有容器 registry 的工作空间启动期间自动执行。
对于 Red Hat OpenShift 内部容器 registry image-registry.openshift-image-registry.svc:5000
,podman login
会自动执行。不需要手动配置。
其他资源
2.2. 仪表板应该切换到已运行工作区的选项卡
当您从 User Dashboard 打开工作区时,与同一工作区对应的浏览器标签页已经存在时,切换到浏览器标签页会自动从这个版本开始。在以前的版本中,每当您从用户仪表板打开工作区时,都会创建一个新的浏览器标签页。
其他资源
2.3. 当 devfile 无效时,"restart Workspace from Local Devfile" 命令应该更加明确
从这个版本开始,如果因为无效的 devfile 而 'Restart Workspace from Local Devfile' 命令失败,则错误信息更为明确,且包含失败的确切原因。
其他资源
2.4. 允许为云开发环境中的所有 pod 定义注解
在这个版本中,您可以使用专用 CustomResource 字段为所有 Cloud Development Environment (CDE) pod 定义注解:
apiVersion: org.eclipse.che/v2 kind: CheCluster spec: devEnvironments: workspacesPodAnnotations: cluster-autoscaler.kubernetes.io/safe-to-evict: false
apiVersion: org.eclipse.che/v2
kind: CheCluster
spec:
devEnvironments:
workspacesPodAnnotations:
cluster-autoscaler.kubernetes.io/safe-to-evict: false
其他资源
2.5. 使用配置映射配置自定义编辑器定义
在以前的版本中,您只能通过修改和重建 Plugin Registry 来配置自定义编辑器定义。从这个版本开始,您可以通过创建专用的 ConfigMap
来配置它们。
其他资源
2.6. 为所有工作区启用 fuse-overlayfs
从这个版本开始,您可以为所有 CDE 启用 fuse-overlayfs
。
在 官方文档 中了解更多有关此功能的信息。
其他资源
2.7. 当禁用自动置备并启用了 Advanced Authorization 时,为命名空间置备失败的有意义的仪表板警告
在这个版本中,与预先配置的 Advanced Authorization 相关的失败时用户体验会被改进。当您的访问被拒绝时,您会在访问 User Dashboard 时看到一条清晰的错误消息。
在 官方文档 中了解更多有关高级授权的信息。
其他资源
2.8. 始终在工作区启动过程中刷新 OAuth 令牌
本发行版本中添加了一个新的实验性功能,它会在工作空间启动期间强制刷新 OAuth 访问令牌。
在 官方文档 中了解更多有关此功能的信息。
其他资源
2.9. devfile 2.3.0 支持
在这个版本中,CDE 定义支持 devfile 的新 2.3.0 schemaVersion
:
schemaVersion: 2.3.0 metadata: generateName: quarkus-api-example attributes: controller.devfile.io/storage-type: ephemeral components: - name: tools container: image: quay.io/devfile/universal-developer-image:ubi8-latest env: - name: QUARKUS_HTTP_HOST value: 0.0.0.0 ...
schemaVersion: 2.3.0
metadata:
generateName: quarkus-api-example
attributes:
controller.devfile.io/storage-type: ephemeral
components:
- name: tools
container:
image: quay.io/devfile/universal-developer-image:ubi8-latest
env:
- name: QUARKUS_HTTP_HOST
value: 0.0.0.0
...
有关 2.3.0
版本的更多详细信息,请参阅 官方文档。
其他资源
第 3 章 程序错误修复
3.1. 当配置了 Bitbucket PAT 和 Bitbucket OAuth 时,无法登录到用户仪表板
在此次更新之前,使用 Bitbucket OAuth 集成在 OpenShift Dev Spaces 安装中的工作区中包含 Bitbucket 个人访问令牌(PAT)会导致 "Backend is not available" 错误消息。在这个版本中,可以在不出现问题的情况下登录到用户仪表板。
其他资源
3.2. 打开 Visual Studio Code 编辑器时的多个"401 Unauthorized"错误
从时间到来,在使用 Visual Studio Code 打开工作区时,可能会遇到多个"401 Unauthorized"错误 - Open Source ("Code - OSS")编辑器。这个版本解决了这个缺陷。
其他资源
3.3. 带有配置的容器 registry 的自动 Podman 登录无法正常工作
在以前的版本中,从用户仪表板配置容器 registry (quay.io、docker.io 等)后,您不会自动登录到配置的 registry。这个版本解决了这个缺陷。
其他资源
3.4. 启用将用户用于与 git 不同的 SSH URL
在以前的版本中,严格验证会阻止从 URL 创建工作区,如 user1@repository.example.com:/home/user1/repositories/myrepo.git
。这个版本解决了这个缺陷。
其他资源
3.5. 对 '.code-workspace' 文件提供编辑
在这个发行版本中,包含额外逗号的 .code-workspace
文件的解析错误已被修复:
{ "folders": [ { "name": "che-code", "path": "/projects/che-code", }, ] }
{
"folders": [
{
"name": "che-code",
"path": "/projects/che-code",
},
]
}
其他资源
3.6. 编辑器的项目树中会显示空项目
如果在 devfile 中定义了多个初学者项目,用于在 Visual Studio Code - Open Source (Code - OSS")编辑器中显示空项目。这个版本解决了这个缺陷。
其他资源
3.7. 如果配置了两个 GitHub 供应商,仪表板 Git Services 选项卡重复的状态图标
在此版本之前,如果为 SaaS 和 Enterprise 设置 GitHub OAuth 配置 secret,如果只接受授权协议,则 Git Services
选项卡中的两个提供程序都会重复授权状态。这个版本解决了这个缺陷。
其他资源
3.8. 在任务终止后,zombie 进程保留在工作区容器中
在此发行版本中,您可以在 Visual Studio Code - Open Source ("Code - OSS")中工作时,在工作区容器中遇到很多标记为 < defunct
> 的进程。
其他资源
3.9. 环境变量将被忽略,任务失败
在此发行版本中,运行 devfile 中定义的专用命令时,GOPATH
和 GOCACHE
环境变量没有正确设置。这会导致失败的任务,用于 go build
任务等任务。这个版本解决了这个缺陷。
其他资源
3.10. 挂载与 stow
目录文件冲突的文件会在 $HOME
目录持久性过程中失败
在以前的版本中,使用与 stow
目录文件冲突的 ConfigMap、Secret 或 PVC 挂载文件会导致在执行 $HOME
目录持久性过程中出现 stow
命令失败。这个版本解决了这个缺陷。
其他资源
第 4 章 技术预览
技术预览功能为用户提供了一个对最新的产品创新的试用机会,以便用户可以对其进行测试并提供反馈。但是,Red Hat 订阅级别协议并不包括对这些技术预览功能的完全支持。这些功能可能并不完善,且不适用于生产环境。由于红帽会考虑在将来的产品中使用这些技术预览功能,我们将尝试解决客户在使用这些功能时遇到的问题。请参阅: 技术预览支持范围。
无。
第 5 章 弃用的功能
无。
第 6 章 删除的功能
无。
第 7 章 已知问题
7.1. 从指向没有 devfile 的仓库分支的 URL 启动新工作区的问题
存在一个已知问题:在没有 devfile.yaml
文件的情况下影响存储库。如果您从此类存储库的分支启动新的工作区,则默认分支(如 'main')将用于项目克隆,而不是预期的分支。
其他资源
7.2. 刷新令牌模式会导致 cyclic 重新加载工作区启动页面
当对 'GitHub' 和 'Azure DevOps' OAuth 供应商使用 CHE_FORCE_REFRESH_PERSONAL_ACCESS_TOKEN
属性应用实验性刷新令牌模式时,存在一个已知问题。这会导致工作区开始重新载入仪表板,在每个页面重启时创建一个新的个人访问令牌。刷新令牌模式可用于 'GitLab' 和 'BitBucket' OAuth 供应商。
其他资源
7.3. 没有 PAT 或 OAuth 配置的 GitHub Enterprise 公共存储库的工作空间创建失败
从 GitHub Enterprise 公共存储库创建一个没有配置个人访问令牌(PAT)或 OAuth 的工作区,存在一个已知问题。如果您尝试从此类存储库创建工作区,您会收到以下出错信息:"Failed to create the workspace.无法使用任何提供的参数构建工厂。请检查参数是否正确,并重新发送查询"。
临时解决方案
添加 Git 供应商的 PAT,或配置 OAuth。
其他资源
7.4. Ansible Lightspeed 没有连接到 Ansible 服务器
Ansible Lightspeed 存在一个已知问题,并连接到 Ansible 服务器。如果 OpenShift Dev Spaces 环境不在 2.2.openshiftapps.com 域下,Ansible Lightspeed 无法连接到 Ansible 服务器。
没有可用的临时解决方案。
其他资源
7.5. FIPS 合规性更新
FIPS 合规的一个已知问题会导致某些加密模块没有被 FIPS 验证。以下是在 OpenShift Dev Spaces 中使用 FIPS 的要求和限制列表:
所需的集群和 Operator 更新
根据情况,将 Red Hat OpenShift Container Platform 安装更新至 4.11、4.12 或 4.13 的最新 z-stream 更新。如果您还没有启用 FIPS,则需要卸载和重新安装。
集群启动并运行后,安装 OpenShift Dev Spaces 3.7.1 (3.7-264),并验证最新的 DevWorkspace operator 捆绑包 0.21.2 (0.21-7)或更新版本已被安装和更新。请参阅 https://catalog.redhat.com/software/containers/devworkspace/devworkspace-operator-bundle/60ec9f48744684587e2186a3
UDI 镜像中的 golang 编译器
通用开发人员镜像(UDI)容器包含一个 golang 编译器,它使用 CGO_ENABLED=1
标志构建。check-payload scanner ( https://github.com/openshift/check-payload )会抛出错误,但可以安全地忽略您使用此编译器构建的任何标签 CGO_ENABLED=1
,且不会使用 extldflags -static
或 -tags no_openssl
。
生成的二进制文件可以被扫描,应无错误地传递。
静态链接的二进制文件
您可以在这两个容器中找到与加密无关的静态链接二进制文件:
- code-rhel8
- idea-rhel8.
由于它们与加密无关,它们不会影响 FIPS 合规性。
Helm 支持 FIPS
UDI 容器包含 helm
二进制文件,它没有使用 FIPS 支持编译。如果您在 FIPS 环境中没有使用 helm
。
其他资源
7.6. 调试器无法在 .NET 示例中工作
目前,Microsoft Visual Studio Code 中的 debugger - 开源无法在 .NET 示例中工作。
临时解决方案
使用与以下源不同的镜像:
其他资源
第 8 章 常见问题解答
- 是否可以将应用程序从 OpenShift Dev Spaces 部署到 OpenShift 集群?
-
用户必须使用
oc login
从其运行的工作区登录到 OpenShift 集群。 - 为获得最佳性能,建议使用什么存储用于 OpenShift Dev Spaces 的持久性卷?
- 使用块存储。
- 是否有可能在同一集群中部署多个 OpenShift Dev Spaces 实例?
- 每个集群只能部署一个 OpenShift Dev Spaces 实例。
- 是否可以 离线安装 OpenShift Dev Spaces(不与互联网连接)?
- 请参阅在 OpenShift 的受限环境中安装 Red Hat OpenShift Dev Spaces。
- 是否可以在 OpenShift Dev Spaces 中使用非默认证书?
- 您可以使用自签名或公共证书。请参阅 导入不受信任的 TLS 证书。
- 是否可以同时运行多个工作区?
- 请参阅启用用户同时运行多个工作区。