Skip to content

Commit f5f9ab2

Browse files
authored
Merge pull request #8856 from tylercritchlow/volumes-page
Add a Volumes page
2 parents be1bb23 + e0258ce commit f5f9ab2

File tree

8 files changed

+954
-39
lines changed

8 files changed

+954
-39
lines changed

.github/actions/spelling/expect.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ bottlesofbeeronthewall
8181
bpf
8282
bpffs
8383
brucebean
84+
breadcrumb
8485
bsd
8586
bsdextrautils
8687
bsdtar
@@ -114,6 +115,7 @@ chirico
114115
cidata
115116
cidfile
116117
Cim
118+
clickable
117119
clientcmd
118120
clientset
119121
clonefile

pkg/rancher-desktop/assets/translations/en-us.yaml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -219,6 +219,36 @@ containers:
219219
started: Uptime
220220
actions: Actions
221221

222+
volumes:
223+
title: Volumes
224+
sortableTables:
225+
noRows: There are no volumes to show
226+
manage:
227+
table:
228+
header:
229+
volumeName: Volume Name
230+
driver: Driver
231+
mountpoint: Mount Point
232+
created: Created
233+
manager:
234+
table:
235+
action:
236+
browse: Browse Files
237+
delete: Delete
238+
files:
239+
title: Volume Files
240+
loading: Loading volume files...
241+
volumeNotFound: 'Volume "{name}" not found'
242+
checkError: Error checking volume status
243+
listError: 'Error listing files: {error}'
244+
noFiles: This volume is empty
245+
table:
246+
header:
247+
name: Name
248+
size: Size
249+
modified: Modified
250+
permissions: Permissions
251+
222252
images:
223253
title: Images
224254
sortableTables:

pkg/rancher-desktop/assets/translations/zh-hans.yaml

Lines changed: 36 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -252,7 +252,7 @@ authConfig:
252252
topPrivateDomain: '顶级域'
253253
2:
254254
title: '第二步:导航到 "Credentials"标签,创建你的OAuth客户端ID。'
255-
body:
255+
body:
256256
1: '选择 "Create Credentials"下拉菜单,选择 "OAuth clientID",然后选择 "Web application"。'
257257
2: 'Authorized JavaScript origins:'
258258
3: 'Authorized redirect URIs:'
@@ -320,16 +320,16 @@ authConfig:
320320
UID: UID字段
321321
adfs: 配置AD FS 账户
322322
api: Rancher API Host
323-
cert:
323+
cert:
324324
label: 证书
325325
placeholder: 粘贴证书,以-----BEGIN CERTIFICATE----- 开始。
326326
displayName: 显示名称字段
327327
groups: 用户组字段
328-
key:
328+
key:
329329
label: 私钥
330330
placeholder: 粘贴私钥,一般以-----RSA PRIVATE KEY----- 开始。
331331
keycloak: 配置Keycloak账户
332-
metadata:
332+
metadata:
333333
label: Metadata XML
334334
placeholder: 粘贴IDP Metadata XML
335335
okta: 配置Okta账户
@@ -373,7 +373,7 @@ asyncButton:
373373
apply:
374374
action: '应用'
375375
success: '已应用'
376-
waiting: '正在应用…'
376+
waiting: '正在应用…'
377377
continue:
378378
action: '继续'
379379
success: '已保存'
@@ -389,7 +389,7 @@ asyncButton:
389389
action: 正在执行
390390
error: 错误
391391
success: 成功
392-
waiting: 等待中
392+
waiting: 等待中
393393
delete:
394394
action: '删除'
395395
success: '已删除'
@@ -474,10 +474,10 @@ backupRestoreOperator:
474474
label: 存储类
475475
tip: '配置一个默认保存所有备份的存储位置。您可以选择对每个备份进行覆盖,但仅限于使用与 S3 兼容的对象存储。'
476476
warning: '此 {type} 没有将其回收策略设置为 "保留"。 如果卷被更改或未绑定,您的备份可能会丢失。'
477-
encryption: '这个{type}没有将其回收策略设置为 "保留"。 如果该卷被改变或变得不受约束,你的备份可能会丢失。'
477+
encryption: '这个{type}没有将其回收策略设置为 "保留"。 如果该卷被改变或变得不受约束,你的备份可能会丢失。'
478478
encryptionConfigName:
479479
backuptip: '<code>cattle-resource-system</code>命名空间中具有<code>encryption-provider-config.yaml</code>密钥的任何秘密。<br/>此文件的内容是从此备份中执行还原所必需的,Rancher Backup 不会存储这些内容。'
480-
label: 加密配置密钥
480+
label: 加密配置密钥
481481
options:
482482
none: 存储未加密的备份内容。
483483
secret: '使用 <a target="_blank" rel="noopener noreferrer nofollow" href="https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/#understanding-the-encryption-at-rest-configuration">加密配置秘密</a>(推荐)对备份进行加密。'
@@ -668,7 +668,7 @@ cis:
668668
alertNeeded: Alerting must be enabled within the CIS chart questions.yaml. This requires that <a tabindex="0" aria-label="Link to Rancher's Monitoring" href="{link}"> Rancher's Monitoring and Alerting app</a> is installed and the Receivers and Routes are <a target="_blank" rel='noopener nofollow' href='https://rancher.com/docs/rancher/v2.x/en/monitoring-alerting/v2.5/configuration/#alertmanager-config'> configured to send out alerts.</a>
669669
alertOnComplete: 扫描完成告警
670670
alertOnFailure: 扫描失败告警
671-
benchmarkVersion: Benchmark 版本
671+
benchmarkVersion: Benchmark 版本
672672
clusterProvider: 提供集群的厂商
673673
cronSchedule:
674674
label: 定时调度
@@ -706,7 +706,7 @@ cis:
706706
scanReport: 扫描报告
707707
skip: 跳过
708708
total: 总共
709-
warn: 警告
709+
warn: 警告
710710
scheduling:
711711
enable: 定时运行扫描
712712
disable: 运行单次扫描
@@ -895,6 +895,7 @@ containers:
895895
sortableTables:
896896
noRows: 没有要显示的容器
897897

