@rancher/shell 0.1.3 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (131) hide show
  1. package/assets/brand/suse/dark/rancher-logo.svg +1 -148
  2. package/assets/brand/suse/rancher-logo.svg +1 -130
  3. package/assets/images/featured/img1.jpg +0 -0
  4. package/assets/images/featured.jpg +0 -0
  5. package/assets/images/generic-plugin.svg +7 -0
  6. package/assets/styles/themes/_dark.scss +3 -0
  7. package/assets/styles/themes/_light.scss +3 -0
  8. package/assets/styles/themes/_suse.scss +1 -1
  9. package/assets/translations/en-us.yaml +183 -45
  10. package/assets/translations/zh-hans.yaml +21 -24
  11. package/components/AsyncButton.vue +17 -2
  12. package/components/ButtonDropdown.vue +4 -0
  13. package/components/Carousel.vue +291 -0
  14. package/components/CommunityLinks.vue +69 -18
  15. package/components/CruResource.vue +11 -3
  16. package/components/Dialog.vue +102 -0
  17. package/components/ExplorerMembers.vue +2 -4
  18. package/components/ExplorerProjectsNamespaces.vue +6 -7
  19. package/components/IconMessage.vue +9 -1
  20. package/components/LocaleSelector.vue +62 -29
  21. package/components/ResourceTable.vue +7 -2
  22. package/components/SimpleBox.vue +6 -4
  23. package/components/SortableTable/index.vue +11 -21
  24. package/components/Tabbed/Tab.vue +5 -0
  25. package/components/Tabbed/index.vue +29 -2
  26. package/components/auth/Principal.vue +1 -0
  27. package/components/fleet/FleetBundles.vue +8 -3
  28. package/components/fleet/FleetSummary.vue +6 -0
  29. package/components/form/KeyValue.vue +80 -58
  30. package/components/form/NameNsDescription.vue +10 -4
  31. package/components/form/ResourceTabs/index.vue +5 -1
  32. package/components/formatter/ClusterLink.vue +3 -7
  33. package/components/nav/NamespaceFilter.vue +3 -3
  34. package/components/nav/TopLevelMenu.vue +10 -28
  35. package/config/footer.js +13 -14
  36. package/config/labels-annotations.js +2 -1
  37. package/config/product/explorer.js +5 -4
  38. package/config/product/legacy.js +0 -47
  39. package/config/product/multi-cluster-apps.js +0 -12
  40. package/config/product/settings.js +12 -1
  41. package/config/product/uiplugins.js +17 -0
  42. package/config/settings.js +21 -2
  43. package/config/types.js +5 -1
  44. package/config/uiplugins.js +60 -0
  45. package/content/docs/en-us/getting-started.md +1 -26
  46. package/core/plugins.js +12 -0
  47. package/detail/provisioning.cattle.io.cluster.vue +3 -3
  48. package/detail/workload/index.vue +2 -2
  49. package/dialog/DiagnosticTimingsDialog.vue +116 -0
  50. package/dialog/RotateCertificatesDialog.vue +9 -3
  51. package/edit/auth/azuread.vue +28 -9
  52. package/edit/networking.k8s.io.ingress/index.vue +2 -2
  53. package/edit/persistentvolume/index.vue +3 -0
  54. package/edit/pod.vue +27 -0
  55. package/edit/provisioning.cattle.io.cluster/rke2.vue +76 -5
  56. package/edit/service.vue +7 -5
  57. package/edit/workload/__tests__/Upgrading.test.ts +1 -0
  58. package/edit/workload/index.vue +13 -1
  59. package/edit/workload/mixins/workload.js +13 -13
  60. package/edit/workload/storage/ContainerMountPaths.vue +240 -0
  61. package/edit/workload/storage/Mount.vue +1 -0
  62. package/edit/workload/storage/awsElasticBlockStore.vue +20 -1
  63. package/edit/workload/storage/azureDisk.vue +22 -2
  64. package/edit/workload/storage/azureFile.vue +20 -2
  65. package/edit/workload/storage/csi/index.vue +23 -1
  66. package/edit/workload/storage/gcePersistentDisk.vue +20 -2
  67. package/edit/workload/storage/index.vue +23 -49
  68. package/edit/workload/storage/vsphereVolume.vue +11 -1
  69. package/layouts/default.vue +14 -8
  70. package/layouts/home.vue +9 -4
  71. package/layouts/plain.vue +10 -5
  72. package/list/management.cattle.io.setting.vue +3 -3
  73. package/list/provisioning.cattle.io.cluster.vue +1 -1
  74. package/machine-config/harvester.vue +5 -3
  75. package/models/catalog.cattle.io.uiplugin.js +34 -0
  76. package/models/cluster/node.js +25 -2
  77. package/models/fleet.cattle.io.bundle.js +1 -1
  78. package/models/harvesterhci.io.management.cluster.js +11 -5
  79. package/models/provisioning.cattle.io.cluster.js +12 -6
  80. package/models/workload.js +5 -3
  81. package/nuxt.config.js +69 -25
  82. package/package.json +108 -109
  83. package/pages/auth/login.vue +1 -1
  84. package/pages/c/_cluster/apps/charts/index.vue +46 -1
  85. package/pages/c/_cluster/apps/charts/install.vue +10 -9
  86. package/pages/c/_cluster/explorer/index.vue +72 -9
  87. package/pages/c/_cluster/explorer/tools/index.vue +12 -5
  88. package/pages/c/_cluster/mcapps/index.vue +1 -1
  89. package/pages/c/_cluster/settings/brand.vue +0 -40
  90. package/pages/c/_cluster/settings/links.vue +200 -0
  91. package/pages/c/_cluster/uiplugins/DeveloperInstallDialog.vue +232 -0
  92. package/pages/c/_cluster/uiplugins/InstallDialog.vue +242 -0
  93. package/pages/c/_cluster/uiplugins/PluginInfoPanel.vue +284 -0
  94. package/pages/c/_cluster/uiplugins/RemoveUIPlugins.vue +130 -0
  95. package/pages/c/_cluster/uiplugins/SetupUIPlugins.vue +253 -0
  96. package/pages/c/_cluster/uiplugins/UninstallDialog.vue +115 -0
  97. package/pages/c/_cluster/uiplugins/index.vue +694 -0
  98. package/pages/diagnostic.vue +185 -101
  99. package/pages/docs/_doc.vue +3 -1
  100. package/pages/home.vue +21 -56
  101. package/pages/prefs.vue +108 -88
  102. package/pages/safeMode.vue +17 -0
  103. package/pages/support/index.vue +23 -15
  104. package/pkg/dynamic-importer.lib.js +4 -0
  105. package/plugins/dashboard-store/resource-class.js +2 -2
  106. package/plugins/formatters.js +15 -0
  107. package/plugins/plugin.js +56 -4
  108. package/plugins/steve/mutations.js +1 -1
  109. package/plugins/steve/subscribe.js +94 -72
  110. package/plugins/steve/web-worker.steve-sub-worker.js +24 -15
  111. package/promptRemove/management.cattle.io.globalrole.vue +47 -0
  112. package/promptRemove/management.cattle.io.roletemplate.vue +47 -0
  113. package/promptRemove/mixin/roleDeletionCheck.js +97 -0
  114. package/scripts/publish-shell.sh +1 -1
  115. package/scripts/sync-shell-deps +37 -0
  116. package/store/catalog.js +9 -8
  117. package/store/i18n.js +10 -1
  118. package/store/prefs.js +16 -0
  119. package/store/type-map.js +32 -5
  120. package/store/uiplugins.ts +15 -61
  121. package/utils/__tests__/object.test.ts +0 -24
  122. package/utils/__tests__/selector.test.ts +1 -1
  123. package/utils/dynamic-importer.js +4 -0
  124. package/utils/grafana.js +2 -6
  125. package/utils/socket.js +41 -20
  126. package/utils/string.js +1 -7
  127. package/utils/validators/formRules/__tests__/index.test.ts +108 -0
  128. package/utils/validators/formRules/index.ts +9 -1
  129. package/yarn-error.log +195 -0
  130. package/pages/plugins.vue +0 -387
  131. package/server/verdaccio-middleware.js +0 -56
