dashboard-shell-shell 3.0.2-test.20250913 → 3.0.5-logTest.2
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.
- package/assets/brand/csp/favicon.png +0 -0
- package/assets/data/aws-regions.json +3 -0
- package/assets/icons/demo.css:Zone.Identifier +0 -0
- package/assets/icons/demo_index.html:Zone.Identifier +0 -0
- package/assets/icons/iconfont.css +4 -1
- package/assets/icons/iconfont.css:Zone.Identifier +0 -0
- package/assets/icons/iconfont.js:Zone.Identifier +0 -0
- package/assets/icons/iconfont.json:Zone.Identifier +0 -0
- package/assets/icons/iconfont.ttf:Zone.Identifier +0 -0
- package/assets/icons/iconfont.woff2:Zone.Identifier +0 -0
- package/assets/icons/iconfont.woff:Zone.Identifier +0 -0
- package/assets/iconsNew/demo.css +539 -0
- package/assets/iconsNew/demo.css:Zone.Identifier +0 -0
- package/assets/iconsNew/demo_index.html +303 -0
- package/assets/iconsNew/demo_index.html:Zone.Identifier +0 -0
- package/assets/iconsNew/iconfont.css +43 -0
- package/assets/iconsNew/iconfont.css:Zone.Identifier +0 -0
- package/assets/iconsNew/iconfont.js +1 -0
- package/assets/iconsNew/iconfont.js:Zone.Identifier +0 -0
- package/assets/iconsNew/iconfont.json +44 -0
- package/assets/iconsNew/iconfont.json:Zone.Identifier +0 -0
- package/assets/iconsNew/iconfont.ttf +0 -0
- package/assets/iconsNew/iconfont.ttf:Zone.Identifier +0 -0
- package/assets/iconsNew/iconfont.woff +0 -0
- package/assets/iconsNew/iconfont.woff2 +0 -0
- package/assets/iconsNew/iconfont.woff2:Zone.Identifier +0 -0
- package/assets/iconsNew/iconfont.woff:Zone.Identifier +0 -0
- package/assets/images/icons/document.svg +3 -0
- package/assets/images/key.svg +17 -0
- package/assets/images/pl/dark/logo.png +0 -0
- package/assets/images/providers/sks.svg +1 -0
- package/assets/images/vendor/cognito.svg +1 -0
- package/assets/styles/all.scss +23 -3
- package/assets/styles/app.scss +4 -0
- package/assets/styles/base/_basic.scss +10 -0
- package/assets/styles/base/_helpers.scss +1 -1
- package/assets/styles/base/_spacing.scss +29 -0
- package/assets/styles/base/_variables.scss +21 -15
- package/assets/styles/fonts/_icons.scss +3 -2
- package/assets/styles/global/_button.scss +8 -8
- package/assets/styles/global/_form.scss +1 -0
- package/assets/styles/global/_labeled-input.scss +1 -1
- package/assets/styles/global/_layout.scss +1 -1
- package/assets/styles/global/_select.scss +1 -1
- package/assets/styles/global/_tooltip.scss +9 -5
- package/assets/styles/themes/_dark.scss +30 -0
- package/assets/styles/themes/_light.scss +85 -5
- package/assets/styles/vendor/vue-select.scss +2 -1
- package/assets/translations/en-us.yaml +886 -105
- package/assets/translations/zh-hans.yaml +298 -25
- package/chart/__tests__/S3.test.ts +2 -1
- package/chart/monitoring/index.vue +1 -1
- package/cloud-credential/gcp.vue +9 -1
- package/components/ActionDropdown.vue +1 -1
- package/components/ActionMenuShell.vue +3 -7
- package/components/AppModal.vue +9 -28
- package/components/AsyncButton.vue +2 -0
- package/components/BrandImage.vue +0 -21
- package/components/ButtonDropdown.vue +3 -1
- package/components/Certificates.vue +5 -0
- package/components/ClusterIconMenu.vue +1 -1
- package/components/CodeMirror.vue +9 -7
- package/components/CommunityLinks.vue +3 -58
- package/components/ConfigMapSettings/Settings.vue +377 -0
- package/components/ConfigMapSettings/index.vue +354 -0
- package/components/ConsumptionGauge.vue +1 -1
- package/components/ContainerResourceLimit.vue +2 -2
- package/components/CopyToClipboard.vue +15 -0
- package/components/CruResource.vue +106 -18
- package/components/DetailText.vue +61 -11
- package/components/Drawer/Chrome.vue +115 -0
- package/components/Drawer/ResourceDetailDrawer/ConfigTab.vue +64 -0
- package/components/Drawer/ResourceDetailDrawer/YamlTab.vue +48 -0
- package/components/Drawer/ResourceDetailDrawer/__tests__/ConfigTab.test.ts +54 -0
- package/components/Drawer/ResourceDetailDrawer/__tests__/YamlTab.test.ts +80 -0
- package/components/Drawer/ResourceDetailDrawer/__tests__/composables.test.ts +106 -0
- package/components/Drawer/ResourceDetailDrawer/__tests__/helpers.test.ts +42 -0
- package/components/Drawer/ResourceDetailDrawer/composables.ts +53 -0
- package/components/Drawer/ResourceDetailDrawer/helpers.ts +10 -0
- package/components/Drawer/ResourceDetailDrawer/index.vue +124 -0
- package/components/ExplorerMembers.vue +28 -4
- package/components/ExplorerProjectsNamespaces.vue +46 -29
- package/components/FilterPanel.vue +156 -0
- package/components/FixedBanner.vue +19 -5
- package/components/{fleet/ForceDirectedTreeChart/index.vue → ForceDirectedTreeChart.vue} +47 -41
- package/components/GlobalRoleBindings.vue +69 -114
- package/components/GrowlManager.vue +16 -15
- package/components/IconOrSvg.vue +19 -35
- package/components/KeyValueView.vue +1 -1
- package/components/LandingPagePreference.vue +2 -0
- package/components/Loading.vue +1 -1
- package/components/LocaleSelector.vue +10 -2
- package/components/PaginatedResourceTable.vue +53 -1
- package/components/PodSecurityAdmission.vue +2 -2
- package/components/ProgressBarMulti.vue +1 -0
- package/components/PromptModal.vue +38 -7
- package/components/PromptRemove.vue +28 -2
- package/components/PromptRestore.vue +22 -44
- package/components/RelatedResources.vue +7 -12
- package/components/Resource/Detail/Additional.vue +46 -0
- package/components/Resource/Detail/Card/PodsCard/Bubble.vue +13 -0
- package/components/Resource/Detail/Card/PodsCard/composable.ts +30 -0
- package/components/Resource/Detail/Card/PodsCard/index.vue +118 -0
- package/components/Resource/Detail/Card/ResourceUsageCard/composable.ts +51 -0
- package/components/Resource/Detail/Card/ResourceUsageCard/index.vue +79 -0
- package/components/Resource/Detail/Card/Scaler.vue +89 -0
- package/components/Resource/Detail/Card/StateCard/composables.ts +112 -0
- package/components/Resource/Detail/Card/StateCard/index.vue +39 -0
- package/components/Resource/Detail/Card/VerticalGap.vue +11 -0
- package/components/Resource/Detail/Card/__tests__/Card.test.ts +36 -0
- package/components/Resource/Detail/Card/__tests__/PodsCard.test.ts +84 -0
- package/components/Resource/Detail/Card/__tests__/ResourceUsageCard.test.ts +72 -0
- package/components/Resource/Detail/Card/__tests__/Scaler.test.ts +87 -0
- package/components/Resource/Detail/Card/__tests__/StateCard.test.ts +53 -0
- package/components/Resource/Detail/Card/__tests__/VerticalGap.test.ts +14 -0
- package/components/Resource/Detail/Card/__tests__/index.test.ts +36 -0
- package/components/Resource/Detail/Card/index.vue +56 -0
- package/components/Resource/Detail/Metadata/Annotations/__tests__/index.test.ts +19 -0
- package/components/Resource/Detail/Metadata/Annotations/composable.ts +12 -0
- package/components/Resource/Detail/Metadata/Annotations/index.vue +31 -0
- package/components/Resource/Detail/Metadata/IdentifyingInformation/__tests__/identifying-fields.test.ts +223 -0
- package/components/Resource/Detail/Metadata/IdentifyingInformation/__tests__/index.test.ts +103 -0
- package/components/Resource/Detail/Metadata/IdentifyingInformation/composable.ts +72 -0
- package/components/Resource/Detail/Metadata/IdentifyingInformation/identifying-fields.ts +317 -0
- package/components/Resource/Detail/Metadata/IdentifyingInformation/index.vue +138 -0
- package/components/Resource/Detail/Metadata/KeyValue.vue +144 -0
- package/components/Resource/Detail/Metadata/Labels/__tests__/index.test.ts +18 -0
- package/components/Resource/Detail/Metadata/Labels/composable.ts +12 -0
- package/components/Resource/Detail/Metadata/Labels/index.vue +31 -0
- package/components/Resource/Detail/Metadata/Rectangle.vue +34 -0
- package/components/Resource/Detail/Metadata/__tests__/KeyValue.test.ts +107 -0
- package/components/Resource/Detail/Metadata/__tests__/Rectangle.test.ts +24 -0
- package/components/Resource/Detail/Metadata/__tests__/composables.test.ts +75 -0
- package/components/Resource/Detail/Metadata/__tests__/index.test.ts +91 -0
- package/components/Resource/Detail/Metadata/composables.ts +81 -0
- package/components/Resource/Detail/Metadata/index.vue +90 -0
- package/components/Resource/Detail/Page.vue +37 -0
- package/components/Resource/Detail/PercentageBar.vue +40 -0
- package/components/Resource/Detail/ResourceRow.vue +138 -0
- package/components/Resource/Detail/ResourceTabs/ConfigMapDataTab/__tests__/composables.test.ts +29 -0
- package/components/Resource/Detail/ResourceTabs/ConfigMapDataTab/__tests__/index.test.ts +48 -0
- package/components/Resource/Detail/ResourceTabs/ConfigMapDataTab/composables.ts +31 -0
- package/components/Resource/Detail/ResourceTabs/ConfigMapDataTab/index.vue +50 -0
- package/components/Resource/Detail/ResourceTabs/KnownHostsTab/__tests__/composables.test.ts +66 -0
- package/components/Resource/Detail/ResourceTabs/KnownHostsTab/composables.ts +21 -0
- package/components/Resource/Detail/ResourceTabs/KnownHostsTab/index.vue +31 -0
- package/components/Resource/Detail/ResourceTabs/SecretDataTab/Basic.vue +45 -0
- package/components/Resource/Detail/ResourceTabs/SecretDataTab/BasicAuth.vue +31 -0
- package/components/Resource/Detail/ResourceTabs/SecretDataTab/Certificate.vue +31 -0
- package/components/Resource/Detail/ResourceTabs/SecretDataTab/Registry.vue +22 -0
- package/components/Resource/Detail/ResourceTabs/SecretDataTab/ServiceAccountToken.vue +31 -0
- package/components/Resource/Detail/ResourceTabs/SecretDataTab/Ssh.vue +32 -0
- package/components/Resource/Detail/ResourceTabs/SecretDataTab/__tests__/Basic.test.ts +40 -0
- package/components/Resource/Detail/ResourceTabs/SecretDataTab/__tests__/BasicAuth.test.ts +33 -0
- package/components/Resource/Detail/ResourceTabs/SecretDataTab/__tests__/Certificate.test.ts +33 -0
- package/components/Resource/Detail/ResourceTabs/SecretDataTab/__tests__/Registry.test.ts +27 -0
- package/components/Resource/Detail/ResourceTabs/SecretDataTab/__tests__/ServiceAccountToken.test.ts +33 -0
- package/components/Resource/Detail/ResourceTabs/SecretDataTab/__tests__/Ssh.test.ts +33 -0
- package/components/Resource/Detail/ResourceTabs/SecretDataTab/__tests__/auth-types.test.ts +186 -0
- package/components/Resource/Detail/ResourceTabs/SecretDataTab/__tests__/composables.test.ts +102 -0
- package/components/Resource/Detail/ResourceTabs/SecretDataTab/auth-types.ts +109 -0
- package/components/Resource/Detail/ResourceTabs/SecretDataTab/composeables.ts +52 -0
- package/components/Resource/Detail/ResourceTabs/SecretDataTab/index.vue +71 -0
- package/components/Resource/Detail/SpacedRow.vue +14 -0
- package/components/Resource/Detail/StatusBar.vue +59 -0
- package/components/Resource/Detail/StatusRow.vue +61 -0
- package/components/Resource/Detail/TitleBar/Title.vue +15 -0
- package/components/Resource/Detail/TitleBar/Top.vue +16 -0
- package/components/Resource/Detail/TitleBar/__tests__/Title.test.ts +17 -0
- package/components/Resource/Detail/TitleBar/__tests__/Top.test.ts +17 -0
- package/components/Resource/Detail/TitleBar/__tests__/composables.test.ts +63 -0
- package/components/Resource/Detail/TitleBar/__tests__/index.test.ts +142 -0
- package/components/Resource/Detail/TitleBar/composables.ts +61 -0
- package/components/Resource/Detail/TitleBar/index.vue +302 -0
- package/components/Resource/Detail/Top/index.vue +34 -0
- package/components/Resource/Detail/__tests__/Page.test.ts +32 -0
- package/components/Resource/Detail/composables.ts +45 -0
- package/components/ResourceDetail/Masthead/__tests__/index.test.ts +70 -0
- package/components/ResourceDetail/{__tests__/Masthead.test.ts → Masthead/__tests__/legacy.test.ts} +3 -3
- package/components/ResourceDetail/Masthead/index.vue +65 -0
- package/components/ResourceDetail/Masthead/latest.vue +44 -0
- package/components/ResourceDetail/{Masthead.vue → Masthead/legacy.vue} +240 -169
- package/components/ResourceDetail/__tests__/index.test.ts +135 -0
- package/components/ResourceDetail/index.vue +75 -575
- package/components/ResourceDetail/legacy.vue +580 -0
- package/components/ResourceList/Masthead.vue +74 -29
- package/components/ResourceList/index.vue +3 -2
- package/components/ResourceTable.vue +75 -85
- package/components/ResourceYaml.vue +15 -2
- package/components/RichTranslation.vue +106 -0
- package/components/SideNav.vue +21 -21
- package/components/SingleClusterInfo.vue +2 -1
- package/components/SlideInPanelManager.vue +116 -14
- package/components/SortableTable/THead.vue +46 -1
- package/components/SortableTable/index.vue +66 -22
- package/components/SortableTable/paging.js +15 -16
- package/components/SortableTable/selection.js +22 -10
- package/components/StateDot/index.vue +28 -0
- package/components/StatusBadge.vue +6 -4
- package/components/SubtleLink.vue +25 -0
- package/components/Tabbed/index.vue +43 -22
- package/components/Wizard.vue +16 -3
- package/components/YamlEditor.vue +1 -2
- package/components/__tests__/AsyncButton.test.ts +39 -0
- package/components/__tests__/ConfigMapSettings.test.ts +376 -0
- package/components/__tests__/CruResource.test.ts +63 -0
- package/components/__tests__/FilterPanel.test.ts +81 -0
- package/components/__tests__/GrowlManager.test.ts +0 -25
- package/components/__tests__/PromptModal.test.ts +146 -0
- package/components/__tests__/PromptRestore.test.ts +1 -65
- package/components/__tests__/RichTranslation.test.ts +115 -0
- package/components/auth/AuthBanner.vue +15 -14
- package/components/auth/Principal.vue +50 -19
- package/components/auth/RoleDetailEdit.vue +55 -11
- package/components/auth/login/ldap.vue +2 -2
- package/components/auth/login/oidc.vue +6 -1
- package/components/breadcrumb/index.vue +119 -0
- package/components/fleet/FleetApplications.vue +174 -0
- package/components/fleet/FleetClusterTargets/TargetsList.vue +66 -0
- package/components/fleet/FleetClusterTargets/index.vue +455 -0
- package/components/fleet/FleetClusters.vue +25 -6
- package/components/fleet/FleetGitRepoPaths.vue +476 -0
- package/components/fleet/FleetHelmOps.vue +123 -0
- package/components/fleet/FleetIntro.vue +58 -28
- package/components/fleet/FleetNoWorkspaces.vue +5 -1
- package/components/fleet/FleetOCIStorageSecret.vue +171 -0
- package/components/fleet/FleetRepos.vue +37 -80
- package/components/fleet/FleetResources.vue +69 -27
- package/components/fleet/FleetSummary.vue +26 -51
- package/components/fleet/FleetValuesFrom.vue +295 -0
- package/components/fleet/__tests__/FleetClusterTargets.test.ts +1224 -0
- package/components/fleet/__tests__/FleetGitRepoPaths.test.ts +265 -0
- package/components/fleet/__tests__/FleetOCIStorageSecret.test.ts +213 -0
- package/components/fleet/__tests__/FleetSummary.test.ts +39 -39
- package/components/fleet/__tests__/FleetValuesFrom.test.ts +300 -0
- package/components/fleet/dashboard/Empty.vue +73 -0
- package/components/fleet/dashboard/ResourceCard.vue +184 -0
- package/components/fleet/dashboard/ResourceCardSummary.vue +195 -0
- package/components/fleet/dashboard/ResourceDetails.vue +194 -0
- package/components/fleet/dashboard/ResourcePanel.vue +384 -0
- package/components/form/ArrayList.vue +187 -142
- package/components/form/ArrayListGrouped.vue +5 -3
- package/components/form/BannerSettings.vue +117 -50
- package/components/form/ChangePassword.vue +4 -2
- package/components/form/ClusterAppearance.vue +4 -3
- package/components/form/ColorInput.vue +35 -6
- package/components/form/Command.vue +4 -5
- package/components/form/Conditions.vue +15 -1
- package/components/form/FileImageSelector.vue +1 -1
- package/components/form/Footer.vue +11 -4
- package/components/form/HealthCheck.vue +0 -2
- package/components/form/HookOption.vue +87 -58
- package/components/form/InputWithSelect.vue +8 -7
- package/components/form/KeyValue.vue +112 -53
- package/components/form/LabeledSelect.vue +76 -55
- package/components/form/Labels.vue +92 -22
- package/components/form/MatchExpressions.vue +59 -12
- package/components/form/Members/ClusterMembershipEditor.vue +1 -1
- package/components/form/Members/ClusterPermissionsEditor.vue +60 -41
- package/components/form/Members/MembershipEditor.vue +4 -4
- package/components/form/Members/ProjectMembershipEditor.vue +1 -1
- package/components/form/NameNsDescription.vue +15 -10
- package/components/form/Networking.vue +30 -28
- package/components/form/NodeAffinity.vue +29 -28
- package/components/form/NotificationSettings.vue +15 -1
- package/components/form/PodAffinity.vue +23 -23
- package/components/form/Probe.vue +15 -11
- package/components/form/ProjectMemberEditor.vue +66 -48
- package/components/form/ResourceLabeledSelect.vue +22 -8
- package/components/form/ResourceQuota/Namespace.vue +4 -4
- package/components/form/ResourceQuota/NamespaceRow.vue +11 -9
- package/components/form/ResourceQuota/Project.vue +4 -4
- package/components/form/ResourceQuota/ProjectRow.vue +36 -30
- package/components/form/ResourceSelector.vue +28 -24
- package/components/form/ResourceTabs/index.vue +7 -1
- package/components/form/SSHKnownHosts/index.vue +14 -11
- package/components/form/SecretSelector.vue +40 -23
- package/components/form/Security.vue +1 -3
- package/components/form/Select.vue +64 -27
- package/components/form/SelectOrCreateAuthSecret.vue +6 -3
- package/components/form/ServiceNameSelect.vue +2 -5
- package/components/form/ServicePorts.vue +149 -75
- package/components/form/SimpleSecretSelector.vue +17 -4
- package/components/form/Taints.vue +23 -3
- package/components/form/Tolerations.vue +13 -9
- package/components/form/UnitInput.vue +21 -0
- package/components/form/ValueFromResource.vue +136 -110
- package/components/form/WorkloadPorts.vue +143 -123
- package/components/form/__tests__/ArrayList.test.ts +32 -0
- package/components/form/__tests__/ColorInput.test.ts +35 -0
- package/components/form/__tests__/KeyValue.test.ts +36 -0
- package/components/form/__tests__/LabeledSelect.test.ts +79 -2
- package/components/form/__tests__/Labels.test.ts +360 -0
- package/components/form/__tests__/MatchExpressions.test.ts +16 -13
- package/components/form/__tests__/Networking.test.ts +116 -0
- package/components/form/__tests__/SSHKnownHosts.test.ts +11 -2
- package/components/form/__tests__/Select.test.ts +37 -1
- package/components/form/__tests__/UnitInput.test.ts +23 -1
- package/components/form/labeled-select-utils/labeled-select-pagination.ts +3 -38
- package/components/formatter/ClusterLink.vue +5 -8
- package/components/formatter/Description.vue +30 -0
- package/components/formatter/FleetApplicationClustersReady.vue +77 -0
- package/components/formatter/FleetApplicationSource.vue +79 -0
- package/components/formatter/FleetSummaryGraph.vue +7 -0
- package/components/formatter/PodImages.vue +1 -1
- package/components/formatter/WorkloadHealthScale.vue +5 -4
- package/components/formatter/__tests__/ClusterLink.test.ts +2 -32
- package/components/formatter/__tests__/LiveDate.test.ts +10 -2
- package/components/google/AccountAccess.vue +209 -0
- package/components/google/types/gcp.d.ts +136 -0
- package/components/google/types/index.d.ts +101 -0
- package/components/google/util/__mocks__/gcp.ts +465 -0
- package/components/google/util/formatter.ts +82 -0
- package/components/google/util/gcp.ts +134 -0
- package/components/google/util/index.d.ts +11 -0
- package/components/nav/Favorite.vue +1 -1
- package/components/nav/Group.vue +13 -1
- package/components/nav/Header.vue +44 -179
- package/components/nav/NamespaceFilter.vue +126 -75
- package/components/nav/NotificationCenter/Notification.vue +484 -0
- package/components/nav/NotificationCenter/NotificationHeader.vue +112 -0
- package/components/nav/NotificationCenter/index.vue +148 -0
- package/components/nav/TopLevelMenu.helper.ts +55 -34
- package/components/nav/TopLevelMenu.vue +110 -125
- package/components/nav/Type.vue +15 -4
- package/components/nav/WindowManager/ContainerLogs.vue +87 -61
- package/components/nav/WindowManager/ContainerLogsActions.vue +76 -0
- package/components/nav/WindowManager/index.vue +3 -2
- package/components/templates/default.vue +0 -3
- package/components/templates/plain.vue +0 -3
- package/composables/drawer.ts +26 -0
- package/composables/focusTrap.ts +3 -3
- package/composables/resources.test.ts +63 -0
- package/composables/resources.ts +38 -0
- package/composables/useI18n.ts +12 -11
- package/composables/useIsNewDetailPageEnabled.ts +17 -0
- package/config/labels-annotations.js +22 -11
- package/config/menuRouteMap.js +10 -0
- package/config/pagination-table-headers.js +8 -1
- package/config/private-label.js +0 -1
- package/config/product/auth.js +20 -3
- package/config/product/{cis.js → compliance.js} +23 -26
- package/config/product/explorer.js +80 -26
- package/config/product/fleet.js +77 -17
- package/config/product/manager.js +29 -46
- package/config/product/settings.js +23 -11
- package/config/product/uiplugins.js +13 -10
- package/config/query-params.js +16 -1
- package/config/roles.ts +2 -1
- package/config/router/navigation-guards/authentication.js +51 -2
- package/config/router/navigation-guards/index.js +16 -20
- package/config/router/routes.js +65 -31
- package/config/secret.ts +15 -0
- package/config/settings.ts +33 -16
- package/config/store.js +2 -0
- package/config/system-namespaces.js +1 -1
- package/config/table-headers.js +91 -30
- package/config/types.js +18 -7
- package/config/version.js +1 -1
- package/core/plugin-helpers.ts +3 -2
- package/core/plugin.ts +32 -7
- package/core/types.ts +25 -7
- package/detail/catalog.cattle.io.app.vue +5 -1
- package/detail/{cis.cattle.io.clusterscan.vue → compliance.cattle.io.clusterscan.vue} +22 -18
- package/detail/fleet.cattle.io.bundle.vue +70 -6
- package/detail/fleet.cattle.io.cluster.vue +28 -15
- package/detail/fleet.cattle.io.gitrepo.vue +11 -2
- package/detail/fleet.cattle.io.helmop.vue +157 -0
- package/detail/management.cattle.io.fleetworkspace.vue +18 -27
- package/detail/management.cattle.io.oidcclient.vue +369 -0
- package/detail/namespace.vue +0 -3
- package/detail/node.vue +48 -39
- package/detail/pod.vue +2 -2
- package/detail/provisioning.cattle.io.cluster.vue +16 -50
- package/detail/service.vue +10 -2
- package/detail/workload/index.vue +48 -39
- package/dialog/AddCustomBadgeDialog.vue +17 -10
- package/{pages/c/_cluster/uiplugins/AddExtensionRepos.vue → dialog/AddExtensionReposDialog.vue} +72 -42
- package/dialog/AddonConfigConfirmationDialog.vue +1 -1
- package/dialog/AssignToDialog.vue +176 -0
- package/dialog/ChangePasswordDialog.vue +106 -0
- package/{pages/c/_cluster/uiplugins/DeveloperInstallDialog.vue → dialog/DeveloperLoadExtensionDialog.vue} +74 -71
- package/dialog/DisableAuthProviderDialog.vue +101 -0
- package/dialog/DrainNode.vue +1 -1
- package/{pages/c/_cluster/uiplugins/CatalogList/CatalogLoadDialog.vue → dialog/ExtensionCatalogInstallDialog.vue} +100 -88
- package/{pages/c/_cluster/uiplugins/CatalogList/CatalogUninstallDialog.vue → dialog/ExtensionCatalogUninstallDialog.vue} +87 -66
- package/dialog/FeatureFlagListDialog.vue +288 -0
- package/dialog/ForceMachineRemoveDialog.vue +1 -1
- package/dialog/GenericPrompt.vue +1 -1
- package/dialog/HelmOpForceUpdateDialog.vue +132 -0
- package/{components/Import.vue → dialog/ImportDialog.vue} +8 -13
- package/{pages/c/_cluster/uiplugins/InstallDialog.vue → dialog/InstallExtensionDialog.vue} +124 -106
- package/{components/form/SSHKnownHosts → dialog}/KnownHostsEditDialog.vue +52 -62
- package/dialog/MoveNamespaceDialog.vue +157 -0
- package/dialog/OidcClientSecretDialog.vue +117 -0
- package/dialog/RedeployWorkloadDialog.vue +164 -0
- package/dialog/RollbackWorkloadDialog.vue +1 -1
- package/dialog/RotateEncryptionKeyDialog.vue +10 -30
- package/dialog/ScalePoolDownDialog.vue +1 -1
- package/{components/nav/Jump.vue → dialog/SearchDialog.vue} +34 -14
- package/{pages/c/_cluster/uiplugins/UninstallDialog.vue → dialog/UninstallExtensionDialog.vue} +67 -58
- package/dialog/WechatDialog.vue +57 -0
- package/{components/form/SSHKnownHosts → dialog}/__tests__/KnownHostsEditDialog.test.ts +15 -34
- package/edit/__tests__/cis.cattle.io.clusterscan.test.ts +3 -3
- package/edit/__tests__/fleet.cattle.io.gitrepo.test.ts +60 -68
- package/edit/__tests__/fleet.cattle.io.helmop.test.ts +224 -0
- package/edit/__tests__/service.test.ts +2 -1
- package/edit/auth/ldap/__tests__/config.test.ts +14 -0
- package/edit/auth/ldap/config.vue +24 -0
- package/edit/auth/oidc.vue +159 -93
- package/edit/autoscaling.horizontalpodautoscaler/external-metric.vue +1 -1
- package/edit/autoscaling.horizontalpodautoscaler/hpa-scaling-rule.vue +9 -6
- package/edit/autoscaling.horizontalpodautoscaler/index.vue +7 -2
- package/edit/autoscaling.horizontalpodautoscaler/metric-identifier.vue +2 -2
- package/edit/autoscaling.horizontalpodautoscaler/metric-object-reference.vue +7 -5
- package/edit/autoscaling.horizontalpodautoscaler/metric-target.vue +5 -3
- package/edit/autoscaling.horizontalpodautoscaler/metrics-row.vue +2 -2
- package/edit/autoscaling.horizontalpodautoscaler/object-metric.vue +2 -2
- package/edit/autoscaling.horizontalpodautoscaler/pod-metric.vue +1 -1
- package/edit/autoscaling.horizontalpodautoscaler/resource-metric.vue +2 -2
- package/edit/{cis.cattle.io.clusterscan.vue → compliance.cattle.io.clusterscan.vue} +30 -31
- package/edit/{cis.cattle.io.clusterscanbenchmark.vue → compliance.cattle.io.clusterscanbenchmark.vue} +4 -4
- package/edit/{cis.cattle.io.clusterscanprofile.vue → compliance.cattle.io.clusterscanprofile.vue} +5 -5
- package/edit/configmap.vue +12 -2
- package/edit/constraints.gatekeeper.sh.constraint/index.vue +1 -0
- package/edit/fleet.cattle.io.gitrepo.vue +70 -256
- package/edit/fleet.cattle.io.helmop.vue +786 -0
- package/edit/helm.cattle.io.projecthelmchart.vue +1 -0
- package/edit/k8s.cni.cncf.io.networkattachmentdefinition.vue +1 -0
- package/edit/logging-flow/index.vue +2 -2
- package/edit/logging.banzaicloud.io.output/index.vue +2 -1
- package/edit/logging.banzaicloud.io.output/providers/awsElasticsearch.vue +8 -9
- package/edit/logging.banzaicloud.io.output/providers/azurestorage.vue +19 -19
- package/edit/logging.banzaicloud.io.output/providers/cloudwatch.vue +23 -23
- package/edit/logging.banzaicloud.io.output/providers/datadog.vue +19 -19
- package/edit/logging.banzaicloud.io.output/providers/elasticsearch.vue +14 -14
- package/edit/logging.banzaicloud.io.output/providers/forward.vue +12 -12
- package/edit/logging.banzaicloud.io.output/providers/gcs.vue +23 -23
- package/edit/logging.banzaicloud.io.output/providers/gelf.vue +6 -6
- package/edit/logging.banzaicloud.io.output/providers/kafka.vue +10 -10
- package/edit/logging.banzaicloud.io.output/providers/kinesisStream.vue +8 -8
- package/edit/logging.banzaicloud.io.output/providers/logdna.vue +17 -17
- package/edit/logging.banzaicloud.io.output/providers/logz.vue +7 -7
- package/edit/logging.banzaicloud.io.output/providers/loki.vue +12 -12
- package/edit/logging.banzaicloud.io.output/providers/newrelic.vue +3 -3
- package/edit/logging.banzaicloud.io.output/providers/opensearch.vue +14 -14
- package/edit/logging.banzaicloud.io.output/providers/redis.vue +6 -6
- package/edit/logging.banzaicloud.io.output/providers/s3.vue +23 -23
- package/edit/logging.banzaicloud.io.output/providers/splunkHec.vue +13 -13
- package/edit/logging.banzaicloud.io.output/providers/sumologic.vue +2 -2
- package/edit/logging.banzaicloud.io.output/providers/syslog.vue +54 -54
- package/edit/management.cattle.io.fleetworkspace.vue +44 -10
- package/edit/management.cattle.io.oidcclient.vue +162 -0
- package/edit/management.cattle.io.project.vue +4 -1
- package/edit/monitoring.coreos.com.alertmanagerconfig/index.vue +1 -1
- package/edit/monitoring.coreos.com.alertmanagerconfig/receiverConfig.vue +5 -0
- package/edit/monitoring.coreos.com.prometheusrule/index.vue +1 -0
- package/edit/monitoring.coreos.com.receiver/auth.vue +3 -3
- package/edit/monitoring.coreos.com.receiver/index.vue +1 -0
- package/edit/monitoring.coreos.com.receiver/types/email.vue +1 -1
- package/edit/monitoring.coreos.com.route.vue +1 -0
- package/edit/namespace.vue +2 -4
- package/edit/networking.istio.io.destinationrule/index.vue +4 -1
- package/edit/networking.k8s.io.ingress/Certificate.vue +25 -8
- package/edit/networking.k8s.io.ingress/DefaultBackend.vue +2 -2
- package/edit/networking.k8s.io.ingress/Rule.vue +5 -11
- package/edit/networking.k8s.io.ingress/RulePath.vue +105 -96
- package/edit/networking.k8s.io.ingress/__tests__/Certificate.test.ts +37 -0
- package/edit/networking.k8s.io.ingress/index.vue +4 -1
- package/edit/networking.k8s.io.networkpolicy/PolicyRule.vue +6 -17
- package/edit/networking.k8s.io.networkpolicy/PolicyRulePort.vue +4 -2
- package/edit/networking.k8s.io.networkpolicy/PolicyRuleTarget.vue +69 -73
- package/edit/networking.k8s.io.networkpolicy/PolicyRules.vue +10 -16
- package/edit/networking.k8s.io.networkpolicy/__tests__/PolicyRuleTarget.test.ts +72 -41
- package/edit/networking.k8s.io.networkpolicy/__tests__/utils/mock.json +17 -1
- package/edit/networking.k8s.io.networkpolicy/index.vue +24 -32
- package/edit/node.vue +1 -0
- package/edit/persistentvolume/index.vue +7 -2
- package/edit/persistentvolumeclaim.vue +2 -0
- package/edit/provisioning.cattle.io.cluster/__tests__/DirectoryConfig.test.ts +26 -12
- package/edit/provisioning.cattle.io.cluster/__tests__/rke2.test.ts +69 -2
- package/edit/provisioning.cattle.io.cluster/__tests__/utils/rke2-test-data.ts +58 -0
- package/edit/provisioning.cattle.io.cluster/index.vue +21 -73
- package/edit/provisioning.cattle.io.cluster/rke2.vue +535 -428
- package/edit/provisioning.cattle.io.cluster/tabs/Basics.vue +49 -40
- package/edit/provisioning.cattle.io.cluster/tabs/DirectoryConfig.vue +5 -3
- package/edit/provisioning.cattle.io.cluster/tabs/MachinePool.vue +5 -0
- package/edit/provisioning.cattle.io.cluster/tabs/registries/RegistryConfigs.vue +2 -2
- package/edit/resources.cattle.io.restore.vue +1 -1
- package/edit/secret/basic.vue +1 -0
- package/edit/secret/index.vue +129 -17
- package/edit/service.vue +21 -30
- package/edit/serviceaccount.vue +4 -1
- package/edit/storage.k8s.io.storageclass/index.vue +14 -9
- package/edit/storage.k8s.io.storageclass/provisioners/kubernetes.io/aws-ebs.vue +34 -27
- package/edit/storage.k8s.io.storageclass/provisioners/kubernetes.io/gce-pd.vue +15 -13
- package/edit/storage.k8s.io.storageclass/provisioners/kubernetes.io/vsphere-volume.vue +41 -39
- package/edit/workload/Job.vue +31 -34
- package/edit/workload/Upgrading.vue +5 -5
- package/edit/workload/index.vue +32 -32
- package/edit/workload/mixins/workload.js +0 -2
- package/edit/workload/storage/Mount.vue +1 -0
- package/edit/workload/storage/awsElasticBlockStore.vue +9 -7
- package/edit/workload/storage/azureDisk.vue +14 -10
- package/edit/workload/storage/azureFile.vue +9 -7
- package/edit/workload/storage/csi/index.vue +6 -9
- package/edit/workload/storage/emptyDir.vue +7 -5
- package/edit/workload/storage/gcePersistentDisk.vue +9 -7
- package/edit/workload/storage/hostPath.vue +7 -5
- package/edit/workload/storage/nfs.vue +8 -6
- package/edit/workload/storage/persistentVolumeClaim/index.vue +12 -10
- package/edit/workload/storage/persistentVolumeClaim/persistentvolumeclaim.vue +20 -15
- package/edit/workload/storage/secret.vue +9 -6
- package/edit/workload/storage/vsphereVolume.vue +11 -7
- package/initialize/app-extended.js +7 -1
- package/list/{cis.cattle.io.clusterscan.vue → compliance.cattle.io.clusterscan.vue} +2 -2
- package/list/fleet.cattle.io.gitrepo.vue +1 -1
- package/list/fleet.cattle.io.helmop.vue +108 -0
- package/list/harvesterhci.io.management.cluster.vue +0 -17
- package/list/management.cattle.io.feature.vue +4 -288
- package/list/management.cattle.io.oidcclient.vue +108 -0
- package/list/management.cattle.io.podsecurityadmissionconfigurationtemplate.vue +8 -6
- package/list/management.cattle.io.user.vue +13 -20
- package/list/namespace.vue +6 -2
- package/list/node.vue +2 -0
- package/list/projectsecret.vue +345 -0
- package/list/secret.vue +109 -0
- package/list/workload.vue +6 -2
- package/machine-config/__tests__/vmwarevsphere.test.ts +5 -7
- package/machine-config/amazonec2.vue +3 -24
- package/machine-config/components/GCEImage.vue +374 -0
- package/machine-config/google.vue +617 -0
- package/machine-config/vmwarevsphere.vue +7 -17
- package/mixins/__tests__/brand.spec.ts +170 -0
- package/mixins/auth-config.js +8 -1
- package/mixins/brand.js +16 -17
- package/mixins/create-edit-view/impl.js +20 -1
- package/mixins/create-edit-view/index.js +5 -0
- package/mixins/preset.js +100 -0
- package/mixins/resource-fetch-api-pagination.js +73 -44
- package/mixins/resource-fetch.js +18 -8
- package/mixins/resource-table-watch.js +45 -0
- package/mixins/vue-select-overrides.js +1 -4
- package/models/__tests__/chart.test.ts +296 -0
- package/models/__tests__/fleet.cattle.io.gitrepo.test.ts +1 -1
- package/models/__tests__/fleet.cattle.io.helmop.test.ts +224 -0
- package/models/__tests__/node.test.ts +7 -63
- package/models/__tests__/workload.test.ts +1 -0
- package/models/chart.js +157 -2
- package/models/cluster/node.js +2 -1
- package/models/cluster.js +32 -2
- package/models/cluster.x-k8s.io.machinedeployment.js +11 -2
- package/models/{cis.cattle.io.clusterscan.js → compliance.cattle.io.clusterscan.js} +8 -8
- package/models/{cis.cattle.io.clusterscanbenchmark.js → compliance.cattle.io.clusterscanbenchmark.js} +1 -1
- package/models/{cis.cattle.io.clusterscanprofile.js → compliance.cattle.io.clusterscanprofile.js} +5 -5
- package/models/{cis.cattle.io.clusterscanreport.js → compliance.cattle.io.clusterscanreport.js} +1 -1
- package/models/fleet-application.js +297 -0
- package/models/fleet.cattle.io.bundle.js +9 -8
- package/models/fleet.cattle.io.cluster.js +21 -4
- package/models/fleet.cattle.io.gitrepo.js +46 -382
- package/models/fleet.cattle.io.helmop.js +202 -0
- package/models/management.cattle.io.authconfig.js +1 -0
- package/models/management.cattle.io.cluster.js +0 -20
- package/models/management.cattle.io.feature.js +7 -1
- package/models/management.cattle.io.fleetworkspace.js +14 -1
- package/models/management.cattle.io.node.js +7 -22
- package/models/management.cattle.io.nodepool.js +12 -0
- package/models/management.cattle.io.oidcclient.js +18 -0
- package/models/management.cattle.io.registration.js +3 -0
- package/models/management.cattle.io.setting.js +0 -1
- package/models/namespace.js +12 -1
- package/models/provisioning.cattle.io.cluster.js +79 -115
- package/models/secret.js +157 -2
- package/models/service.js +28 -9
- package/models/storage.k8s.io.storageclass.js +2 -2
- package/models/workload.js +93 -53
- package/package.json +6 -5
- package/pages/about.vue +17 -61
- package/pages/account/index.vue +105 -116
- package/pages/auth/login.vue +2 -3
- package/pages/auth/setup.vue +36 -17
- package/pages/auth/verify.vue +13 -1
- package/pages/c/_cluster/apps/charts/AddRepoLink.vue +36 -0
- package/pages/c/_cluster/apps/charts/AppChartCardFooter.vue +80 -0
- package/pages/c/_cluster/apps/charts/AppChartCardSubHeader.vue +57 -0
- package/pages/c/_cluster/apps/charts/StatusLabel.vue +33 -0
- package/pages/c/_cluster/apps/charts/index.vue +501 -468
- package/pages/c/_cluster/apps/charts/install.vue +0 -1
- package/pages/c/_cluster/auth/roles/index.vue +72 -44
- package/pages/c/_cluster/auth/user.retention/index.vue +87 -78
- package/pages/c/_cluster/explorer/ConfigBadge.vue +1 -1
- package/pages/c/_cluster/explorer/EventsTable.vue +1 -1
- package/pages/c/_cluster/explorer/index.vue +16 -4
- package/pages/c/_cluster/explorer/projectsecret.vue +34 -0
- package/pages/c/_cluster/explorer/tools/index.vue +6 -6
- package/pages/c/_cluster/explorer/tools/pages/_page.vue +0 -1
- package/pages/c/_cluster/fleet/__tests__/index.test.ts +720 -0
- package/pages/c/_cluster/fleet/application/_resource/_id.vue +14 -0
- package/pages/c/_cluster/fleet/application/_resource/create.vue +14 -0
- package/pages/c/_cluster/fleet/application/create.vue +341 -0
- package/pages/c/_cluster/fleet/application/index.vue +139 -0
- package/pages/c/_cluster/fleet/graph/config.js +277 -0
- package/pages/c/_cluster/fleet/index.vue +866 -328
- package/pages/c/_cluster/fleet/settings/index.vue +229 -0
- package/pages/c/_cluster/longhorn/index.vue +5 -2
- package/pages/c/_cluster/settings/banners.vue +56 -2
- package/pages/c/_cluster/settings/brand.vue +2 -1
- package/pages/c/_cluster/settings/performance.vue +7 -26
- package/pages/c/_cluster/uiplugins/CatalogList/index.vue +16 -1
- package/pages/c/_cluster/uiplugins/PluginInfoPanel.vue +2 -2
- package/pages/c/_cluster/uiplugins/__tests__/AddExtensionRepos.test.ts +4 -7
- package/pages/c/_cluster/uiplugins/index.vue +98 -55
- package/pages/explorer/resource/detail/configmap.vue +42 -0
- package/pages/explorer/resource/detail/projectsecret.vue +9 -0
- package/pages/explorer/resource/detail/secret.vue +63 -0
- package/pages/home.vue +63 -117
- package/pages/prefs.vue +0 -1
- package/pages/support/index.vue +4 -6
- package/pkg/tsconfig.json +9 -9
- package/pkg/vue.config.js +1 -1
- package/plugins/clean-html.js +2 -0
- package/plugins/dashboard-store/__tests__/actions.test.ts +4 -1
- package/plugins/dashboard-store/__tests__/normalize.test.ts +223 -0
- package/plugins/dashboard-store/__tests__/resource-class.test.ts +191 -0
- package/plugins/dashboard-store/__tests__/utils/normalize-usecases.ts +1526 -0
- package/plugins/dashboard-store/actions.js +213 -56
- package/plugins/dashboard-store/getters.js +112 -24
- package/plugins/dashboard-store/mutations.js +61 -12
- package/plugins/dashboard-store/normalize.js +29 -19
- package/plugins/dashboard-store/resource-class.js +105 -21
- package/plugins/steve/__tests__/getters.test.ts +19 -12
- package/plugins/steve/__tests__/steve-class.test.ts +1 -0
- package/plugins/steve/__tests__/subscribe.spec.ts +324 -1
- package/plugins/steve/actions.js +37 -24
- package/plugins/steve/getters.js +47 -12
- package/plugins/steve/resourceWatcher.js +10 -3
- package/plugins/steve/steve-class.js +5 -0
- package/plugins/steve/steve-pagination-utils.ts +225 -43
- package/plugins/steve/subscribe.js +418 -53
- package/plugins/steve/worker/web-worker.advanced.js +5 -1
- package/public/favicon.png +0 -0
- package/public/index.html +1 -1
- package/rancher-components/BadgeState/BadgeState.vue +33 -52
- package/rancher-components/Banner/Banner.test.ts +51 -3
- package/rancher-components/Banner/Banner.vue +53 -10
- package/rancher-components/Form/Checkbox/Checkbox.test.ts +59 -1
- package/rancher-components/Form/Checkbox/Checkbox.vue +27 -9
- package/rancher-components/Form/LabeledInput/LabeledInput.test.ts +51 -0
- package/rancher-components/Form/LabeledInput/LabeledInput.vue +21 -3
- package/rancher-components/Form/Radio/RadioButton.test.ts +36 -1
- package/rancher-components/Form/Radio/RadioButton.vue +21 -5
- package/rancher-components/Form/Radio/RadioGroup.test.ts +60 -0
- package/rancher-components/Form/Radio/RadioGroup.vue +90 -39
- package/rancher-components/Form/TextArea/TextAreaAutoGrow.vue +4 -0
- package/rancher-components/Form/ToggleSwitch/ToggleSwitch.vue +22 -1
- package/rancher-components/LabeledTooltip/LabeledTooltip.vue +32 -2
- package/rancher-components/RcButton/RcButton.vue +1 -1
- package/rancher-components/RcDropdown/RcDropdown.test.ts +98 -0
- package/rancher-components/RcDropdown/RcDropdown.vue +6 -0
- package/rancher-components/RcDropdown/RcDropdownItem.vue +8 -55
- package/rancher-components/RcDropdown/RcDropdownItemCheckbox.vue +69 -0
- package/rancher-components/RcDropdown/RcDropdownItemSelect.vue +93 -0
- package/rancher-components/RcDropdown/index.ts +2 -0
- package/rancher-components/RcDropdown/useDropdownContext.ts +21 -0
- package/rancher-components/RcDropdown/useDropdownItem.ts +92 -0
- package/rancher-components/RcItemCard/RcItemCard.test.ts +189 -0
- package/rancher-components/RcItemCard/RcItemCard.vue +430 -0
- package/rancher-components/RcItemCard/RcItemCardAction.vue +24 -0
- package/rancher-components/RcItemCard/index.ts +2 -0
- package/rancher-components/StringList/StringList.vue +1 -1
- package/scripts/build-pkg.sh +18 -23
- package/scripts/extension/publish +1 -1
- package/scripts/publish-shell.sh +1 -1
- package/static/loading-indicator.html +1 -1
- package/store/action-menu.js +26 -56
- package/store/auth.js +3 -0
- package/store/catalog.js +85 -25
- package/store/features.js +0 -1
- package/store/growl.js +97 -8
- package/store/i18n.js +5 -1
- package/store/index.js +48 -18
- package/store/notifications.ts +426 -0
- package/store/prefs.js +2 -8
- package/store/slideInPanel.ts +6 -0
- package/store/type-map.js +35 -20
- package/store/type-map.utils.ts +49 -6
- package/store/uiplugins.ts +15 -1
- package/types/fleet.d.ts +60 -1
- package/types/kube/kube-api.ts +34 -0
- package/types/notifications/index.ts +74 -0
- package/types/resources/fleet.d.ts +43 -0
- package/types/resources/pod-security-admission.ts +36 -0
- package/types/resources/settings.d.ts +107 -0
- package/types/resources/userPreferences.d.ts +13 -0
- package/types/shell/index.d.ts +949 -741
- package/types/store/dashboard-store.types.ts +57 -4
- package/types/store/pagination.types.ts +41 -9
- package/types/store/subscribe.types.ts +50 -0
- package/utils/__mocks__/tabbable.js +13 -0
- package/utils/__tests__/back-off.test.ts +354 -0
- package/utils/__tests__/create-yaml.test.ts +235 -0
- package/utils/__tests__/fleet.test.ts +148 -0
- package/utils/__tests__/kontainer.test.ts +19 -0
- package/utils/__tests__/object.test.ts +54 -1
- package/utils/__tests__/string.test.ts +273 -1
- package/utils/__tests__/time.test.ts +31 -0
- package/utils/auth.js +41 -6
- package/utils/back-off.ts +176 -0
- package/utils/cluster.js +24 -20
- package/utils/create-yaml.js +103 -9
- package/utils/crypto/encryption.ts +103 -0
- package/utils/cspAdaptor.ts +51 -0
- package/utils/error.js +26 -9
- package/utils/errorTranslate.json +410 -6
- package/utils/errorTranslateNew.json +39 -0
- package/utils/fleet-types.ts +0 -0
- package/utils/fleet.ts +204 -74
- package/utils/grafana.js +1 -0
- package/utils/kontainer.ts +3 -5
- package/utils/object.js +36 -12
- package/utils/pagination-utils.ts +50 -3
- package/utils/pagination-wrapper.ts +132 -50
- package/utils/perf-setting.utils.ts +28 -0
- package/utils/release-notes.ts +48 -0
- package/utils/roleFiltering.js +33 -0
- package/utils/selector-typed.ts +210 -0
- package/utils/selector.js +29 -6
- package/utils/settings.ts +4 -1
- package/utils/string.js +24 -0
- package/utils/style.ts +39 -0
- package/utils/{time.js → time.ts} +25 -6
- package/utils/uiplugins.ts +41 -8
- package/utils/v-sphere.ts +5 -1
- package/utils/validators/formRules/__tests__/index.test.ts +76 -6
- package/utils/validators/formRules/index.ts +99 -4
- package/utils/window.js +11 -7
- package/vue.config.js +1 -1
- package/.DS_Store +0 -0
- package/components/AssignTo.vue +0 -199
- package/components/DisableAuthProviderModal.vue +0 -115
- package/components/MoveModal.vue +0 -167
- package/components/PromptChangePassword.vue +0 -123
- package/components/ResourceList/Masthead-btn.vue +0 -225
- package/components/__tests__/ApplicationCard.test.ts +0 -27
- package/components/cards/ApplicationCard.vue +0 -145
- package/components/fleet/FleetBundleResources.vue +0 -86
- package/components/fleet/ForceDirectedTreeChart/chartIcons.js +0 -17
- package/components/formatter/RKETemplateName.vue +0 -37
- package/config/product/legacy.js +0 -62
- package/config/secret.js +0 -14
- package/dialog/SaveAsRKETemplateDialog.vue +0 -139
- package/models/etcdbackup.js +0 -45
- package/pages/auth copy/login.vue +0 -595
- package/pages/auth copy/logout.vue +0 -47
- package/pages/auth copy/setup.vue +0 -523
- package/pages/auth copy/verify.vue +0 -203
- package/pages/c/_cluster/fleet/GitRepoGraphConfig.js +0 -249
- package/pages/c/_cluster/legacy/pages/_page.vue +0 -29
- package/pages/c/_cluster/legacy/project/_page.vue +0 -57
- package/pages/c/_cluster/legacy/project/index.vue +0 -32
- package/pages/c/_cluster/legacy/project/pipelines.vue +0 -96
|
@@ -111,6 +111,12 @@ generic:
|
|
|
111
111
|
=1 {匹配 {total, number} 个中的 1 个:"{sample}"}
|
|
112
112
|
other {匹配 {total, number} 中的 {matched, number} 个,包括 "{sample}"}
|
|
113
113
|
}
|
|
114
|
+
ariaLabel:
|
|
115
|
+
genericAddRow: 添加
|
|
116
|
+
|
|
117
|
+
graph:
|
|
118
|
+
loading: 正在加载 Chart 数据...
|
|
119
|
+
rendering: 正在渲染 Chart...
|
|
114
120
|
|
|
115
121
|
locale:
|
|
116
122
|
en-us: English
|
|
@@ -212,7 +218,7 @@ product:
|
|
|
212
218
|
backup: Rancher 备份
|
|
213
219
|
cis: CIS Benchmark
|
|
214
220
|
ecm: Cluster Manager
|
|
215
|
-
explorer:
|
|
221
|
+
explorer: 控制台
|
|
216
222
|
fleet: 持续交付
|
|
217
223
|
longhorn: Longhorn
|
|
218
224
|
manager: 集群管理
|
|
@@ -589,11 +595,28 @@ assignTo:
|
|
|
589
595
|
workspace: 工作空间
|
|
590
596
|
|
|
591
597
|
stateLabel:
|
|
598
|
+
Wait Check-In: 等待加入
|
|
599
|
+
Provisioning: 配置中
|
|
600
|
+
Waiting: 等待中
|
|
601
|
+
waiting: 等待中
|
|
602
|
+
Images preloading: 图像预加载中
|
|
603
|
+
Images preloaded: 图像已预加载
|
|
604
|
+
Waiting Reboot: 等待重启
|
|
605
|
+
warning: 警告
|
|
606
|
+
upgrading: 升级中
|
|
607
|
+
Upgrading: 升级中
|
|
608
|
+
Succeeded: 成功
|
|
609
|
+
Pending migration: 待迁移
|
|
610
|
+
Imagepullbackoff: 镜像拉取失败
|
|
611
|
+
VM error: 错误
|
|
612
|
+
Locked: 锁定
|
|
592
613
|
Bound: 已绑定
|
|
593
614
|
Running: 运行中
|
|
594
615
|
Off: 关闭
|
|
595
616
|
Stopped: 关闭
|
|
617
|
+
pending: 准备中
|
|
596
618
|
Pending: 准备中
|
|
619
|
+
failed: 失败
|
|
597
620
|
Failed: 失败
|
|
598
621
|
Paused: 暂停
|
|
599
622
|
Stopping: 停止中
|
|
@@ -633,7 +656,6 @@ stateLabel:
|
|
|
633
656
|
VMI_WAITINH: 等待中
|
|
634
657
|
Entering maintenance mode: 维护中
|
|
635
658
|
|
|
636
|
-
|
|
637
659
|
buttonLabel:
|
|
638
660
|
Stop: 停止
|
|
639
661
|
Restart: 重启
|
|
@@ -667,7 +689,7 @@ buttonLabel:
|
|
|
667
689
|
Errors:
|
|
668
690
|
changePassword:
|
|
669
691
|
Password must be at least 12 characters: 密码至少为12个字符
|
|
670
|
-
invalid current password: 当前的密码输入错误
|
|
692
|
+
"invalid current password": 当前的密码输入错误
|
|
671
693
|
|
|
672
694
|
|
|
673
695
|
asyncButton:
|
|
@@ -777,6 +799,10 @@ asyncButton:
|
|
|
777
799
|
action: 恢复编排
|
|
778
800
|
success: 已恢复编排
|
|
779
801
|
waiting: 正在恢复编排
|
|
802
|
+
redeploy:
|
|
803
|
+
action: 重新部署
|
|
804
|
+
success: 重新部署成功
|
|
805
|
+
waiting: 正在重新部署工作负载
|
|
780
806
|
rollback:
|
|
781
807
|
action: 回滚
|
|
782
808
|
success: 已回滚
|
|
@@ -1125,7 +1151,7 @@ chartHeading:
|
|
|
1125
1151
|
overview: 概述
|
|
1126
1152
|
poweredBy: "Powered by:"
|
|
1127
1153
|
|
|
1128
|
-
|
|
1154
|
+
compliance:
|
|
1129
1155
|
addTest: 添加测试 ID
|
|
1130
1156
|
alertNeeded: |-
|
|
1131
1157
|
必须在 CIS Chart values.yaml 中开启告警。
|
|
@@ -1183,6 +1209,9 @@ cis:
|
|
|
1183
1209
|
testsToSkip: 要跳过的测试
|
|
1184
1210
|
|
|
1185
1211
|
cluster:
|
|
1212
|
+
jwtAuthentication:
|
|
1213
|
+
banner: "使用 JWT 认证的服务账户访问可在集群创建后通过以下路径配置:<br>
|
|
1214
|
+
<code>集群管理 > 高级 > JWT 认证</code>"
|
|
1186
1215
|
addonChart:
|
|
1187
1216
|
rancher-vsphere-cpi: vSphere CPI 配置
|
|
1188
1217
|
rancher-vsphere-csi: vSphere CSI 配置
|
|
@@ -1434,6 +1463,25 @@ cluster:
|
|
|
1434
1463
|
name:
|
|
1435
1464
|
label: 集群名称
|
|
1436
1465
|
placeholder: 请输入集群名称
|
|
1466
|
+
directoryConfig:
|
|
1467
|
+
title: 数据目录配置
|
|
1468
|
+
banner: 集群创建后,数据目录配置将无法更改
|
|
1469
|
+
radioInput:
|
|
1470
|
+
defaultLabel: 使用默认数据目录配置
|
|
1471
|
+
commonLabel: 为数据目录配置使用公共基础目录(子系统路径将使用子目录:system-agent、provisioning 和 distro)
|
|
1472
|
+
customLabel: 使用自定义数据目录
|
|
1473
|
+
common:
|
|
1474
|
+
label: 数据目录基础路径
|
|
1475
|
+
tooltip: 数据目录基础路径。我们将为每个目录附加相应的子目录(/agent、/provisioning 以及 /rke2 或 /k3s)
|
|
1476
|
+
systemAgent:
|
|
1477
|
+
label: 系统代理目录路径
|
|
1478
|
+
tooltip: 用于存储系统代理连接信息和计划的数据目录
|
|
1479
|
+
provisioning:
|
|
1480
|
+
label: 供应目录路径
|
|
1481
|
+
tooltip: 用于存储供应相关文件的数据目录
|
|
1482
|
+
k8sDistro:
|
|
1483
|
+
label: K8s 发行版目录路径
|
|
1484
|
+
tooltip: 用于存储 K8s 发行版的数据目录
|
|
1437
1485
|
machineConfig:
|
|
1438
1486
|
banner:
|
|
1439
1487
|
updateInfo: 创建一个池用来更新主机配置
|
|
@@ -1751,6 +1799,9 @@ cluster:
|
|
|
1751
1799
|
rke2-k3-reprovisioning: '更改集群配置可能导致节点重新配置。详情请参见 <a target="blank" href="{docsBase}/how-to-guides/new-user-guides/launch-kubernetes-with-rancher/rke1-vs-rke2-differences#cluster-api" target="_blank" rel="noopener nofollow">文档</a>。'
|
|
1752
1800
|
desiredNodeGroupWarning: 没有可用于运行 Cluster Agent 的节点。要让集群变为 Active 状态,至少需要有 1 个可用的节点。
|
|
1753
1801
|
haveArgInfo: 所选 Kubernetes 版本的配置信息不可用。此屏幕中可用的选项将受到限制,你可能需要使用 YAML 编辑器。
|
|
1802
|
+
cloudProviderAddConfig: '在 Kubernetes 1.27 或更高版本中,<b>Amazon</b> 云提供商需要额外配置。请参阅<a href="https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/kubernetes-clusters-in-rancher-setup/set-up-cloud-providers/amazon" target="_blank" rel="noopener noreferrer nofollow">文档</a>以了解更多信息。'
|
|
1803
|
+
cloudProviderUnsupportedAzure: '在 Kubernetes 1.30 或更高版本中,<b>Azure</b> 云提供商已被移除。请参阅<a href="https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/kubernetes-clusters-in-rancher-setup/set-up-cloud-providers/azure" target="_blank" rel="noopener noreferrer nofollow">文档</a>以了解更多信息。'
|
|
1804
|
+
cloudProviderMigrateAzure: '在 Kubernetes 1.30 或更高版本中,<b>Azure</b> 云提供商已被移除。要升级 Kubernetes,应先将集群迁移到外部提供商。请参阅<a href="https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/kubernetes-clusters-in-rancher-setup/set-up-cloud-providers/azure" target="_blank" rel="noopener noreferrer nofollow">文档</a>以了解更多信息。'
|
|
1754
1805
|
rkeTemplateUpgrade: 模板修订版 {name} 可用于升级
|
|
1755
1806
|
|
|
1756
1807
|
availabilityWarnings:
|
|
@@ -1831,10 +1882,13 @@ cluster:
|
|
|
1831
1882
|
searchPlaceholder: 请输入搜索
|
|
1832
1883
|
noResults: 没有匹配的结果
|
|
1833
1884
|
privateRegistry:
|
|
1834
|
-
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
|
|
1885
|
+
header: Rancher 系统容器镜像仓库
|
|
1886
|
+
label: 为 Rancher 系统容器镜像启用集群范围容器镜像仓库
|
|
1887
|
+
description: "如果启用,Rancher 将在集群配置期间从此镜像仓库拉取容器镜像。默认情况下,Rancher 在安装官方 Helm Chart 应用时也会使用此镜像仓库。如果禁用集群范围镜像仓库,系统镜像将从全局设置中的系统默认镜像仓库拉取。"
|
|
1888
|
+
importedDescription: "默认情况下,Rancher 在安装官方 Helm Chart 应用时也会使用此镜像仓库。如果禁用集群范围镜像仓库,系统镜像将从全局设置中的系统默认镜像仓库拉取。"
|
|
1889
|
+
docsLinkRke2: "有关配置私有镜像仓库的帮助,请参阅 RKE2 <a href=\"https://docs.rke2.io/install/private_registry\" target=\"_blank\">文档。</a>"
|
|
1890
|
+
docsLinkK3s: "有关配置私有镜像仓库的帮助,请参阅 K3s <a href=\"https://docs.k3s.io/installation/private-registry\" target=\"_blank\">文档。</a>"
|
|
1891
|
+
privateRegistryUrlError: 镜像仓库必须是有效的 URL。协议头可选。
|
|
1838
1892
|
provider:
|
|
1839
1893
|
aliyunecs: Aliyun ECS
|
|
1840
1894
|
aliyunkubernetescontainerservice: Alibaba ACK
|
|
@@ -1955,7 +2009,19 @@ cluster:
|
|
|
1955
2009
|
drain:
|
|
1956
2010
|
label: 清空节点
|
|
1957
2011
|
toolTip: 清空操作预先移除每个节点上的 Pod,使得升级中的节点上没有运行的工作负载。不清空的升级速度更快,造成的混乱更少,但是 Pod 仍可能根据进行中的升级进行重启。
|
|
1958
|
-
|
|
2012
|
+
deleteEmptyDir:
|
|
2013
|
+
warning: "默认情况下,使用 emptyDir 卷的 Pod 将在升级时被删除。依赖 emptyDir 卷在 Pod 生命周期内持久化的操作可能会受到影响。"
|
|
2014
|
+
label: 删除使用 emptyDir 卷的 Pod
|
|
2015
|
+
tooltip: emptyDir 卷通常用于临时数据,但其中的数据将被永久删除。如果未设置此选项且存在使用 emptyDir 的 Pod,排水操作将失败。
|
|
2016
|
+
force:
|
|
2017
|
+
label: 删除独立 Pod
|
|
2018
|
+
tooltip: 删除不受工作负载控制器(Deployment、Job 等)管理的独立 Pod。如果未设置此选项且存在独立 Pod,排水操作将失败。
|
|
2019
|
+
gracePeriod:
|
|
2020
|
+
checkboxLabel: 覆盖 Pod 终止宽限期
|
|
2021
|
+
inputLabel: 宽限期
|
|
2022
|
+
timeout:
|
|
2023
|
+
checkboxLabel: 超时时间
|
|
2024
|
+
inputLabel: 排水超时
|
|
1959
2025
|
truncateHostnames: 将主机名截断为 15 个字符来兼容 NetBIOS。
|
|
1960
2026
|
address:
|
|
1961
2027
|
tooltip: 创建集群后无法更改集群网络值。
|
|
@@ -2116,7 +2182,7 @@ resource:
|
|
|
2116
2182
|
update: "更新 {name} 出错"
|
|
2117
2183
|
|
|
2118
2184
|
codeMirror:
|
|
2119
|
-
escapeText: 按 Shift+Escape
|
|
2185
|
+
escapeText: 按 Shift+Escape 退出编辑状态
|
|
2120
2186
|
keymap:
|
|
2121
2187
|
tooltip: 键映射首选项
|
|
2122
2188
|
indicatorToolip: "按键映射: {name}"
|
|
@@ -2177,7 +2243,7 @@ fleet:
|
|
|
2177
2243
|
gitOpsScale: 大规模 GitOps。
|
|
2178
2244
|
learnMore: 了解更多。
|
|
2179
2245
|
learnMoreLink: https://fleet.rancher.io
|
|
2180
|
-
|
|
2246
|
+
noApplications: "工作区中没有任何 Git 仓库"
|
|
2181
2247
|
getStarted: 开始使用
|
|
2182
2248
|
thereIsMore: |-
|
|
2183
2249
|
{count, plural,
|
|
@@ -2209,7 +2275,9 @@ fleet:
|
|
|
2209
2275
|
other {# 个 Bundle 未显示,因为它属于不能与持续交付一起使用的 Cloud 集群。}
|
|
2210
2276
|
}
|
|
2211
2277
|
fleetSummary:
|
|
2212
|
-
|
|
2278
|
+
noClusters:
|
|
2279
|
+
gitRepo: 这个 Git 仓库不针对任何集群
|
|
2280
|
+
helmOp: ''
|
|
2213
2281
|
state:
|
|
2214
2282
|
ready: '就绪'
|
|
2215
2283
|
info: '转换中'
|
|
@@ -2402,7 +2470,12 @@ glance:
|
|
|
2402
2470
|
eventsTable: 完整事件列表
|
|
2403
2471
|
|
|
2404
2472
|
clusterBadge:
|
|
2473
|
+
badgeAppearance: 集群徽章外观
|
|
2474
|
+
clusterComment: "集群注释 - {text}"
|
|
2475
|
+
customizeAppearance: 自定义外观
|
|
2405
2476
|
addLabel: 添加集群徽章
|
|
2477
|
+
setClusterAppearance: 集群外观设置
|
|
2478
|
+
customize: 自定义
|
|
2406
2479
|
editLabel: 编辑集群徽章
|
|
2407
2480
|
modal:
|
|
2408
2481
|
title: 自定义集群徽章
|
|
@@ -2567,7 +2640,7 @@ ingress:
|
|
|
2567
2640
|
required: 目标服务是必填的
|
|
2568
2641
|
warning: "警告:默认后端将全局用于整个集群"
|
|
2569
2642
|
ingressClass:
|
|
2570
|
-
label:
|
|
2643
|
+
label: Ingress类
|
|
2571
2644
|
rules:
|
|
2572
2645
|
addPath: 添加路径
|
|
2573
2646
|
addRule: 添加规则
|
|
@@ -2908,7 +2981,7 @@ logging:
|
|
|
2908
2981
|
default: /run/log/journal
|
|
2909
2982
|
elasticsearch:
|
|
2910
2983
|
host: 主机
|
|
2911
|
-
scheme:
|
|
2984
|
+
scheme: 协议
|
|
2912
2985
|
port: 端口
|
|
2913
2986
|
indexName: 索引名称
|
|
2914
2987
|
user: 用户名
|
|
@@ -3056,6 +3129,8 @@ logging:
|
|
|
3056
3129
|
path: 路径
|
|
3057
3130
|
overwriteExistingPath: 覆盖现有路径
|
|
3058
3131
|
output:
|
|
3132
|
+
output:
|
|
3133
|
+
label: 输出
|
|
3059
3134
|
buffer:
|
|
3060
3135
|
label: 输出缓冲
|
|
3061
3136
|
selectOutputs: 选择输出
|
|
@@ -3079,7 +3154,7 @@ logging:
|
|
|
3079
3154
|
azurestorage: Azure Storage
|
|
3080
3155
|
cloudwatch: Cloudwatch
|
|
3081
3156
|
datadog: Datadog
|
|
3082
|
-
file:
|
|
3157
|
+
file: File
|
|
3083
3158
|
gcs: GCS
|
|
3084
3159
|
kinesisStream: Kinesis Stream
|
|
3085
3160
|
logdna: LogDNA
|
|
@@ -3164,13 +3239,14 @@ login:
|
|
|
3164
3239
|
label: 记住用户名
|
|
3165
3240
|
|
|
3166
3241
|
logout:
|
|
3167
|
-
message:
|
|
3242
|
+
message: 正在退出登录...
|
|
3168
3243
|
|
|
3169
3244
|
managementNode:
|
|
3170
3245
|
customName: 自定义名称
|
|
3171
3246
|
|
|
3172
3247
|
members:
|
|
3173
3248
|
clusterMembers: 集群成员
|
|
3249
|
+
memberRoles: 成员角色
|
|
3174
3250
|
clusterAndProject: 集群和项目成员
|
|
3175
3251
|
createActionLabel: 添加
|
|
3176
3252
|
clusterMembership: 集群成员
|
|
@@ -3190,6 +3266,18 @@ members:
|
|
|
3190
3266
|
viewClusterCatalogs: 查看集群应用商店
|
|
3191
3267
|
viewClusterMembers: 查看集群成员
|
|
3192
3268
|
viewNodes: 查看节点
|
|
3269
|
+
safe-admin:
|
|
3270
|
+
label: 安全管理员
|
|
3271
|
+
description: 负责用户、角色及基础配置管理,保障系统权限与安全策略的合规性。
|
|
3272
|
+
project-tenant:
|
|
3273
|
+
label: 租户
|
|
3274
|
+
description: 租户可管理资源组及其中的虚机、网络等资源。
|
|
3275
|
+
cluster-tenant:
|
|
3276
|
+
label: 租户
|
|
3277
|
+
description: 租户可管理资源组及其中的虚机、网络等资源。
|
|
3278
|
+
tenant:
|
|
3279
|
+
label: 租户
|
|
3280
|
+
description: 租户可管理资源组及其中的虚机、网络等资源。
|
|
3193
3281
|
owner:
|
|
3194
3282
|
label: 所有者
|
|
3195
3283
|
description: 所有者对集群和集群内的所有资源拥有完全的控制权。
|
|
@@ -3529,6 +3617,7 @@ nameNsDescription:
|
|
|
3529
3617
|
placeholder: 输入可以描述该资源的文本
|
|
3530
3618
|
|
|
3531
3619
|
namespace:
|
|
3620
|
+
cancelCreateAriaLabel: 取消创建命名空间
|
|
3532
3621
|
containerResourceLimit: 容器资源限制
|
|
3533
3622
|
resourceQuotas: 资源配额
|
|
3534
3623
|
project:
|
|
@@ -3746,6 +3835,7 @@ node:
|
|
|
3746
3835
|
operatingSystem: 操作系统
|
|
3747
3836
|
osImage: 镜像
|
|
3748
3837
|
systemUUID: 系统 UUID
|
|
3838
|
+
swap: 内存交换区
|
|
3749
3839
|
pods: Pod
|
|
3750
3840
|
taints: 污点
|
|
3751
3841
|
actions:
|
|
@@ -4414,6 +4504,12 @@ projectMembers:
|
|
|
4414
4504
|
description: 控制用户对项目的访问权限
|
|
4415
4505
|
noDescription: 已创建用户 - 没有描述
|
|
4416
4506
|
searchForMember: 搜索需要向其提供项目访问权限的成员
|
|
4507
|
+
safe-admin:
|
|
4508
|
+
label: 安全管理员
|
|
4509
|
+
description: 负责用户、角色及基础配置管理,保障系统权限与安全策略的合规性。
|
|
4510
|
+
tenant:
|
|
4511
|
+
label: 租户
|
|
4512
|
+
description: 租户可管理资源组及其中的虚机、网络等资源。
|
|
4417
4513
|
owner:
|
|
4418
4514
|
label: 所有者
|
|
4419
4515
|
description: 所有者对项目和项目内的所有资源拥有完全的控制权限。
|
|
@@ -4542,6 +4638,12 @@ promptRemove:
|
|
|
4542
4638
|
promptRemoveApp:
|
|
4543
4639
|
removeCrd: "删除与此应用关联的 CRD"
|
|
4544
4640
|
|
|
4641
|
+
promptRemoveText:
|
|
4642
|
+
globalrole: "角色"
|
|
4643
|
+
globalroles: "角色"
|
|
4644
|
+
roletemplate: "角色"
|
|
4645
|
+
roletemplates: "角色"
|
|
4646
|
+
|
|
4545
4647
|
promptRestore:
|
|
4546
4648
|
title: 还原快照
|
|
4547
4649
|
name: 名称
|
|
@@ -4564,6 +4666,10 @@ promptRollback:
|
|
|
4564
4666
|
multipleWorkloadError: "一次只能回滚一个工作负载。"
|
|
4565
4667
|
singleRevisionBanner: 没有可用于回滚的修订版本。
|
|
4566
4668
|
|
|
4669
|
+
promptRedeploy:
|
|
4670
|
+
title: 重新部署 {type}?
|
|
4671
|
+
attemptingToRedeploy: "您正在尝试重新部署 {type} {names} 重新部署将重启所选工作负载,可能导致暂时性服务中断。"
|
|
4672
|
+
|
|
4567
4673
|
promptSaveAsRKETemplate:
|
|
4568
4674
|
title: 将 {cluster} 转换为新的 RKE 模板
|
|
4569
4675
|
name: 集群模板名称
|
|
@@ -4667,6 +4773,9 @@ rbac:
|
|
|
4667
4773
|
description: 无描述
|
|
4668
4774
|
assignOnlyRole: 已分配该角色
|
|
4669
4775
|
role:
|
|
4776
|
+
cluster-tenant:
|
|
4777
|
+
label: 租户
|
|
4778
|
+
description: 租户可管理资源组及其中的虚机、网络等资源。
|
|
4670
4779
|
admin:
|
|
4671
4780
|
label: 管理员
|
|
4672
4781
|
description: 管理员可以完全控制整个安装以及所有集群中的所有资源。
|
|
@@ -4676,6 +4785,12 @@ rbac:
|
|
|
4676
4785
|
user-base:
|
|
4677
4786
|
label: User-Base 用户
|
|
4678
4787
|
description: User-Base 用户只拥有登录权限。
|
|
4788
|
+
tenant:
|
|
4789
|
+
label: 租户
|
|
4790
|
+
description: 租户可管理资源组及其中的虚机、网络等资源。
|
|
4791
|
+
safe-admin:
|
|
4792
|
+
label: 安全管理员
|
|
4793
|
+
description: 负责用户、角色及基础配置管理,保障系统权限与安全策略的合规性。
|
|
4679
4794
|
clusters-create:
|
|
4680
4795
|
label: 创建集群
|
|
4681
4796
|
description: 允许用户创建集群,并成为该集群的所有者(owner)。普通用户默认拥有此权限。
|
|
@@ -5414,6 +5529,10 @@ storageClass:
|
|
|
5414
5529
|
tooltip: 默认使用主机 Cloud 集群上的默认存储类。
|
|
5415
5530
|
|
|
5416
5531
|
tableHeaders:
|
|
5532
|
+
claimedby: 占用者
|
|
5533
|
+
pod: pod
|
|
5534
|
+
ip: ip
|
|
5535
|
+
volumeattributesclass: 卷属性类
|
|
5417
5536
|
assuredConcurrencyShares: 确保并发份额
|
|
5418
5537
|
accessKey: Access Key
|
|
5419
5538
|
addressType: 地址类型
|
|
@@ -5491,7 +5610,7 @@ tableHeaders:
|
|
|
5491
5610
|
iP: IP
|
|
5492
5611
|
image: 镜像
|
|
5493
5612
|
imageSize: 大小
|
|
5494
|
-
ingressClass:
|
|
5613
|
+
ingressClass: Ingress 类
|
|
5495
5614
|
ingressDefaultBackend: 默认
|
|
5496
5615
|
ingressTarget: 目标
|
|
5497
5616
|
internalExternalIp: 外网 IP/内网 IP
|
|
@@ -5520,7 +5639,12 @@ tableHeaders:
|
|
|
5520
5639
|
missingPL: 缺少 PL
|
|
5521
5640
|
memory: 内存
|
|
5522
5641
|
monitored: 已监控
|
|
5642
|
+
request: 资源请求量
|
|
5643
|
+
limit: 资源限制
|
|
5523
5644
|
name: 名称
|
|
5645
|
+
maxunavailable: 最大不可用数
|
|
5646
|
+
minAvailable: 最小可用数
|
|
5647
|
+
alloweddisruptions: 允许中断数
|
|
5524
5648
|
nameDisplay: 显示名称
|
|
5525
5649
|
nameUnlinked: 名称
|
|
5526
5650
|
namespace: 资源组
|
|
@@ -5590,6 +5714,11 @@ tableHeaders:
|
|
|
5590
5714
|
scope: 范围
|
|
5591
5715
|
selector: 选择器
|
|
5592
5716
|
secrets: 密文
|
|
5717
|
+
secret:
|
|
5718
|
+
project-clone: 由 Project Secret 创建
|
|
5719
|
+
project-clone-tooltip: 是否由 Project Scoped Secret 在本命名空间创建
|
|
5720
|
+
project-scoped: Project Secret
|
|
5721
|
+
project-scoped-tooltip: 此 Project Scoped Secret 会在所属命名空间中生成匹配的 Secret
|
|
5593
5722
|
schedule: 调度
|
|
5594
5723
|
service: 服务
|
|
5595
5724
|
serviceAccounts: Service Account
|
|
@@ -5635,6 +5764,7 @@ tableHeaders:
|
|
|
5635
5764
|
volume: 卷
|
|
5636
5765
|
volumeMode: 卷模式
|
|
5637
5766
|
weight: 权重
|
|
5767
|
+
action: 操作
|
|
5638
5768
|
target:
|
|
5639
5769
|
router:
|
|
5640
5770
|
label: 路由
|
|
@@ -5928,7 +6058,9 @@ workload:
|
|
|
5928
6058
|
exec: 容器内运行的命令以 0 状态退出
|
|
5929
6059
|
image: 容器镜像
|
|
5930
6060
|
imagePullPolicy: 镜像拉取策略
|
|
5931
|
-
imagePullSecrets:
|
|
6061
|
+
imagePullSecrets:
|
|
6062
|
+
label: 镜像拉取密钥
|
|
6063
|
+
tooltip: 必须为 kubernetes.io/dockercfg 或 kubernetes.io/dockerconfigjson 类型
|
|
5932
6064
|
init: 初始化容器
|
|
5933
6065
|
lifecycleHook:
|
|
5934
6066
|
postStart:
|
|
@@ -5956,7 +6088,7 @@ workload:
|
|
|
5956
6088
|
label: 端口
|
|
5957
6089
|
placeholder: 例如:3000
|
|
5958
6090
|
scheme:
|
|
5959
|
-
label:
|
|
6091
|
+
label: 协议
|
|
5960
6092
|
placeholder: 例如:HTTP
|
|
5961
6093
|
httpHeaders:
|
|
5962
6094
|
title: HTTP 头部
|
|
@@ -6007,7 +6139,7 @@ workload:
|
|
|
6007
6139
|
hostPID: 使用主机 PID 资源组
|
|
6008
6140
|
podFsGroup: Pod 文件系统组
|
|
6009
6141
|
privileged:
|
|
6010
|
-
label:
|
|
6142
|
+
label: 特权模式
|
|
6011
6143
|
'false': 否
|
|
6012
6144
|
'true': "是:容器可以完全访问主机"
|
|
6013
6145
|
readOnlyRootFilesystem:
|
|
@@ -6154,7 +6286,7 @@ workload:
|
|
|
6154
6286
|
replicas: 副本数量
|
|
6155
6287
|
showTabs: '显示高级选项'
|
|
6156
6288
|
scheduling:
|
|
6157
|
-
activeDeadlineSeconds: 判定
|
|
6289
|
+
activeDeadlineSeconds: 判定Pod是否活跃的截止时间
|
|
6158
6290
|
activeDeadlineSecondsTip: 系统将 Pod 判定为失败,并终止其关联容器前的等待时长
|
|
6159
6291
|
affinity:
|
|
6160
6292
|
addNodeSelector: 添加节点选择器
|
|
@@ -6324,7 +6456,7 @@ workload:
|
|
|
6324
6456
|
pod: Pod 是你可以在 Kubernetes 中创建和管理的最小可部署计算单元。Pod 是一个或多个容器,具有共享的存储和网络资源以及运行容器的规范。
|
|
6325
6457
|
upgrading:
|
|
6326
6458
|
activeDeadlineSeconds:
|
|
6327
|
-
label: 判定
|
|
6459
|
+
label: 判定Pod是否活跃的截止时间
|
|
6328
6460
|
tip: 系统将 Pod 判定为失败,并终止其关联容器前的等待时长
|
|
6329
6461
|
concurrencyPolicy:
|
|
6330
6462
|
label: 并发
|
|
@@ -6429,6 +6561,7 @@ model:
|
|
|
6429
6561
|
label: Service Account 用户名
|
|
6430
6562
|
projectMember:
|
|
6431
6563
|
role:
|
|
6564
|
+
tenant: 租户
|
|
6432
6565
|
member: 成员
|
|
6433
6566
|
owner: 所有者
|
|
6434
6567
|
readonly: 只读用户
|
|
@@ -6475,7 +6608,7 @@ typeDescription:
|
|
|
6475
6608
|
kubevirt.io.virtualmachine: 云虚拟机是一种安全可靠、弹性可伸缩的云计算服务器,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。
|
|
6476
6609
|
harvesterhci.io.volume: 虚拟磁盘具有高性能和低时延的特点,支持随机读写,可以像使用物理硬盘一样,在虚拟机上进行格式化并建立文件系统来使用块存储。
|
|
6477
6610
|
harvesterhci.io.volumesnapshot: 虚拟磁盘快照功能通过捕获虚拟磁盘在特定时间点的状态,生成增量副本,支持快速回滚磁盘状态,为测试验证、容灾恢复提供高效解决方案
|
|
6478
|
-
harvesterhci.io.virtualmachinebackup:
|
|
6611
|
+
harvesterhci.io.virtualmachinebackup: 虚拟机备份恢复功能通过创建包含磁盘数据、配置信息的完整副本,支持跨环境恢复及长期数据保护,为系统故障或灾难提供可靠容灾方案。
|
|
6479
6612
|
harvesterhci.io.schedulevmbackup: 虚拟机备份策略功能通过创建定时任务,对虚拟机进行完整备份或增量快照,为用户提供自动化的数据备份和容灾方案。
|
|
6480
6613
|
harvesterhci.io.vmsnapshot: 虚拟机快照功能通过捕获特定时间点的系统状态,支持快速恢复虚拟机状态,为数据备份与系统调试提供灵活解决方案。
|
|
6481
6614
|
harvesterhci.io.keypair: SSH密钥对是一种安全便捷的登录认证方式,您可以实现免密码远程登录,并在无需人工干预的情况下进行安全的自动化操作,实现服务器配置和应用程序部署的自动化。
|
|
@@ -6499,7 +6632,41 @@ typeDescription:
|
|
|
6499
6632
|
kubeovn.io.subnet: 子网是虚拟私有云(VPC)中的一个逻辑分区,用于将网络划分为更小的、可管理的部分。每个子网都有自己的 IP 地址范围和网络配置,允许用户在 VPC 内创建隔离的网络环境,以满足不同应用或服务的需求。
|
|
6500
6633
|
kubeovn.io.providernetwork: 物理网络(Provider Network)是指在虚拟私有云(VPC)中,由云服务提供商管理的网络资源。它通常用于连接 VPC 内的虚拟机、容器和其他资源,并提供对外部网络的访问。提供者网络可以包括物理网络设备、虚拟交换机、路由器等,以实现高效、安全的网络通信。
|
|
6501
6634
|
kubeovn.io.vlan: VLAN(Virtual Local Area Network,虚拟局域网)是一种网络技术,用于在物理网络中创建逻辑隔离的子网络。VLAN 允许用户将不同的设备和服务分组到同一虚拟网络中,从而提高网络的安全性、灵活性和可管理性。每个 VLAN 都有一个唯一的标识符(VLAN ID),用于区分不同的虚拟网络。
|
|
6635
|
+
management.cattle.io.setting: 统一配置平台基础选项与全局设置,支持CA证书、密码规则、域名、Token时效等核心配置。
|
|
6636
|
+
management.cattle.io.user: 用于管理用户账号,支持创建、维护用户信息,可设置用户权限、管理密码等,保障系统资源仅由授权用户访问,提升系统安全性。
|
|
6637
|
+
harvesterhci.io.management.cluster: 提供虚拟化集群的实时健康状态监控、版本号管理及资源负载管理,支持批量导入/删除集群、配置调优与权限分级功能,实现高效运维管控。
|
|
6638
|
+
projectsnamespaces: 项目/资源组是用于在集群内实现资源隔离和多租户管理的基本单元。通过项目可以对一组命名空间及相关资源进行统一的权限、配额和策略管理。
|
|
6639
|
+
members: 集群和项目成员管理页面用于配置用户和用户组对资源的访问权限。通过角色绑定(RBAC)来控制成员在集群或项目范围内的操作权限,实现安全的协同管理。
|
|
6640
|
+
event: 事件记录了 Kubernetes 资源(如 Pod、节点等)的状态变化、错误信息和生命周期事件。通过查看事件可以快速诊断应用部署和运行中的问题。
|
|
6641
|
+
autoscaling.horizontalpodautoscaler: HorizontalPodAutoscaler (HPA) 用于根据观察到的 CPU 利用率或其他自定义指标自动调整工作负载的 Pod 副本数量,实现应用的水平自动扩缩容。
|
|
6642
|
+
networking.k8s.io.ingress: Ingress 用于管理对集群内服务的外部访问,提供 HTTP 和 HTTPS 路由规则。通过 Ingress 可以配置负载均衡、SSL 终止和基于名称的虚拟主机等能力。
|
|
6643
|
+
service: Service 用于将一组 Pod 暴露为网络服务,提供稳定的 IP 地址和 DNS 名称,并实现负载均衡。Service 确保您的应用程序在网络中可被发现和可靠访问。
|
|
6644
|
+
storage.k8s.io.storageclass: 存储池页面用于集中管理和配置集群中的持久化存储资源。您可以在此查看存储提供商、创建存储类(StorageClass)并为有状态应用动态提供持久卷(Persistent Volume)。
|
|
6645
|
+
persistentvolume: PersistentVolume (PV) 是集群中的一块持久化存储资源,由管理员预先配置或通过存储类动态供应。PV 为需要持久化数据的应用提供独立于 Pod 生命周期的存储空间。
|
|
6646
|
+
persistentvolumeclaim: 虚拟磁盘是提供给虚拟机使用的持久化存储设备,为虚拟机操作系统和应用数据提供独立的、可扩展的存储空间。虚拟磁盘的生命周期可以与虚拟机解耦,实现数据的持久化保存。
|
|
6647
|
+
configmap: ConfigMap 用于将非机密的配置数据以键值对形式保存,并注入到 Pod 中作为环境变量、命令行参数或配置文件使用。实现应用配置与容器镜像的分离,便于配置管理。
|
|
6648
|
+
secret: Secret 用于存储和管理敏感信息,如密码、OAuth 令牌和 SSH 密钥等。Secret 以加密方式保存数据,并可以安全地挂载到 Pod 中供容器使用,避免敏感信息硬编码。
|
|
6649
|
+
projectsecret: Secret 用于存储和管理敏感信息,如密码、OAuth 令牌和 SSH 密钥等。Secret 以加密方式保存数据,并可以安全地挂载到 Pod 中供容器使用,避免敏感信息硬编码。
|
|
6650
|
+
networking.k8s.io.networkpolicy: 网络策略用于控制 Pod 组之间的网络通信规则,实现 Kubernetes 集群内的网络隔离。通过定义入站和出站规则,可以精确控制 Pod 之间的网络访问权限。
|
|
6651
|
+
limitrange: 限制范围用于在命名空间内限制资源的使用量,包括 Pod 的计算资源(CPU、内存)请求和限制、存储卷大小以及可创建的资源对象数量,防止资源过度消耗。
|
|
6652
|
+
resourcequota: 资源配额用于限制命名空间可以使用的总体资源总量,包括计算资源、存储资源以及可创建的对象数量。它确保命名空间内的资源使用不会超过分配的配额限制。
|
|
6653
|
+
policy.poddisruptionbudget: Pod 中断预算用于限制自愿中断期间同时终止的 Pod 副本数量,确保应用的高可用性。它可以防止在节点维护或集群缩容时导致的应用服务中断。
|
|
6654
|
+
apps.daemonset: DaemonSet 在每个符合条件的节点上仅运行一个 Pod。当新节点添加到集群时,DaemonSet 会自动部署新节点。推荐用于全系统或可垂直扩展,且每个节点永远不需要超过一个 pod 的工作负载。
|
|
6655
|
+
apps.deployment: Deployment 运行分布在符合条件的节点中的可扩展数量的 Pod 副本。变更会逐步推出,并可回滚到之前的版本。推荐用于无状态和水平可扩展的工作负载。
|
|
6656
|
+
apps.statefulset: StatefulSet 管理有状态的应用,并保证创建的 Pod 的顺序和唯一性。推荐用于具有持久化存储或严格身份、法定人数或升级顺序要求的工作负载。
|
|
6657
|
+
batch.cronjob: CronJob 创建 Job,然后按照重复调度来运行 Pod。该调度以标准的 Unix cron 格式表示,并使用 Kubernetes Control Plane 的时区(通常是 UTC)。
|
|
6658
|
+
batch.job: Job 创建一个或多个 Pod。 Job 通过运行 Pod 直到其成功退出,以可靠执行一次性任务。失败的 Pod 会自动被替换,直到达到指定的完成运行次数。Job 还可以并行运行多个 Pod,或作为批处理工作队列。
|
|
6659
|
+
pod: Pod 是你可以在 Kubernetes 中创建和管理的最小可部署计算单元。Pod 是一个或多个容器,具有共享的存储和网络资源以及运行容器的规范。
|
|
6660
|
+
harvesterhci.io.logging.clusterflow: 用于配置集群范围内的日志采集与流转规则,可匹配多个资源组的日志,并将日志转发至指定的集群日志外发目标,实现全局级的日志统一管理与路由。
|
|
6661
|
+
harvesterhci.io.logging.clusteroutput: 定义集群范围的日志输出目标,例如 Elasticsearch、Loki、S3、Kafka 等。可被多个集群日志配置引用,用于集中存储与分析集群级日志数据。
|
|
6662
|
+
harvesterhci.io.logging.flow: 用于配置资源组(命名空间)内的日志采集与流转规则,仅作用于当前资源组内的日志,并将日志转发至对应的资源组日志外发目标,便于分组级的日志管理。
|
|
6663
|
+
harvesterhci.io.logging.output: 定义资源组级别的日志输出目标,仅能被同一资源组下的日志配置引用,用于将该资源组内的日志发送至指定的存储或分析系统。
|
|
6502
6664
|
typeLabel:
|
|
6665
|
+
management.cattle.io.project: |-
|
|
6666
|
+
{count, plural,
|
|
6667
|
+
one { 项目 }
|
|
6668
|
+
other { 项目 }
|
|
6669
|
+
}
|
|
6503
6670
|
management.cattle.io.token: |-
|
|
6504
6671
|
{count, plural,
|
|
6505
6672
|
one { API 密钥 }
|
|
@@ -6743,8 +6910,8 @@ typeLabel:
|
|
|
6743
6910
|
}
|
|
6744
6911
|
autoscaling.horizontalpodautoscaler: |-
|
|
6745
6912
|
{count, plural,
|
|
6746
|
-
one {
|
|
6747
|
-
other {
|
|
6913
|
+
one { HPA }
|
|
6914
|
+
other { HPA }
|
|
6748
6915
|
}
|
|
6749
6916
|
networking.k8s.io.ingress: |-
|
|
6750
6917
|
{count, plural,
|
|
@@ -6851,6 +7018,26 @@ typeLabel:
|
|
|
6851
7018
|
one { 工作负载 }
|
|
6852
7019
|
other { 工作负载 }
|
|
6853
7020
|
}
|
|
7021
|
+
cluster : |-
|
|
7022
|
+
{count, plural,
|
|
7023
|
+
one { 集群 }
|
|
7024
|
+
other { 集群 }
|
|
7025
|
+
}
|
|
7026
|
+
servicediscovery : |-
|
|
7027
|
+
{count, plural,
|
|
7028
|
+
one { 服务发现 }
|
|
7029
|
+
other { 服务发现 }
|
|
7030
|
+
}
|
|
7031
|
+
storage : |-
|
|
7032
|
+
{count, plural,
|
|
7033
|
+
one { 存储 }
|
|
7034
|
+
other { 存储 }
|
|
7035
|
+
}
|
|
7036
|
+
policy : |-
|
|
7037
|
+
{count, plural,
|
|
7038
|
+
one { 策略 }
|
|
7039
|
+
other { 策略 }
|
|
7040
|
+
}
|
|
6854
7041
|
harvesterhci.io.management.cluster: |-
|
|
6855
7042
|
{count, plural,
|
|
6856
7043
|
one { Cloud 集群 }
|
|
@@ -7846,3 +8033,89 @@ gitPicker:
|
|
|
7846
8033
|
networkAttachmentDefinition:
|
|
7847
8034
|
tabs:
|
|
7848
8035
|
config: 配置
|
|
8036
|
+
|
|
8037
|
+
|
|
8038
|
+
component:
|
|
8039
|
+
drawer:
|
|
8040
|
+
chrome:
|
|
8041
|
+
ariaLabel:
|
|
8042
|
+
close: 关闭抽屉
|
|
8043
|
+
close: 关闭
|
|
8044
|
+
resourceDetailDrawer:
|
|
8045
|
+
title: "{resourceName} ({resourceType}) - 配置"
|
|
8046
|
+
editConfig: 编辑配置
|
|
8047
|
+
editYaml: 编辑YAML
|
|
8048
|
+
ariaLabel:
|
|
8049
|
+
editConfig: 编辑配置
|
|
8050
|
+
editYaml: 编辑YAML
|
|
8051
|
+
yamlTab:
|
|
8052
|
+
title: YAML
|
|
8053
|
+
configTab:
|
|
8054
|
+
title: 配置
|
|
8055
|
+
resource:
|
|
8056
|
+
detail:
|
|
8057
|
+
card:
|
|
8058
|
+
resourceUsage:
|
|
8059
|
+
used: Used
|
|
8060
|
+
amount: '{used} of {available}'
|
|
8061
|
+
cpu: CPU
|
|
8062
|
+
memory: Memory
|
|
8063
|
+
pods: Pods
|
|
8064
|
+
resourcesCard:
|
|
8065
|
+
title: 资源
|
|
8066
|
+
rows:
|
|
8067
|
+
services: 服务
|
|
8068
|
+
ingresses: Ingresses
|
|
8069
|
+
referredToBy: 参考
|
|
8070
|
+
refersTo: 引用
|
|
8071
|
+
podsCard:
|
|
8072
|
+
title: Pods
|
|
8073
|
+
ariaResourceName: pods
|
|
8074
|
+
insightsCard:
|
|
8075
|
+
title: Insights
|
|
8076
|
+
rows:
|
|
8077
|
+
conditions: Conditions
|
|
8078
|
+
events: Events
|
|
8079
|
+
scaler:
|
|
8080
|
+
ariaLabel:
|
|
8081
|
+
increase: Increase {resourceName}
|
|
8082
|
+
decrease: Decrease {resourceName}
|
|
8083
|
+
titleBar:
|
|
8084
|
+
showConfiguration: 显示配置
|
|
8085
|
+
ariaLabel:
|
|
8086
|
+
actionMenu: 更多操作
|
|
8087
|
+
showConfiguration: 显示{resource}的整个配置
|
|
8088
|
+
metadata:
|
|
8089
|
+
labelsAndAnnotations: 标签和注释
|
|
8090
|
+
identifyingInformation:
|
|
8091
|
+
createdBy: 创建
|
|
8092
|
+
namespace: 命名空间
|
|
8093
|
+
project: 项目
|
|
8094
|
+
age: 使用时长
|
|
8095
|
+
image: 图片
|
|
8096
|
+
ready: 准备
|
|
8097
|
+
up-to-date: Up-to-date
|
|
8098
|
+
available: 可用
|
|
8099
|
+
serviceAccount: 服务帐户
|
|
8100
|
+
type: 类型
|
|
8101
|
+
certificate: 证书
|
|
8102
|
+
issuer: Issuer
|
|
8103
|
+
expires: 到期
|
|
8104
|
+
workspace: 工作区
|
|
8105
|
+
annotations:
|
|
8106
|
+
title: 注释
|
|
8107
|
+
labels:
|
|
8108
|
+
title: 标签
|
|
8109
|
+
keyValue:
|
|
8110
|
+
noRows: 此资源上没有配置{propertyName}.
|
|
8111
|
+
showConfiguration: 显示配置
|
|
8112
|
+
|
|
8113
|
+
|
|
8114
|
+
|
|
8115
|
+
customConversion:
|
|
8116
|
+
Tenant: 租户
|
|
8117
|
+
Cluster Owner: 所有者
|
|
8118
|
+
Project Owner: 项目负责人
|
|
8119
|
+
|
|
8120
|
+
|
|
8121
|
+
|
|
@@ -11,7 +11,8 @@ describe('rancher-backup: S3', () => {
|
|
|
11
11
|
'i18n/t': (text: string) => text,
|
|
12
12
|
t: (text: string) => text,
|
|
13
13
|
'cluster/all': () => [],
|
|
14
|
-
'cluster/paginationEnabled': () => false
|
|
14
|
+
'cluster/paginationEnabled': () => false,
|
|
15
|
+
currentStore: () => 'cluster'
|
|
15
16
|
}
|
|
16
17
|
};
|
|
17
18
|
const wrapper = mount(S3, {
|
|
@@ -55,7 +55,7 @@ export default {
|
|
|
55
55
|
async fetch() {
|
|
56
56
|
const { $store } = this;
|
|
57
57
|
|
|
58
|
-
// Fetch all the resources required for all the tabs
|
|
58
|
+
// Fetch all the resources required for all the tabs asynchronously up front
|
|
59
59
|
const hashPromises = {
|
|
60
60
|
namespaces: $store.getters['namespaces'](),
|
|
61
61
|
pvcs: $store.dispatch('cluster/findAll', { type: PVC }),
|
package/cloud-credential/gcp.vue
CHANGED
|
@@ -75,8 +75,16 @@ export default {
|
|
|
75
75
|
@selected="onFileSelected"
|
|
76
76
|
/>
|
|
77
77
|
<p
|
|
78
|
-
v-clean-html="t('cluster.credential.gcp.authEncodedJson.help', {}, true)"
|
|
78
|
+
v-clean-html="t('cluster.credential.gcp.authEncodedJson.help.shared', {}, true)"
|
|
79
79
|
class="text-muted"
|
|
80
80
|
/>
|
|
81
|
+
<p
|
|
82
|
+
v-clean-html="t('cluster.credential.gcp.authEncodedJson.help.gke', {}, true)"
|
|
83
|
+
class="text-muted mt-20"
|
|
84
|
+
/>
|
|
85
|
+
<p
|
|
86
|
+
v-clean-html="t('cluster.credential.gcp.authEncodedJson.help.gce', {}, true)"
|
|
87
|
+
class="text-muted mt-20"
|
|
88
|
+
/>
|
|
81
89
|
</div>
|
|
82
90
|
</template>
|