898+
898899
images:
899900
title: Images
900901
sortableTables:
@@ -1026,7 +1027,7 @@ gatekeeperConstraint:
10261027
title: 匹配
10271028
tab:
10281029
enforcementAction:
1029-
title: 执行动作
1030+
title: 执行动作
10301031
rules:
10311032
title: 规则
10321033
sub:
@@ -1050,7 +1051,7 @@ gatekeeperConstraint:
10501051
title: 参数
10511052
template: 模板
10521053
violations:
1053-
title: 违反规定
1054+
title: 违反规定
10541055

10551056
gatekeeperIndex:
10561057
#poweredBy: OPA Gatekeeper
@@ -1077,7 +1078,7 @@ glance:
10771078
reload: 重新加载
10781079
grafana: Grafana
10791080

1080-
graphOptions:
1081+
graphOptions:
10811082
detail: 详情
10821083
summary: 概述
10831084
refresh: 刷新
@@ -1258,7 +1259,7 @@ labels:
12581259
landing:
12591260
clusters: 集群
12601261
# taken from Ember: https://github.com/rancher/ui/blob/master/app/components/modal-home/template.hbs
1261-
releaseNotes:
1262+
releaseNotes:
12621263
'<ul class="list-unstyled">
12631264
<li class="mb-10">
12641265
<b>Cluster Explorer:</b> 新的仪表盘提供了对Rancher管理的集群的更深入理解。
@@ -1748,7 +1749,7 @@ monitoringReceiver:
17481749
label: 代理URL
17491750
placeholder: 例如:http://my-proxy/
17501751
sendResolved:
1751-
label: 启用发送已解决的警报
1752+
label: 启用发送已解决的警报
17521753

17531754
monitoringRoute:
17541755
groups:
@@ -1888,33 +1889,33 @@ persistentVolume:
18881889
label: 驱动
18891890
placeholder: 例如:driver.longhorn.io
18901891
volumeHandle:
1891-
#label: Volume Handle
1892+
#label: Volume Handle
18921893
placeholder: 例如:pvc-xxxx
18931894
volumeAttributes:
18941895
add: 添加卷参数
18951896
nodePublishSecretName:
1896-
#label: Node Publish Secret Name
1897+
#label: Node Publish Secret Name
18971898
placeholder: 例如:secret
18981899
nodePublishSecretNamespace:
1899-
#label: Node Publish Secret Namespace
1900+
#label: Node Publish Secret Namespace
19001901
placeholder: 例如:default
19011902
nodeStageSecretName:
1902-
#label: Node Stage Secret Name
1903+
#label: Node Stage Secret Name
19031904
placeholder: 例如:secret
19041905
nodeStageSecretNamespace:
1905-
#label: Node Stage Secret Namespace
1906+
#label: Node Stage Secret Namespace
19061907
placeholder: 例如:default
19071908
controllerExpandSecretName:
1908-
#label: Controller Expand Secret Name
1909+
#label: Controller Expand Secret Name
19091910
placeholder: 例如:secret
19101911
controllerExpandSecretNamespace:
1911-
#label: Controller Expand Secret Namespace
1912+
#label: Controller Expand Secret Namespace
19121913
placeholder: 例如:default
19131914
controllerPublishSecretName:
1914-
#label: Controller Publish Secret Name
1915+
#label: Controller Publish Secret Name
19151916
placeholder: 例如:secret
19161917
controllerPublishSecretNamespace:
1917-
#label: Controller Publish Secret Namespace
1918+
#label: Controller Publish Secret Namespace
19181919
placeholder: 例如:default
19191920
cephfs:
19201921
label: Ceph Filesystem(不支持)
@@ -1962,7 +1963,7 @@ persistentVolume:
19621963
datasetName:
19631964
label: 数据集名称
19641965
placeholder: 例如:dataset
1965-
datasetUUID:
1966+
datasetUUID:
19661967
label: 数据集 UUID
19671968
placeholder: 例如:uuid
19681969
glusterfs:
@@ -2046,13 +2047,13 @@ persistentVolume:
20462047
label: 系统
20472048
placeholder: 例如:scaleio
20482049
sslEnabled:
2049-
label: 启用SSL
2050+
label: 启用SSL
20502051
storageos:
20512052
label: StorageOS(不支持)
2052-
volumeName:
2053+
volumeName:
20532054
label: 卷名称
20542055
placeholder: 例如:vol
2055-
volumeNamespace:
2056+
volumeNamespace:
20562057
label: 卷命名空间
20572058
placeholder: 例如:default
20582059
nfs:
@@ -2323,7 +2324,7 @@ rbac:
23232324
yes: '是:新的绑定不允许使用这个角色'
23242325
no:
23252326
tabs:
2326-
grantResources:
2327+
grantResources:
23272328
label: 授予资源
23282329
tableHeaders:
23292330
verbs: 操作
@@ -2585,7 +2586,7 @@ secret:
25852586
'istio.io/key-and-cert': 'Ist'
25862587
'helm.sh/release.v1': 'Helm'
25872588
'fleet.cattle.io/cluster-registration-values': 'F'
2588-
'provisioning.cattle.io/cloud-credential': 'CC'
2589+
'provisioning.cattle.io/cloud-credential': 'CC'
25892590
relatedWorkloads: 相关的工作负载
25902591