@@ -43,6 +43,7 @@ generic:
43
43
  info: Info
44
44
  warning: Warning
45
45
  error: Error
46
+ ok: OK
46
47
  overview: Overview
47
48
  plusMore: "+ {n} more"
48
49
  readFromFile: Read from File
@@ -184,10 +185,11 @@ product:
184
185
  settings: Global Settings
185
186
  clusterManagement: Cluster Management
186
187
  monitoring: Monitoring
187
- mcapps: Multi-cluster Apps
188
+ mcapps: Global Configuration
188
189
  neuvector: NeuVector
189
190
  harvesterManager: Virtualization Management
190
191
  rancher: Rancher
192
+ uiplugins: UI Plugins
191
193
 
192
194
  suffix:
193
195
  percent: "%"
@@ -242,19 +244,26 @@ about:
242
244
  checkboxLabel: Make additional requests
243
245
  systemInformation:
244
246
  subtitle: System Information
245
- os: OS
246
- browserUserAgent: Browser User Agent
247
- browserLanguage: Browser Language
248
- cookieEnabled: Cookies Enabled
249
- deviceMemory: Device Memory
250
- hardwareConcurrency: Hardware Concurrency
251
- memJsHeapLimit: Memory JS Heap Size limit
252
- memTotalJsHeapSize: Memory Total JS Heap Size
253
- memUsedJsHeapSize: Memory Used JS Heap Size
247
+ browser: Browser
248
+ browserInfo: "User Agent: {userAgent}, Language: {language}, Cookies Enabled: {cookieEnabled}"
249
+ system: System
250
+ jsMemory: Javascript Memory
251
+ deviceMemory: "Device Memory: {deviceMemory}"
252
+ hardwareConcurrency: "Hardware Concurrency: {hardwareConcurrency}"
253
+ os: "OS: {platform}"
254
+ memJsHeapLimit: "Heap Size limit: {jsHeapSizeLimit}"
255
+ memTotalJsHeapSize: "Total Heap Size: {totalJSHeapSize}"
256
+ memUsedJsHeapSize: "Used Heap Size: {usedJSHeapSize}"
254
257
  logs:
255
258
  subtitle: Latest Logs
256
- resourceCounts:
257
- subtitle: Resource Counts
259
+ resourceCounts: |-
260
+ {count, plural,
261
+ one { Resource Counts by Cluster ({count} cluster)}
262
+ other { Resource Counts by Cluster ({count} clusters)}
263
+ }
264
+ modal:
265
+ title: Response times have not yet been generated.
266
+ body: Generate response times to offer more specific information.
258
267
 
259
268
  accountAndKeys:
260
269
  title: Account and API Keys
@@ -564,7 +573,7 @@ asyncButton:
564
573
  waiting: Deactivating…
565
574
  success: Deactivated
566
575
  diagnostic:
567
- action: Download Data
576
+ action: Download Diagnostic Package
568
577
  success: Saving
