@rancher/shell 3.0.7 → 3.0.8-rc.1
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/images/vendor/githubapp.svg +13 -0
- package/assets/styles/base/_typography.scss +1 -1
- package/assets/styles/themes/_modern.scss +5 -5
- package/assets/translations/en-us.yaml +91 -11
- package/assets/translations/zh-hans.yaml +0 -4
- package/components/Inactivity.vue +222 -106
- package/components/InstallHelmCharts.vue +2 -2
- package/components/ResourceDetail/index.vue +1 -1
- package/components/SortableTable/index.vue +17 -2
- package/components/fleet/FleetConfigMapSelector.vue +117 -0
- package/components/fleet/FleetSecretSelector.vue +127 -0
- package/components/fleet/__tests__/FleetConfigMapSelector.test.ts +125 -0
- package/components/fleet/__tests__/FleetSecretSelector.test.ts +82 -0
- package/components/form/FileImageSelector.vue +13 -4
- package/components/form/FileSelector.vue +11 -2
- package/components/form/ResourceLabeledSelect.vue +1 -0
- package/components/form/__tests__/ResourceLabeledSelect.test.ts +90 -0
- package/components/nav/Header.vue +1 -0
- package/config/product/auth.js +1 -0
- package/config/query-params.js +1 -0
- package/config/settings.ts +8 -1
- package/config/types.js +2 -0
- package/dialog/AddonConfigConfirmationDialog.vue +45 -1
- package/edit/__tests__/fleet.cattle.io.helmop.test.ts +52 -11
- package/edit/auth/AuthProviderWarningBanners.vue +14 -1
- package/edit/auth/github-app-steps.vue +97 -0
- package/edit/auth/github-steps.vue +75 -0
- package/edit/auth/github.vue +94 -65
- package/edit/fleet.cattle.io.helmop.vue +51 -2
- package/edit/networking.k8s.io.networkpolicy/PolicyRuleTarget.vue +15 -5
- package/edit/provisioning.cattle.io.cluster/__tests__/rke2.test.ts +11 -9
- package/edit/provisioning.cattle.io.cluster/rke2.vue +56 -9
- package/edit/provisioning.cattle.io.cluster/tabs/AddOnConfig.vue +28 -2
- package/list/projectsecret.vue +1 -1
- package/machine-config/azure.vue +1 -1
- package/mixins/chart.js +1 -1
- package/models/__tests__/chart.test.ts +17 -9
- package/models/__tests__/compliance.cattle.io.clusterscanprofile.spec.js +30 -0
- package/models/catalog.cattle.io.app.js +1 -1
- package/models/chart.js +3 -1
- package/models/compliance.cattle.io.clusterscanprofile.js +1 -1
- package/models/management.cattle.io.authconfig.js +1 -0
- package/package.json +2 -2
- package/pages/auth/login.vue +5 -2
- package/pages/auth/verify.vue +1 -1
- package/pages/c/_cluster/apps/charts/AppChartCardSubHeader.vue +3 -2
- package/pages/c/_cluster/apps/charts/chart.vue +2 -2
- package/pages/c/_cluster/explorer/EventsTable.vue +89 -3
- package/pages/c/_cluster/explorer/tools/index.vue +3 -3
- package/pages/c/_cluster/settings/performance.vue +12 -25
- package/pages/home.vue +313 -12
- package/plugins/axios.js +2 -1
- package/plugins/dashboard-store/actions.js +1 -1
- package/plugins/dashboard-store/resource-class.js +17 -2
- package/plugins/steve/steve-pagination-utils.ts +2 -2
- package/scripts/extension/publish +1 -1
- package/store/auth.js +8 -3
- package/store/aws.js +8 -6
- package/store/features.js +1 -0
- package/store/index.js +9 -3
- package/store/prefs.js +6 -0
- package/types/kube/kube-api.ts +2 -1
- package/types/rancher/index.d.ts +1 -0
- package/types/resources/settings.d.ts +29 -7
- package/types/shell/index.d.ts +59 -0
- package/utils/__tests__/cluster.test.ts +379 -1
- package/utils/cluster.js +157 -3
- package/utils/dynamic-content/__tests__/config.test.ts +187 -0
- package/utils/dynamic-content/__tests__/index.test.ts +390 -0
- package/utils/dynamic-content/__tests__/info.test.ts +263 -0
- package/utils/dynamic-content/__tests__/new-release.test.ts +216 -0
- package/utils/dynamic-content/__tests__/support-notice.test.ts +262 -0
- package/utils/dynamic-content/__tests__/util.test.ts +235 -0
- package/utils/dynamic-content/config.ts +55 -0
- package/utils/dynamic-content/index.ts +273 -0
- package/utils/dynamic-content/info.ts +219 -0
- package/utils/dynamic-content/new-release.ts +126 -0
- package/utils/dynamic-content/support-notice.ts +169 -0
- package/utils/dynamic-content/types.d.ts +101 -0
- package/utils/dynamic-content/util.ts +122 -0
- package/utils/inactivity.ts +104 -0
- package/utils/pagination-utils.ts +19 -4
- package/utils/release-notes.ts +1 -1
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
+
<!-- Generator: Adobe Illustrator 24.3.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
3
|
+
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
|
4
|
+
viewBox="0 0 60 60" style="enable-background:new 0 0 60 60;" xml:space="preserve">
|
|
5
|
+
<style type="text/css">
|
|
6
|
+
.st0{fill:#181616;}
|
|
7
|
+
</style>
|
|
8
|
+
<path class="st0" d="M30,5C15.9,4.9,4.4,16.4,4.3,30.5c0,11.1,7.1,21,17.6,24.4c0.7,0.3,1.4-0.1,1.7-0.7c0.1-0.2,0.1-0.3,0.1-0.5
|
|
9
|
+
v-4.4c-7.1,1.6-8.6-3.4-8.6-3.4c-1.2-3-2.8-3.7-2.8-3.7c-2.4-1.6,0.2-1.6,0.2-1.6c1.6,0.2,3.1,1.2,3.9,2.6c2.3,3.9,6,2.8,7.4,2.1
|
|
10
|
+
c0.1-1.3,0.7-2.5,1.6-3.4c-5.7-0.6-11.7-2.8-11.7-12.6c0-2.5,0.9-5,2.6-6.9c-0.8-2.2-0.7-4.6,0.2-6.8c0,0,2.1-0.7,7.1,2.6
|
|
11
|
+
c4.2-1.1,8.6-1.1,12.8,0c4.9-3.3,7-2.6,7-2.6c0.9,2.1,1,4.6,0.2,6.8c1.7,1.9,2.7,4.3,2.6,6.9c0,9.8-6,12-11.7,12.6
|
|
12
|
+
c1.2,1.2,1.9,3,1.7,4.7v7c0,0.7,0.5,1.3,1.2,1.3c0.2,0,0.3,0,0.5-0.1c13.4-4.5,20.6-19,16.1-32.4C50.8,12,41,5,30,5z"/>
|
|
13
|
+
</svg>
|
|
@@ -728,8 +728,8 @@ BODY, .theme-light {
|
|
|
728
728
|
--error-badge : #{$error};
|
|
729
729
|
--on-error-banner : #FFFFFF;
|
|
730
730
|
|
|
731
|
-
--error-banner-text: #{$
|
|
732
|
-
--warning-banner-text:
|
|
731
|
+
--error-banner-text: #{$grey-100};
|
|
732
|
+
--warning-banner-text: #{$grey-100};
|
|
733
733
|
}
|
|
734
734
|
|
|
735
735
|
BODY, .theme-dark {
|
|
@@ -1058,7 +1058,7 @@ BODY, .theme-dark {
|
|
|
1058
1058
|
--rc-disabled-text-color: #{$gray004};
|
|
1059
1059
|
|
|
1060
1060
|
--error-text : #FFAC99;
|
|
1061
|
-
--warning-text : #{$warning};
|
|
1061
|
+
--warning-text : #{contrast-color($warning)};
|
|
1062
1062
|
|
|
1063
1063
|
--success-badge : #{rgba($success, 10%)};
|
|
1064
1064
|
--on-success-banner : #00B752;
|
|
@@ -1074,7 +1074,7 @@ BODY, .theme-dark {
|
|
|
1074
1074
|
|
|
1075
1075
|
--error-banner-bg: #301D1D;
|
|
1076
1076
|
|
|
1077
|
-
--warning-banner-text :
|
|
1078
|
-
--error-banner-text :
|
|
1077
|
+
--warning-banner-text : #{$grey-0};
|
|
1078
|
+
--error-banner-text : #{$grey-0};
|
|
1079
1079
|
}
|
|
1080
1080
|
|
|
@@ -472,7 +472,7 @@ addClusterMemberDialog:
|
|
|
472
472
|
|
|
473
473
|
addonConfigConfirmation:
|
|
474
474
|
title: Add-On Reset
|
|
475
|
-
body:
|
|
475
|
+
body: Add-On Configuration has changed between Kubernetes versions <b>{previousKubeVersion}</b> and <b>{newKubeVersion}</b> and conflict with your previous values for Add-On {addons}. As a result please re-apply them before continuing.
|
|
476
476
|
|
|
477
477
|
addProjectMemberDialog:
|
|
478
478
|
title: Add Project Member
|
|
@@ -492,6 +492,51 @@ authConfig:
|
|
|
492
492
|
allowedPrincipalIds:
|
|
493
493
|
title: Authorized Users & Groups
|
|
494
494
|
associatedWarning: 'The {provider} account that is used to enable the external provider will be granted admin permissions. If you use a test account or non-admin account, that account will still be granted admin-level permissions. See <a href="{docsBase}/how-to-guides/new-user-guides/authentication-permissions-and-global-configuration/authentication-config#external-authentication-configuration-and-principal-users" target="_blank" rel="noopener noreferrer nofollow">External Authentication Configuration and Principal Users</a> to understand why.'
|
|
495
|
+
githubapp:
|
|
496
|
+
clientId:
|
|
497
|
+
label: Client ID
|
|
498
|
+
clientSecret:
|
|
499
|
+
label: Client Secret
|
|
500
|
+
githubAppId:
|
|
501
|
+
label: Github App ID
|
|
502
|
+
installationId:
|
|
503
|
+
label: Installation ID
|
|
504
|
+
privateKey:
|
|
505
|
+
label: Private Key
|
|
506
|
+
warning: The GitHub App authentication provider only works with <a href="https://docs.github.com/en/get-started/learning-about-github/types-of-github-accounts" target="_blank" rel="noopener noreferrer nofollow">GitHub Organization accounts</a>. It does not support User accounts.
|
|
507
|
+
form:
|
|
508
|
+
prefix:
|
|
509
|
+
1: <li>Open your <a href="{baseUrl}/settings/organizations" target="_blank" rel="noopener noreferrer nofollow">GitHub organization settings</a> in a new window</li>
|
|
510
|
+
2: <li>To the right of the organization, click "Settings"</li>
|
|
511
|
+
3: <li>In the left sidebar, click "Developer settings" -> "GitHub Apps"</li>
|
|
512
|
+
4: <li>Click "New Github App"</li>
|
|
513
|
+
instruction: 'Fill in the form with these values:'
|
|
514
|
+
app:
|
|
515
|
+
label: GitHub App name
|
|
516
|
+
value: 'Anything you like, e.g. My {vendor}'
|
|
517
|
+
callback:
|
|
518
|
+
label: Callback URL
|
|
519
|
+
value: '{serverUrl}/verify-auth'
|
|
520
|
+
description:
|
|
521
|
+
label: Application description
|
|
522
|
+
value: 'Optional, can be left blank'
|
|
523
|
+
homepage:
|
|
524
|
+
label: Homepage URL
|
|
525
|
+
create: Click "Create Github App"
|
|
526
|
+
suffix:
|
|
527
|
+
1: <li>Under Client Secrets, click "Generate a new client secret"</li>
|
|
528
|
+
2: <li>Under Private Keys, click "Generate a private key"</li>
|
|
529
|
+
3: <li>Copy and paste the "App ID", "Client ID", "Client Secret", and "Private Key" of your newly created OAuth app into the fields below</li>
|
|
530
|
+
host:
|
|
531
|
+
label: GitHub Enterprise Host
|
|
532
|
+
placeholder: e.g. github.mycompany.example
|
|
533
|
+
target:
|
|
534
|
+
label: Which version of GitHub do you want to use?
|
|
535
|
+
private: A private installation of GitHub Enterprise
|
|
536
|
+
public: Public GitHub.com
|
|
537
|
+
table:
|
|
538
|
+
server: Server
|
|
539
|
+
clientId: Client ID
|
|
495
540
|
github:
|
|
496
541
|
clientId:
|
|
497
542
|
label: Client ID
|
|
@@ -1796,7 +1841,7 @@ cluster:
|
|
|
1796
1841
|
} / {memory, number} GiB Memory / {storageSize, plural,
|
|
1797
1842
|
=0 {EBS-Only}
|
|
1798
1843
|
other {{storageSize, number} {storageUnit} {storageType}}
|
|
1799
|
-
}
|
|
1844
|
+
} - {architecture}
|
|
1800
1845
|
azure:
|
|
1801
1846
|
acceleratedNetworking:
|
|
1802
1847
|
label: Accelerated Networking
|
|
@@ -2116,7 +2161,7 @@ cluster:
|
|
|
2116
2161
|
diskSizeWithMax: Disk size has to be between {diskSizeMin} and {diskSizeMax} based on this image and disk type.
|
|
2117
2162
|
projects: Image projects should be a comma separated list of alphanumeric string which may contain '-' and '.'
|
|
2118
2163
|
addOns:
|
|
2119
|
-
dependencyBanner: Add-On Configuration
|
|
2164
|
+
dependencyBanner: Add-On Configuration has changed between Kubernetes versions <b>{previousKubeVersion}</b> and <b>{newKubeVersion}</b> and conflict with your previous values. Please re-apply them.
|
|
2120
2165
|
additionalManifest:
|
|
2121
2166
|
title: Additional Manifest
|
|
2122
2167
|
tooltip: 'Additional Kubernetes Manifest YAML to be applied to the cluster on startup.'
|
|
@@ -2718,6 +2763,28 @@ drainNode:
|
|
|
2718
2763
|
placeholder: e.g. 60
|
|
2719
2764
|
custom: "Give up after:"
|
|
2720
2765
|
|
|
2766
|
+
dynamicContent:
|
|
2767
|
+
newRelease:
|
|
2768
|
+
title: A new Rancher release is available!
|
|
2769
|
+
message: Rancher {version} has been released!
|
|
2770
|
+
moreInfo: Release Notes
|
|
2771
|
+
multipleNewReleases:
|
|
2772
|
+
title: New Rancher releases are available!
|
|
2773
|
+
message: A new {version1} patch version has been released and a newer {version2} version is also avaialble.
|
|
2774
|
+
moreInfo: "{version} Release Notes"
|
|
2775
|
+
upcomingEom:
|
|
2776
|
+
title: End of Maintainence in {days, plural, =1 {1 day} other {{days} days}}
|
|
2777
|
+
message: This version of Rancher ({version}) will reach End of Maintainence in {days} day(s). Consider upgrading to a supported version soon.
|
|
2778
|
+
eom:
|
|
2779
|
+
title: End of Maintainence reached
|
|
2780
|
+
message: This version of Rancher ({version}) has reached End of Maintainence. Consider upgrading to a supported version.
|
|
2781
|
+
upcomingEol:
|
|
2782
|
+
title: End of Life in {days, plural, =1 {1 day} other {{days} days}}
|
|
2783
|
+
message: This version of Rancher ({version}) will reach End of Life in {days} day(s). Consider upgrading to a supported version soon.
|
|
2784
|
+
eol:
|
|
2785
|
+
title: End of Life reached
|
|
2786
|
+
message: This version of Rancher ({version}) has reached End of Life. Consider upgrading to a supported version.
|
|
2787
|
+
|
|
2721
2788
|
etcdInfoBanner:
|
|
2722
2789
|
hasLeader: "Etcd has a leader:"
|
|
2723
2790
|
leaderChanges: "Number of leader changes:"
|
|
@@ -3201,7 +3268,7 @@ fleet:
|
|
|
3201
3268
|
none: None
|
|
3202
3269
|
local: Local
|
|
3203
3270
|
resources:
|
|
3204
|
-
label: '
|
|
3271
|
+
label: 'Resources'
|
|
3205
3272
|
keepResources: Always keep resources
|
|
3206
3273
|
keepResourcesTooltip: When enabled, resources will be kept when deleting a HelmOp or Bundle - only Helm release secrets will be deleted.
|
|
3207
3274
|
correctDrift: Enable self-healing
|
|
@@ -3255,6 +3322,10 @@ fleet:
|
|
|
3255
3322
|
=0 { Adding namespaces here will create a GitRepoRestriction. }
|
|
3256
3323
|
other { Only the Git Repo Restriction's <code>allowedTargetNamespaces</code> is managed here. You can make additional changes to the Git Repo Restriction}
|
|
3257
3324
|
}"
|
|
3325
|
+
configMaps:
|
|
3326
|
+
label: Config Maps
|
|
3327
|
+
secrets:
|
|
3328
|
+
label: Secrets
|
|
3258
3329
|
footer:
|
|
3259
3330
|
docs: Docs
|
|
3260
3331
|
download: Download CLI
|
|
@@ -3329,6 +3400,9 @@ glance:
|
|
|
3329
3400
|
clusterInfo: Cluster Information
|
|
3330
3401
|
eventsTable: Full events list
|
|
3331
3402
|
secretsTable: Full secrets list
|
|
3403
|
+
changeEventsListRowCount: Update events table row count
|
|
3404
|
+
showXEvents: Show {count} events
|
|
3405
|
+
useUserPreference: "Use table preference ({count})"
|
|
3332
3406
|
|
|
3333
3407
|
clusterBadge:
|
|
3334
3408
|
badgeAppearance: Cluster Badge Appearance
|
|
@@ -3776,6 +3850,11 @@ landing:
|
|
|
3776
3850
|
homepage: Homepage
|
|
3777
3851
|
clusters:
|
|
3778
3852
|
title: Clusters
|
|
3853
|
+
tooMany:
|
|
3854
|
+
showAll: Show all clusters (may increase load time)
|
|
3855
|
+
showSome: Show some clusters (may improve load time)
|
|
3856
|
+
showingAll: Showing {total} clusters.
|
|
3857
|
+
showingSome: Showing {rows} of {total} recently created clusters.
|
|
3779
3858
|
provider: Provider
|
|
3780
3859
|
distro: Distro
|
|
3781
3860
|
kubernetesVersion: Kubernetes Version
|
|
@@ -4102,6 +4181,7 @@ login:
|
|
|
4102
4181
|
welcome: Welcome to {vendor}
|
|
4103
4182
|
landscapeAlt: Landscape image
|
|
4104
4183
|
loggedOut: You have been logged out.
|
|
4184
|
+
loggedOutSessionIdle: You've been logged out of Rancher because your session has expired. Log in again to continue.
|
|
4105
4185
|
loggedOutFromSso: You've been logged out of Rancher, however you may still be logged in to your single sign-on identity provider.
|
|
4106
4186
|
loggedOutFromSlo: You've been logged out of Rancher and from your single sign-on identity provider.
|
|
4107
4187
|
loginAgain: Log in again to continue.
|
|
@@ -5114,13 +5194,9 @@ podDisruptionBudget:
|
|
|
5114
5194
|
|
|
5115
5195
|
inactivity:
|
|
5116
5196
|
title: Session expiring
|
|
5117
|
-
titleExpired: Session expired
|
|
5118
5197
|
banner: Your session is about to expire due to inactivity. Any unsaved changes will be lost.
|
|
5119
|
-
|
|
5120
|
-
content: Click “Resume Session” to keep the session in this tab active or refresh the browser after the session has expired.
|
|
5121
|
-
contentExpired: To return to this page click “Refresh” below or refresh the browser.
|
|
5198
|
+
content: Click “Resume Session” to keep the session in this browser active.
|
|
5122
5199
|
cta: Resume Session
|
|
5123
|
-
ctaExpired: Refresh
|
|
5124
5200
|
|
|
5125
5201
|
# Rancher Extensions
|
|
5126
5202
|
plugins:
|
|
@@ -7595,6 +7671,7 @@ model:
|
|
|
7595
7671
|
activedirectory: ActiveDirectory
|
|
7596
7672
|
azuread: AzureAD
|
|
7597
7673
|
github: GitHub
|
|
7674
|
+
githubapp: GitHub App
|
|
7598
7675
|
keycloak: Keycloak
|
|
7599
7676
|
ldap: LDAP
|
|
7600
7677
|
openldap: OpenLDAP
|
|
@@ -8430,8 +8507,9 @@ advancedSettings:
|
|
|
8430
8507
|
'auth-user-info-max-age-seconds': 'The maximum age of a users auth tokens before an auth provider group membership sync will be performed.'
|
|
8431
8508
|
'auth-user-info-resync-cron': 'Default cron schedule for resyncing auth provider group memberships.'
|
|
8432
8509
|
'cluster-template-enforcement': 'Non-admins will be restricted to launching clusters via preapproved RKE Templates only.'
|
|
8433
|
-
'auth-user-session-ttl-minutes': 'Custom TTL (in minutes) on a user auth session.'
|
|
8434
|
-
'auth-
|
|
8510
|
+
'auth-user-session-idle-ttl-minutes': 'Custom idle TTL (in minutes) on a user auth session. This is the maximum duration a session can stay alive when there is no user activity in a browser. This should be smaller than "auth-user-session-ttl-minutes". If "auth-user-session-idle-ttl-minutes" is greater than or equal to "auth-user-session-ttl-minutes" then the session idle feature is considered disabled.'
|
|
8511
|
+
'auth-user-session-ttl-minutes': 'Custom TTL (in minutes) on a user auth session. This is the maximum duration a session can stay alive regardless of user activity in a browser. This should be larger than "auth-user-session-idle-ttl-minutes".'
|
|
8512
|
+
'auth-token-max-ttl-minutes': 'Max TTL (in minutes) for all tokens except those controlled by "auth-user-session-ttl-minutes" (user session tokens). When set to 0, the token never expires.'
|
|
8435
8513
|
'kubeconfig-generate-token': 'Automatically generate tokens for users when a kubeconfig is requested.'
|
|
8436
8514
|
'kubeconfig-default-token-ttl-minutes': 'TTL (in minutes) applied on all kubeconfig tokens. When set to 0, the token never expires.'
|
|
8437
8515
|
'rke-metadata-config': 'Configure RKE metadata refresh parameters.'
|
|
@@ -8489,6 +8567,7 @@ featureFlags:
|
|
|
8489
8567
|
performance:
|
|
8490
8568
|
label: UI Performance Settings
|
|
8491
8569
|
settingName: Performance
|
|
8570
|
+
deprecatedInactivitySetting: The <i class="mr-5">"Inactivity"</i> setting is now deprecated in favor of the <i class="mr-5">auth-user-session-idle-ttl-minutes</i> <a href="{settingsPageUrl}">Setting</a>.
|
|
8492
8571
|
deprecatedForSSP: The <i class="mr-5">"{setting}"</i> setting is now deprecated and will be removed in a future release.
|
|
8493
8572
|
incrementalLoad:
|
|
8494
8573
|
label: Incremental Loading
|
|
@@ -9068,3 +9147,4 @@ component:
|
|
|
9068
9147
|
weekdaysAt0830: "At 30 minutes past the hour, every 1 hours, starting at 08:00 AM, Monday through Friday"
|
|
9069
9148
|
marchToMayHourly: "Every hour, only in March, April, and May"
|
|
9070
9149
|
every4Hours9to17: "At 0 minutes past the hour, every 4 hours, between 09:00 AM and 05:00 PM"
|
|
9150
|
+
|
|
@@ -4000,13 +4000,9 @@ podDisruptionBudget:
|
|
|
4000
4000
|
|
|
4001
4001
|
inactivity:
|
|
4002
4002
|
title: 会话即将过期
|
|
4003
|
-
titleExpired: 会话已过期
|
|
4004
4003
|
banner: 由于不活动,你的会话即将过期。任何未保存的更改都将丢失。
|
|
4005
|
-
bannerExpired: 由于不活动,此选项卡中的会话已过期。
|
|
4006
4004
|
content: 单击“恢复会话”来让选项卡中的会话保持活动状态,或在会话过期后刷新浏览器。
|
|
4007
|
-
contentExpired: 要返回此页面,请单击下面的“刷新”或刷新浏览器。
|
|
4008
4005
|
cta: 恢复会话
|
|
4009
|
-
ctaExpired: 刷新
|
|
4010
4006
|
|
|
4011
4007
|
# Rancher Extensions
|
|
4012
4008
|
plugins:
|