25912592
selectOrCreateAuthSecret:
@@ -2874,7 +2875,7 @@ storageClass:
28742875
availabilityZone:
28752876
label: 可用区
28762877
automatic: "自动选择:选择节点所在区域作为可用区"
2877-
manual:
2878+
manual:
28782879
label: "手动选择:自行指定一个可用区"
28792880
placeholder: 例如:nova
28802881
rbd:
@@ -2917,7 +2918,7 @@ storageClass:
29172918
quobyteApiServer:
29182919
label: Quobyte API Server
29192920
placeholder: 例如:http://138.68.74.142:7860
2920-
registry:
2921+
registry:
29212922
label: 仓库IP地址
29222923
placeholder: 例如:138.68.74.142:7861
29232924
adminSecretNamespace:
@@ -3260,7 +3261,7 @@ validation:
32603261
required: '"{key}"是必填项'
32613262
requiredOrOverride: '"{key}" 是必须的或必须允许覆盖的'
32623263
roleTemplate:
3263-
roleTemplateRules:
3264+
roleTemplateRules:
32643265
missingVerb: 你必须为每个资源授予指定至少一个动作
32653266
missingResource: 你必须为每个资源授予至少指定一个资源、非资源URL或API组
32663267
missingApiGroup: 你必须为每个资源授予指定一个API组
@@ -3548,7 +3549,7 @@ workload:
35483549
placeholder: 例如:web
35493550
validation:
35503551
containers: 容器
3551-
containerImage: 容器{{name} - “容器镜像 "是必需的。
3552+
containerImage: 容器{{name} - “容器镜像 "是必需的。
35523553
replicas: 副本
35533554
showTabs: '显示高级选项'
35543555
scheduling:
@@ -4095,7 +4096,7 @@ featureFlags:
40954096
promptActivate: 请确认您要激活功能标志"{flag}"。
40964097
promptDeactivate: 请确认你想停用功能标志"{flag}"。
40974098
restartRequired: "注意:更新该功能标志需要重新启动"
4098-
4099+
40994100
##############################
41004101
### Support Page
41014102
##############################

pkg/rancher-desktop/entry/router.ts

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
import Vue from 'vue';
2-
import VueRouter, { RouteConfig } from 'vue-router';
2+
import VueRouter, {RouteConfig} from 'vue-router';
33

44
import Containers from '../pages/Containers.vue';
55
import DenyRoot from '../pages/DenyRoot.vue';
6+
import Volumes from '../pages/Volumes.vue';
67
import Diagnostics from '../pages/Diagnostics.vue';
78
import Extensions from '../pages/Extensions.vue';
89
import FirstRun from '../pages/FirstRun.vue';
@@ -21,6 +22,7 @@ import ImagesScan from '../pages/images/scans/_image-name.vue';
2122
import SnapshotsCreate from '../pages/snapshots/create.vue';
2223
import SnapshotsDialog from '../pages/snapshots/dialog.vue';
2324
import ContainerLogs from '../pages/containers/logs/_id.vue';
25+
import VolumeFiles from '../pages/volumes/files/_name.vue';
2426

2527
Vue.use(VueRouter);
2628

@@ -32,9 +34,15 @@ const routes: Array<RouteConfig> = [
3234
{
3335
path: '/Containers', component: Containers, name: 'Containers',
3436
},
37+
{
38+
path: '/Volumes', component: Volumes, name: 'Volumes',
39+
},
3540
{
3641
path: '/containers/logs/:id', component: ContainerLogs, name: 'containers-logs-id',
3742
},
43+
{
44+
path: '/volumes/files/:name', component: VolumeFiles, name: 'volumes-files-name',
45+
},
3846
{
3947
path: '/PortForwarding', component: PortForwarding, name: 'Port Forwarding',
4048
},

0 commit comments

Comments
 (0)