569
578
  waiting: Downloading…
570
579
  done:
@@ -598,7 +607,11 @@ asyncButton:
598
607
  install:
599
608
  action: Install
600
609
  success: Installing
601
- waiting: Starting…
610
+ waiting: Installing…
611
+ load:
612
+ action: Load
613
+ success: Loaded
614
+ waiting: Loadingg…
602
615
  pause:
603
616
  action: Pause Orchestration
604
617
  success: Paused Orchestration
@@ -641,6 +654,10 @@ asyncButton:
641
654
  action: Snapshot Now
642
655
  waiting: Snapshot Initiated…
643
656
  success: Snapshot Creating
657
+ timing:
658
+ action: Generate Response Times
659
+ waiting: Generating…
660
+ success: Response Times Generated
644
661
  uninstall:
645
662
  action: Uninstall
646
663
  success: Uninstalled
@@ -800,7 +817,8 @@ catalog:
800
817
  enableLegacy:
801
818
  prompt: You will need to enable Legacy Features to edit this App
802
819
  goto: Go to Feature Flag settings
803
- navigate: Navigate to {legacyType} Apps
820
+ navigate: Navigate to Legacy Apps
821
+ mcmNotSupported: Legacy Multi-cluster Apps can not be managed through this UI
804
822
  category:
805
823
  legacy: Legacy
806
824
  mcm: Multi-cluster
@@ -902,6 +920,8 @@ catalog:
902
920
  rancher-charts: '{vendor}'
903
921
  rancher-partner-charts: Partners
904
922
  rancher-rke2-charts: RKE2
923
+ rancher-ui-plugins: Rancher Extensions
924
+
905
925
  target:
906
926
  git: Git repository containing Helm chart or cluster template definitions
907
927
  http: http(s) URL to an index generated by Helm
@@ -1084,7 +1104,7 @@ cluster:
1084
1104
  help: The default region to use when creating clusters. Also contacted to verify that this credential works.
1085
1105
  label: Default Region
1086
1106
  secretKey:
1087
- label: SecretKey
1107
+ label: Secret Key
1088
1108
  placeholder: Your AWS Secret Key
1089
1109
  azure:
1090
1110
  clientId:
@@ -1191,6 +1211,9 @@ cluster:
1191
1211
  warning:
1192
1212
  label: This is a Harvester Cluster - enable the Harvester feature flag to manage it
1193
1213
  state: Warning
1214
+ cloudProvider:
1215
+ incompatible:
1216
+ You cannot select the Harvester cloud provider as the current Harvester version is not compatible with the selected RKE2 Kubernetes version, click <a target="_blank" rel="noopener noreferrer nofollow" href="https://www.suse.com/suse-harvester/support-matrix/all-supported-versions">here</a> to see which Kubernetes versions are supported.
1194
1217
  clusterWarning: |-
1195
1218
  There {count, plural,
1196
1219
  =1 {is 1 Harvester cluster that is not shown}
@@ -1525,7 +1548,7 @@ cluster:
1525
1548
  =5 {}
1526
1549
  =6 { Clusters should have an odd number of nodes. }
1527
1550
  =7 {}
1528
- other { More than 7 etcd nods is not recommended. }
1551
+ other { More than 7 etcd nodes is not recommended. }
1529
1552
  }
1530
1553
  worker: |-
1531
1554
  {count, plural,
@@ -1557,10 +1580,10 @@ cluster:
1557
1580
  noResults: No results found
1558
1581
  privateRegistry:
1559
1582
  systemDefaultRegistry:
1560
- label: Registry hostname for {vendor} images
1583
+ label: Registry hostname for {vendor} System Container Images
1561
1584
  mode:
1562
- public: Pull images for {vendor} from public DockerHub
1563
- private: Pull images for {vendor} from a private registry
1585
+ public: Use default global registry for {vendor} System Container Images
1586
+ private: Use specified private registry for {vendor} System Container Images
1564
1587
  advanced: Configure advanced containerd mirroring and registry authentication options
1565
1588
  provider:
1566
1589
  aliyunecs: Aliyun ECS
@@ -1611,7 +1634,7 @@ cluster:
1611
1634
  rancherkubernetesengine: RKE
1612
1635
  rke2: RKE2
1613
1636
  rke: RKE1
1614
- rkeWindows: Windows
1637
+ rkeWindows: Windows (RKE1 only)
1615
1638
  s3: S3-Compatible
1616
1639
  softlayer: IBM Cloud
1617
1640
  tencenttke: Tencent TKE
@@ -1650,6 +1673,7 @@ cluster:
1650
1673
  label: Default Pod Security Policy
1651
1674
  enableNetworkPolicy:
1652
1675
  label: Project Network Isolation
1676
+ warning: Per default, the ingress controller will not be able to route requests to pods on other nodes.
1653
1677
  workNode:
1654
1678
  label: Worker Nodes
1655
1679
  controlPlaneConcurrency:
@@ -2067,6 +2091,7 @@ glance:
2067
2091
  installMonitoring: Install Monitoring
2068
2092
  v1MonitoringInstalled: V1 Monitoring Installed
2069
2093
  clusterInfo: Cluster Information
2094
+ eventsTable: Full events list
2070
2095
 
2071
2096
  clusterBadge:
2072
2097
  addLabel: Add Cluster Badge
@@ -2096,9 +2121,15 @@ graphOptions:
2096
2121
 
2097
2122
  growl:
2098
2123
  clearAll: Clear All Notifications
2099
- disconnected:
2100
- message: "The connection to {url} closed unexpectedly {time}. Retrying..."
2124
+ disconnectError:
2125
+ message: "The connection to {url} closed unexpectedly at {time}. Disconnected after {tries} reconnect attempts. Check your network connection and reload the page"
2101
2126
  title: Websocket Disconnected
2127
+ connectError:
2128
+ message: "The connection to {url} closed unexpectedly at {time}. Reconnect attempt #{tries}."
2129
+ title: Websocket Reconnecting
2130
+ reconnected:
2131
+ message: "The connection to {url} was restored on attempt #{tries}."
2132
+ title: Websocket Reconnected
2102
2133
 
2103
2134
  hpa:
2104
2135
  detail:
@@ -2442,10 +2473,9 @@ landing:
2442
2473
  seeWhatsNew: Learn more about the improvements and new capabilities in this version.
2443
2474
  whatsNewLink: "What's new in 2.6"
2444
2475
  learnMore: Learn More
2445
- gettingStarted:
2446
- title: Getting Started
2447
- body: Take a look at the the quick getting started guide. For Cluster Manager users, learn more about where you can find your favorite features in the Dashboard UI.
2448
2476
  support: Support
2477
+ psps: PSPs
2478
+ deprecatedPsp: Pod Security Policies are deprecated as of Kubernetes v1.21, and have been removed in Kubernetes v1.25. You have one or more PodSecurityPolicy resource(s) in this cluster.
2449
2479
  community:
2450
2480
  title: Community Support
2451
2481
  docs: Docs
@@ -3634,6 +3664,89 @@ persistentVolumeClaim:
3634
3664
  readWriteMany: Many Nodes Read-Write
3635
3665
  status:
3636
3666
  label: Status
3667
+
3668
+ # UI Plugins
3669
+ plugins:
3670
+ labels:
3671
+ builtin: Built-in
3672
+ experimental: Experimental
3673
+ third-party: Third-Party
3674
+ installing: Installing ...
3675
+ uninstalling: Uninstalling ...
3676
+ descriptions:
3677
+ experimental: This UI Plugin is marked as experimental
3678
+ third-party: This UI plugin is provided by a Third-Party
3679
+ error:
3680
+ title: Error loading plugin
3681
+ message: Could not load plugin code
3682
+ success:
3683
+ title: Loaded plugin {name}
3684
+ message: Plugin was loaded successfully
3685
+ developer:
3686
+ label: Developer Load
3687
+ title: Developer Load Plugin
3688
+ prompt: Load a plugin from a URL
3689
+ fields:
3690
+ url: Plugin URL
3691
+ name: Plugin module name
3692
+ persist: Persist plugin by creating custom resource
3693
+ info:
3694
+ detail: Detail
3695
+ versions: Versions
3696
+ versionError: Could not load version information
3697
+ empty:
3698
+ all: No UI Plugins either installed nor available
3699
+ available: No UI Plugins available
3700
+ installed: No UI Plugins installed
3701
+ updates: No UI Plugin updates available
3702
+ loadError: An error occurred loading the code for this plugin
3703
+ helmError: "An error occurred installing the plugin via Helm"
3704
+ tabs:
3705
+ all: All
3706
+ available: Available
3707
+ installed: Installed
3708
+ updates: Updates
3709
+ title: UI Plugins
3710
+ install:
3711
+ label: Install
3712
+ title: Install UI Plugin {name}
3713
+ prompt: "Are you sure that you want to install this UI Plugin?"
3714
+ version: Version
3715
+ warnNotCertified: Please ensure that you are aware of the risks of installing UI Plugins from untrusted authors
3716
+ update:
3717
+ label: Update
3718
+ title: Update UI Plugin {name}
3719
+ prompt: "Are you sure that you want to update this UI Plugin?"
3720
+ rollback:
3721
+ label: Rollback
3722
+ title: Rollback UI Plugin {name}
3723
+ prompt: "Are you sure that you want to rollback this UI Plugin?"
3724
+ uninstall:
3725
+ label: Uninstall
3726
+ title: "Uninstall UI Plugin: {name}"
3727
+ prompt: "Are you sure that you want to uninstall this UI Plugin?"
3728
+ upgradeAvailable: A newer version of this UI Plugin is available
3729
+ safeMode:
3730
+ title: UI Plugins Safe Mode
3731
+ message: UI Plugins were not loaded
3732
+ setup:
3733
+ title: UI Plugin Support is not enabled
3734
+ prompt:
3735
+ cant: Automatic installation is not available - required Helm Charts could not be found
3736
+ can: You need to install the Plugin Operator
3737
+ install:
3738
+ title: Enable UI Plugin Support?
3739
+ prompt: This will install the Helm charts to enable Rancher UI Plugin support
3740
+ airgap: Un-check if your Rancher installation is air-gapped
3741
+ addRancherRepo: Add the Rancher UI Plugins Repository
3742
+ remove:
3743
+ label: Disable UI Plugin Support
3744
+ title: Disable UI Plugin Support?
3745
+ prompt: This will un-install the Helm charts that enable Rancher UI Plugin support
3746
+ registry:
3747
+ title: Remove the Rancher UI Plugins Repository
3748
+ prompt: Remove the default UI Plugins Repository
3749
+
3637
3750
  prefs:
3638
3751
  title: Preferences
3639
3752
  theme:
@@ -3642,11 +3755,12 @@ prefs:
3642
3755
  auto: Auto
3643
3756
  dark: Dark
3644
3757
  autoDetail: Auto uses OS preference if available, or dark from {pm} to {am}
3758
+ language: Language
3645
3759
  landing:
3646
3760
  label: Login Landing Page
3647
3761
  vue: Cluster Explorer
3648
3762
  ember: Cluster Manager
3649
- displaySettings:
3763
+ displaySettings:
3650
3764
  title: Display Settings
3651
3765
  detail: Change the way information is displayed in the UI.
3652
3766
  clusterToShow:
@@ -3666,12 +3780,14 @@ prefs:
3666
3780
  sublime: 'Normal human'
3667
3781
  emacs: 'Emacs'
3668
3782
  vim: 'Vim'
3669
- advanced: Advanced
3670
- advancedTooltip: Enables 'View in API' option and keyboard shortcut to toggle light or dark theme (shift+t). This setting also reveals namespaces that are managed by Rancher and are not meant to be manually edited or deleted.
3671
- dev:
3672
- label: Enable Developer Tools & Features
3783
+ advFeatures:
3784
+ title: Advanced Features
3785
+ viewInApi: Enable "View in API"
3786
+ allNamespaces: Show system Namespaces managed by Rancher (not intended for editing or deletion)
3787
+ themeShortcut: Enable Dark/Light Theme keyboard shortcut toggle (shift+T)
3788
+ pluginDeveloper: Enable UI Plugin Developer features
3673
3789
  hideDesc:
3674
- label: Hide All Type Description Boxes
3790
+ label: Hide All Type Descriptions
3675
3791
  helm:
3676
3792
  'true': Include Prerelease Versions
3677
3793
  'false': Show Releases Only
@@ -3960,6 +4076,18 @@ rbac:
3960
4076
  noContext:
3961
4077
  label: No Context
3962
4078
  globalRoles:
4079
+ notBound: 'No users bound <i class="icon icon-checkmark" style="margin-left: 5px"></i>'
4080
+ unableToCheck: Unable to check if any user is bound to the role(s). Please try again.
4081
+ waiting: |-
4082
+ {count, plural,
4083
+ =1 { Checking if there are any users bound to this role <i class="icon-spin icon icon-spinner" style="margin-left: 5px"></i> }
4084
+ other { Checking if there are any users bound to these roles <i class="icon-spin icon icon-spinner" style="margin-left: 5px"></i> }
4085
+ }
4086
+ usersBound: |-
4087
+ {count, plural,
4088
+ =1 { Caution: There is 1 user bound to the role(s) about to be deleted. Do you want to proceed? }
4089
+ other { Caution: There are {count} users bound to the role(s) about to be deleted. Do you want to proceed? }
4090
+ }
3963
4091
  types:
3964
4092
  global:
3965
4093
  label: Global Permissions
@@ -4366,7 +4494,7 @@ setup:
4366
4494
  dockerSuffix: ""
4367
4495
  helmPrefix: 'For a Helm installation, run:'
4368
4496
  helmSuffix: ""
4369
- eula: I agree to the <a href="https://rancher.com/eula" target="_blank" rel="noopener noreferrer nofollow">terms and conditions</a> for using {name}.
4497
+ eula: By checking the box, you accept the <a href="https://rancher.com/eula" target="_blank" rel="noopener noreferrer nofollow">End User License Agreement & Terms & Conditions</a>
4370
4498
  newPassword: New Password
4371
4499
  newUserSetPassword: The first order of business is to set a strong password. We suggest using this random one generated just for you, but enter your own if you like.
4372
4500
  serverUrl:
@@ -4374,7 +4502,7 @@ setup:
4374
4502
  skip: Skip
4375
4503
  tip: What URL should be used for this {vendor} installation? All the nodes in your clusters will need to be able to reach this.
4376
4504
  setPassword: The first order of business is to set a strong password for the default <code>{username}</code> user. We suggest using this random one generated just for you, but enter your own if you like.
4377
- telemetry: Allow collection of <a href="{docsBase}/faq/telemetry/" target="_blank" rel="noopener noreferrer nofollow">anonymous statistics</a> to help us improve {name}.
4505
+ telemetry: Allow collection of <a href="{docsBase}/faq/telemetry/" target="_blank" rel="noopener noreferrer nofollow">anonymous statistics</a> to help us improve {name}
4378
4506
  useManual: Set a specific password to use
4379
4507
  useRandom: Use a randomly generated password
4380
4508
  welcome: Welcome to {vendor}!
@@ -5452,6 +5580,8 @@ workload:
5452
5580
  addClaim: Add Claim
5453
5581
  addMount: Add Mount
5454
5582
  addVolume: Add Volume
5583
+ selectVolume: Select Volume
5584
+ noVolumes: Volumes will appear here after they are added in the Pod tab
5455
5585
  certificate: Certificate
5456
5586
  csi:
5457
5587
  diskName: Disk Name
@@ -5512,6 +5642,7 @@ workload:
5512
5642
  apps.statefulset: StatefulSets manage stateful applications and provide guarantees about the ordering and uniqueness of the pods created. Recommended for workloads with persistent storage or strict identity, quorum, or upgrade order requirements.
5513
5643
  batch.cronjob: CronJobs create Jobs, which then run Pods, on a repeating schedule. The schedule is expressed in standard Unix cron format, and uses the timezone of the Kubernetes control plane (typically UTC).
5514
5644
  batch.job: Jobs create one or more pods to reliably perform a one-time task by running a pod until it exits successfully. Failed pods are automatically replaced until the specified number of completed runs has been reached. Jobs can also run multiple pods in parallel or function as a batch work queue.
5645
+ pod: Pods are the smallest deployable units of computing that you can create and manage in Kubernetes. A Pod is a group of one or more containers, with shared storage and network resources, and a specification for how to run the containers.
5515
5646
  upgrading:
5516
5647
  activeDeadlineSeconds:
5517
5648
  label: Pod Active Deadline
@@ -5978,12 +6109,11 @@ advancedSettings:
5978
6109
  'engine-supported-range': 'Semver range for supported Docker engine versions. Versions which do not satisfy this range will be marked unsupported in the UI.'
5979
6110
  'ingress-ip-domain': 'Wildcard DNS domain to use for automatically generated Ingress hostnames. <ingress-name>.<namespace-name>.<ip address of ingress controller> will be added to the domain.'
5980
6111
  'server-url': 'Default {appName} install url. Must be HTTPS. All nodes in your cluster must be able to reach this.'
5981
- 'system-default-registry': 'Private registry to be used for all system Docker images.'
6112
+ 'system-default-registry': 'Private registry to be used for all Rancher System Container Images. If no value is specified, the default registry for the container runtime is used. For Docker and containerd, the default is `docker.io`.'
5982
6113
  'ui-index': 'HTML index location for the Cluster Manager UI.'
5983
6114
  'ui-dashboard-index': 'HTML index location for the {appName} UI.'
5984
6115
  'ui-offline-preferred': 'Controls whether UI assets are served locally by the server container or from the remote URL defined in the ui-index and ui-dashboard-index settings. The `Dynamic` option will use local assets in production builds of {appName}.'
5985
6116
  'ui-pl': 'Private-Label company name.'
5986
- 'ui-issues': "Use a url address to send new 'File an Issue' reports instead of sending users to the Github issues page."
5987
6117
  'telemetry-opt': 'Telemetry reporting opt-in.'
5988
6118
  'auth-user-info-max-age-seconds': 'The maximum age of a users auth tokens before an auth provider group membership sync will be performed.'
5989
6119
  'auth-user-info-resync-cron': 'Default cron schedule for resyncing auth provider group memberships.'
@@ -6117,11 +6247,6 @@ branding:
6117
6247
  custom: Define a Custom Theme
6118
6248
  uiPL:
6119
6249
  label: Private Label
6120
- uiIssues:
6121
- label: Support Links
6122
- issuesUrl: Issue Reporting URL
6123
- invalidUrl: The issue reporting value must be a complete URL, including protocol.
6124
- communityLinks: Show Rancher community support links
6125
6250
  color:
6126
6251
  label: Primary Color
6127
6252
  tip: You can override the primary color used throughout the UI with a custom color of your choice.
@@ -6182,6 +6307,23 @@ resourceQuota:
6182
6307
  namespace: 'This Namespace:'
6183
6308
  available: 'Available:'
6184
6309
  max: 'Total:'
6310
+ customLinks:
6311
+ displayTitle: Links
6312
+ label: Home Links
6313
+ description: 'Links to display on the home page.'
6314
+ restoreDefaults: 'Restore Defaults'
6315
+ addLink: Add Link
6316
+ restoreSuccess: Default URLs have been restored.
6317
+ settings:
6318
+ keyLabel: Display Text
6319
+ valueLabel: URL
6320
+ defaults:
6321
+ docs: Docs
6322
+ forums: Forums
6323
+ slack: Slack
6324
+ issues: File an Issue
6325
+ getStarted: Get Started
6326
+ commercialSupport: Commercial Support
6185
6327
 
6186
6328
 
6187
6329
 
@@ -6247,16 +6389,12 @@ legacy:
6247
6389
  alerts: Alerts
6248
6390
  apps: Apps
6249
6391
  catalogs: Catalogs
6250
- cis-scans: CIS Scans
6251
6392
  configMaps: Config Maps
6252
6393
  configuration: Configuration
6253
6394
  globalDnsEntries: Global DNS Entries
6254
6395
  globalDnsProviders: Global DNS Providers
6255
- istio: Istio
6256
- logging: Logging
6257
6396
  notifiers: Notifiers
6258
6397
  monitoring: Monitoring
6259
- pipelines: Pipelines
6260
6398
  psps: Pod Security Policies
6261
6399
  secrets: Secrets
6262
6400
 
@@ -191,7 +191,6 @@ product:
191
191
  mcapps: 多集群应用
192
192
  neuvector: NeuVector
193
193
  harvesterManager: 虚拟化管理
194
- harvester: Harvester
195
194
  rancher: Rancher
196
195
 
197
196
  suffix:
@@ -1500,6 +1499,7 @@ cluster:
1500
1499
  warning: '此集群包含此表单不完全支持的 machineSelectorConfig。使用 YAML 编辑器管理完整配置。'
1501
1500
  os: '你正在将 {newOS} worker 节点添加到具有一个或多个 {existingOS} worker 节点的集群。你可能需要升级或删除某些已安装的应用。'
1502
1501
  rke2-k3-reprovisioning: '更改集群配置可能导致节点重新配置。详情请参见 <a target="blank" href="{docsBase}/cluster-provisioning/rke-clusters/behavior-differences-between-rke1-and-rke2/" target="_blank" rel="noopener nofollow">文档</a>。'
1502
+ desiredNodeGroupWarning: 没有可用于运行 Cluster Agent 的节点。要让集群变为 Active 状态,至少需要有 1 个可用的节点。
1503
1503
 
1504
1504
  rkeTemplateUpgrade: 模板修订版 {name} 可用于升级
1505
1505
 
@@ -1557,7 +1557,7 @@ cluster:
1557
1557
  autoReplace:
1558
1558
  label: 自动替换
1559
1559
  toolTip: 如果大于 0,则在此期间无法访问的节点将被自动删除和替换。
1560
- unit: "分钟"
1560
+ unit: ""
1561
1561
  managementTimeout: 集群变成可用。可能已创建了集群。建议在创建另一个集群之前检查集群页面。
1562
1562
  memberRoles:
1563
1563
  removeMessage: '注意:删除用户不会删除其项目权限。'
@@ -2457,10 +2457,6 @@ landing:
2457
2457
  seeWhatsNew: 点击右侧链接,了解此版本的新功能和优化。
2458
2458
  whatsNewLink: "2.6 的新功能"
2459
2459
  learnMore: 了解更多
2460
- gettingStarted:
2461
- title: 快速入门
2462
- body: 查看快速入门指南。Cluster Manager 用户可以了解 Dashboard UI 的更多新功能。
2463
- support: 支持
2464
2460
  community:
2465
2461
  title: 社区支持
2466
2462
  docs: Rancher 官方文档
@@ -3661,7 +3657,9 @@ prefs:
3661
3657
  label: 登录页面
3662
3658
  vue: 集群浏览器
3663
3659
  ember: Cluster Manager
3664
- formatting: 格式
3660
+ displaySettings:
3661
+ title: 显示设置
3662
+ detail: 更改在 UI 中显示信息的方式。
3665
3663
  clusterToShow:
3666
3664
  label: 在侧边栏显示的集群数量
3667
3665
  value: |-
@@ -3871,7 +3869,7 @@ promptRemove:
3871
3869
  confirmName: "在下方输入 <b>{nameToMatch}</b> 以确认:"
3872
3870
  deleteAssociatedNamespaces: "同时删除此项目中的命名空间:"
3873
3871
  willDeleteAssociatedNamespaces: "项目中的所有命名空间也都会被删除:"
3874
- confirmRelatedResource: "删除 {type} 将删除这个特定 {type} 上的所有资源,这是不可恢复的,您确定要继续删除 {names} 吗?"
3872
+ confirmRelatedResource: "删除 {type} 将删除这个 {type} 上的所有资源,此过程不可逆。你确定要继续删除 {names} 吗?"
3875
3873
 
3876
3874
  promptRemoveApp:
3877
3875
  removeCrd: "删除与此应用关联的 CRD"
@@ -4393,6 +4391,9 @@ setup:
4393
4391
  welcome: 欢迎使用 {vendor}!
4394
4392
 
4395
4393
  sortableTable:
4394
+ bulkActions:
4395
+ collapsed:
4396
+ label: 操作
4396
4397
  actionAvailability:
4397
4398
  selected: "已选择 {actionable} 项"
4398
4399
  some: "影响 {total} 项中的 {actionable} 项"
@@ -5600,6 +5601,8 @@ harvesterManager:
5600
5601
  none: 不存在 Harvester 集群
5601
5602
  learnMore: 访问 <a target="_blank" href="https://harvesterhci.io/" rel="noopener noreferrer nofollow">Harvester 网站</a> 或阅读 <a target="_blank" href="https://docs.harvesterhci.io/" rel="noopener noreferrer nofollow">Harvester 官方文档</a>,以了解更多关于 Harvester 的信息。
5602
5603
  description: Harvester 是一个采用企业级开源技术,包括Kubernetes、Kubevirt和Longhorn,为裸金属服务器打造的现代超融合基础设施(HCI)解决方案。
5604
+ plugins:
5605
+ loadError: 加载 Harvester 插件时出错
5603
5606
 
5604
5607
  ##############################
5605
5608
  # Model Properties
@@ -6087,6 +6090,7 @@ advancedSettings:
6087
6090
  invalidJSON: 无效的 JSON - 请先检查并修改你输入的值,然后再保存。
6088
6091
  descriptions:
6089
6092
  'cacerts': "验证服务器证书所需的 CA 证书。"
6093
+ 'password-min-length': '定义用户密码所需的最少字符数。'
6090
6094
  'cluster-defaults': '创建新集群时覆盖 RKE 默认值。'
6091
6095
  'engine-install-url': '默认的 Docker 引擎安装 URL(用于大多数主机驱动)。'
6092
6096
  'engine-iso-url': '默认操作系统安装 URL(用于 vSphere 驱动)。'
@@ -6099,7 +6103,6 @@ advancedSettings:
6099
6103
  'ui-dashboard-index': '{appName} UI 的 HTML 索引位置。'
6100
6104
  'ui-offline-preferred': '控制 UI 资产是由服务器容器在本地提供,还是从 ui-index 和 ui-dashboard-index 设置中定义的远程 URL 提供。`动态` 选项将在 {appName} 的生产版本中使用本地资产。'
6101
6105
  'ui-pl': '自有品牌公司名称。'
6102
- 'ui-issues': "使用 URL 地址发送新的\"提交问题\"报告,而不是让用户发送到 GitHub Issue 页面。"
6103
6106
  'telemetry-opt': '遥测报告加入。'
6104
6107
  'auth-user-info-max-age-seconds': '在同步验证提供程序组成员之前,用户验证 Token 的最长存活时间。'
6105
6108
  'auth-user-info-resync-cron': '重新同步验证提供程序组成员的默认 cron 调度。'
@@ -6166,24 +6169,27 @@ featureFlags:
6166
6169
  performance:
6167
6170
  label: UI 性能设置
6168
6171
  settingName: 性能
6169
- description: |-
6170
- 性能设置允许你在需要处理大量集群资源时配置 UI 的行为。设置仅适用于以下资源:Pod、Deployment、CronJob、DaemonSet、Job、StatefulSet、ReplicaSet、Replication Controller、Workload 和 Secret。
6171
- banner: 这些设置是实验性的,可能会在后续版本中删除或更新。
6172
6172
  incrementalLoad:
6173
6173
  label: 增量加载
6174
6174
  setting: 你可以配置一个阈值,高于该阈值时则使用增量加载。
6175
6175
  description: |-
6176
- 启用后,资源会更快出现,但可能需要更长的时间来加载整个资源集。
6176
+ 启用后,资源会更快出现,但可能需要更长的时间来加载整个资源集。此设置仅适用于以下资源:Pod、Deployment、CronJob、DaemonSet、Job、StatefulSet、ReplicaSet、Replication Controller、Workload 和 Secret。
6177
6177
  checkboxLabel: 启用增量加载
6178
6178
  inputLabel: 资源阈值
6179
6179
  manualRefresh:
6180
+ banner: 此设置是实验性的,可能会在后续版本中删除或更新。
6180
6181
  label: 手动刷新
6181
6182
  setting: 你可以配置一个阈值,高于该阈值时则启用手动刷新。
6182
6183
  buttonTooltip: 刷新列表
6183
6184
  description: |-
6184
- 启用后,列表数据不会自动更新,用户必须手动刷新列表视图。
6185
+ 启用后,列表数据不会自动更新,用户必须手动刷新列表视图。此设置仅适用于以下资源:Pod、Deployment、CronJob、DaemonSet、Job、StatefulSet、ReplicaSet、Replication Controller、Workload 和 Secret。
6185
6186
  checkboxLabel: 启用列表数据的手动刷新
6186
6187
  inputLabel: 资源阈值
6188
+ websocketNotification:
6189
+ label: WebSocket 通知
6190
+ description: |-
6191
+ 启用后,UI 检测到断开连接时不会出现 WebSocket 通知。
6192
+ checkboxLabel: 禁用 WebSocket 通知
6187
6193
 
6188
6194
  banner:
6189
6195
  label: 固定横幅
@@ -6240,11 +6246,6 @@ branding:
6240
6246
  custom: 自定义主题
6241
6247
  uiPL:
6242
6248
  label: 自有品牌
6243
- uiIssues:
6244
- label: 支持链接
6245
- issuesUrl: 问题报告 URL
6246
- invalidUrl: 必须是包括协议头的完整 URL。
6247
- communityLinks: 显示 Rancher 社区支持链接
6248
6249
  color:
6249
6250
  label: 主颜色
6250
6251
  tip: 使用自定义颜色替换整个 UI 中使用的主颜色。
@@ -6349,7 +6350,7 @@ support:
6349
6350
  text: 无论你使用的 Rancher Labs 产品、Kubernetes、Docker 还是底层基础架构出现问题,我们都会努力找到问题的根本原因。
6350
6351
  four:
6351
6352
  title: 自由创新
6352
- text: 基于我们与各 Kubernetes 供应商、操作系统和开源软件认证的兼容性,实现自主创新
6353
+ text: 基于我们与众多 Kubernetes 供应商、操作系统和开源软件认证的兼容性,实现自主创新。
6353
6354
 
6354
6355
  embedding:
6355
6356
  retry: 重试
@@ -6370,16 +6371,12 @@ legacy:
6370
6371
  alerts: 告警
6371
6372
  apps: 应用
6372
6373
  catalogs: 应用商店
6373
- cis-scans: CIS 扫描
6374
6374
  configMaps: ConfigMaps
6375
6375
  configuration: 配置
6376
6376
  globalDnsEntries: 全局 DNS 条目
6377
6377
  globalDnsProviders: 全局 DNS 提供商
6378
- istio: Istio
6379
- logging: Logging
6380
6378
  notifiers: Notifiers
6381
6379
  monitoring: 监控
6382
- pipelines: 流水线
6383
6380
  psps: Pod 安全策略
6384
6381
  secrets: 密文
6385
6382
 
@@ -95,7 +95,13 @@ export default Vue.extend({
95
95
  currentPhase: {
96
96
  type: String,
97
97
  default: ASYNC_BUTTON_STATES.ACTION,
98
- }
98
+ },
99
+
100
+ manual: {
101
+ type: Boolean,
102
+ default: false,
103
+ },
104
+
99
105
  },
100
106
 
101
107
  data(): { phase: string, timer?: NodeJS.Timeout} {
@@ -190,6 +196,12 @@ export default Vue.extend({
190
196
  }
191
197
  },
192
198
 
199
+ beforeDestroy() {
200
+ if (this.timer) {
201
+ clearTimeout(this.timer);
202
+ }
203
+ },
204
+
193
205
  methods: {
194
206
  clicked($event: MouseEvent) {
195
207
  if ($event) {
@@ -205,7 +217,10 @@ export default Vue.extend({
205
217
  clearTimeout(this.timer);
206
218
  }
207
219
 
208
- this.phase = ASYNC_BUTTON_STATES.WAITING;
220
+ // If manual property is set, don't automatically change the button on click
221
+ if (!this.manual) {
222
+ this.phase = ASYNC_BUTTON_STATES.WAITING;
223
+ }
209
224
 
210
225
  const cb: AsyncButtonCallback = (success) => {
211
226
  this.done(success);
@@ -194,6 +194,10 @@ export default {
194
194
  @search:focus="onFocus"
195
195
  @input="$emit('click-action', $event)"
196
196
  >
197
+ <template slot="no-options">
198
+ <slot name="no-options"></slot>
199
+ </template>
200
+
197
201
  <template #selected-option="option">
198
202
  <button
199
203
  tabindex="-1"