@rancher/shell 0.4.0 → 0.5.0

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 (274) hide show
  1. package/assets/images/providers/ovhcloudmks.svg +122 -0
  2. package/assets/images/providers/ovhcloudpubliccloud.svg +122 -0
  3. package/assets/styles/global/_layout.scss +99 -0
  4. package/assets/translations/en-us.yaml +30 -5
  5. package/assets/translations/zh-hans.yaml +1 -1
  6. package/babel.config.js +7 -1
  7. package/chart/monitoring/alerting/index.vue +7 -21
  8. package/chart/monitoring/grafana/index.vue +55 -0
  9. package/chart/monitoring/index.vue +51 -17
  10. package/chart/monitoring/prometheus/index.vue +37 -43
  11. package/chart/rancher-backup/index.vue +2 -1
  12. package/cloud-credential/azure.vue +4 -17
  13. package/components/AsyncButton.vue +17 -5
  14. package/components/Certificates.vue +164 -0
  15. package/components/CodeMirror.vue +19 -21
  16. package/components/CruResource.vue +1 -0
  17. package/components/DraggableZone.vue +2 -2
  18. package/components/EtcdInfoBanner.vue +1 -1
  19. package/components/ExplorerProjectsNamespaces.vue +25 -1
  20. package/components/IconOrSvg.vue +1 -1
  21. package/components/LandingPagePreference.vue +1 -4
  22. package/components/PodSecurityAdmission.vue +2 -2
  23. package/components/Questions/index.vue +1 -1
  24. package/components/ResourceDetail/Masthead.vue +16 -3
  25. package/components/ResourceTable.vue +14 -2
  26. package/components/ResourceYaml.vue +5 -0
  27. package/components/SideNav.vue +1 -1
  28. package/components/SingleClusterInfo.vue +1 -4
  29. package/components/Tabbed/index.vue +12 -0
  30. package/components/fleet/FleetRepos.vue +62 -27
  31. package/components/fleet/FleetResources.vue +6 -1
  32. package/components/form/ArrayListSelect.vue +10 -0
  33. package/components/form/Error.vue +3 -3
  34. package/components/form/Footer.vue +2 -2
  35. package/components/form/GitPicker.vue +83 -38
  36. package/components/form/KeyValue.vue +4 -0
  37. package/components/form/LabeledSelect.vue +4 -0
  38. package/components/formatter/Checked.vue +11 -3
  39. package/components/formatter/FleetClusterSummaryGraph.vue +27 -0
  40. package/components/formatter/FleetSummaryGraph.vue +23 -11
  41. package/components/formatter/LiveDuration.vue +1 -1
  42. package/components/formatter/PercentageBar.vue +1 -1
  43. package/components/formatter/__tests__/Checked.test.ts +19 -0
  44. package/components/nav/Group.vue +2 -2
  45. package/components/nav/Header.vue +0 -1
  46. package/components/nav/TopLevelMenu.vue +36 -6
  47. package/components/nav/Type.vue +1 -3
  48. package/components/nav/WindowManager/ContainerLogs.vue +101 -3
  49. package/components/nav/WindowManager/ContainerShell.vue +6 -1
  50. package/components/nav/WindowManager/__tests__/ContainerLogs.test.ts +186 -0
  51. package/components/nav/WindowManager/index.vue +11 -10
  52. package/components/nav/__tests__/TopLevelMenu.test.ts +33 -0
  53. package/components/nav/__tests__/Type.test.ts +1 -1
  54. package/components/nuxt/nuxt-child.js +14 -78
  55. package/components/nuxt/nuxt.js +1 -1
  56. package/{layouts → components/templates}/blank.vue +1 -1
  57. package/{layouts → components/templates}/default.vue +8 -98
  58. package/{layouts → components/templates}/error.vue +10 -19
  59. package/{layouts → components/templates}/home.vue +4 -1
  60. package/{layouts → components/templates}/plain.vue +4 -1
  61. package/{layouts → components/templates}/standalone.vue +1 -1
  62. package/{layouts → components/templates}/unauthenticated.vue +1 -1
  63. package/composables/useCompactInput.test.ts +36 -0
  64. package/composables/useCompactInput.ts +20 -0
  65. package/composables/useLabeledFormElement.test.ts +135 -0
  66. package/composables/useLabeledFormElement.ts +138 -0
  67. package/config/harvester-manager-types.js +2 -0
  68. package/config/private-label.js +22 -0
  69. package/config/product/explorer.js +3 -0
  70. package/config/product/fleet.js +6 -1
  71. package/config/product/manager.js +8 -2
  72. package/config/query-params.js +1 -0
  73. package/config/router.js +385 -364
  74. package/config/settings.ts +1 -0
  75. package/config/store.js +1 -1
  76. package/config/system-namespaces.js +3 -0
  77. package/config/table-headers.js +47 -0
  78. package/core/plugin-routes.ts +56 -114
  79. package/core/plugin.ts +16 -10
  80. package/core/plugins-loader.js +7 -9
  81. package/core/plugins.js +0 -3
  82. package/creators/app/files/.gitlab-ci.yml +1 -1
  83. package/detail/fleet.cattle.io.cluster.vue +11 -1
  84. package/detail/provisioning.cattle.io.cluster.vue +4 -3
  85. package/dialog/ScaleMachineDownDialog.vue +34 -17
  86. package/edit/__tests__/service.test.ts +89 -0
  87. package/edit/auth/googleoauth.vue +1 -5
  88. package/edit/cloudcredential.vue +2 -0
  89. package/edit/configmap.vue +2 -1
  90. package/edit/management.cattle.io.podsecurityadmissionconfigurationtemplate.vue +2 -2
  91. package/edit/networking.k8s.io.networkpolicy/__tests__/PolicyRuleTarget.spec.ts +1 -1
  92. package/edit/provisioning.cattle.io.cluster/SelectCredential.vue +15 -7
  93. package/edit/provisioning.cattle.io.cluster/__tests__/Advanced.test.ts +112 -0
  94. package/edit/provisioning.cattle.io.cluster/__tests__/Basics.test.ts +473 -0
  95. package/edit/provisioning.cattle.io.cluster/__tests__/{CustomCommand.tests.ts → CustomCommand.test.ts} +4 -0
  96. package/edit/provisioning.cattle.io.cluster/__tests__/DrainOptions.test.ts +1 -1
  97. package/edit/provisioning.cattle.io.cluster/__tests__/index.test.ts +73 -0
  98. package/edit/provisioning.cattle.io.cluster/__tests__/rke2.test.ts +7 -1
  99. package/edit/provisioning.cattle.io.cluster/__tests__/utils/cluster.ts +386 -0
  100. package/edit/provisioning.cattle.io.cluster/import.vue +2 -2
  101. package/edit/provisioning.cattle.io.cluster/index.vue +92 -36
  102. package/edit/provisioning.cattle.io.cluster/rke2.vue +171 -583
  103. package/edit/provisioning.cattle.io.cluster/tabs/AddOnConfig.vue +137 -0
  104. package/edit/provisioning.cattle.io.cluster/tabs/Advanced.vue +157 -0
  105. package/edit/provisioning.cattle.io.cluster/{Basics.vue → tabs/Basics.vue} +94 -19
  106. package/edit/provisioning.cattle.io.cluster/{MachinePool.vue → tabs/MachinePool.vue} +1 -0
  107. package/edit/provisioning.cattle.io.cluster/tabs/etcd/index.vue +135 -0
  108. package/edit/provisioning.cattle.io.cluster/tabs/networking/index.vue +189 -0
  109. package/edit/provisioning.cattle.io.cluster/tabs/registries/index.vue +144 -0
  110. package/edit/provisioning.cattle.io.cluster/tabs/upgrade/index.vue +76 -0
  111. package/edit/service.vue +12 -0
  112. package/edit/workload/mixins/workload.js +1 -1
  113. package/initialize/App.js +25 -71
  114. package/initialize/client.js +21 -162
  115. package/initialize/index.js +27 -123
  116. package/list/management.cattle.io.feature.vue +1 -7
  117. package/list/node.vue +1 -0
  118. package/machine-config/__tests__/vmwarevsphere.test.ts +100 -21
  119. package/machine-config/vmwarevsphere.vue +73 -51
  120. package/middleware/authenticated.js +10 -17
  121. package/mixins/auth-config.js +2 -7
  122. package/mixins/brand.js +29 -41
  123. package/mixins/create-edit-view/index.js +2 -2
  124. package/mixins/labeled-form-element.ts +6 -1
  125. package/models/__tests__/management.cattle.io.node.ts +85 -0
  126. package/models/__tests__/management.cattle.io.nodepool.ts +83 -0
  127. package/models/__tests__/namespace.test.ts +49 -9
  128. package/models/__tests__/workload.test.ts +91 -0
  129. package/models/cluster/node.js +4 -4
  130. package/models/cluster.x-k8s.io.machinedeployment.js +14 -0
  131. package/models/fleet.cattle.io.cluster.js +4 -0
  132. package/models/fleet.cattle.io.gitrepo.js +56 -13
  133. package/models/management.cattle.io.kontainerdriver.js +1 -1
  134. package/models/management.cattle.io.node.js +18 -14
  135. package/models/management.cattle.io.nodepool.js +17 -0
  136. package/models/namespace.js +1 -1
  137. package/models/pod.js +20 -0
  138. package/models/provisioning.cattle.io.cluster.js +20 -3
  139. package/models/secret.js +117 -18
  140. package/models/workload.js +16 -0
  141. package/models/workload.service.js +18 -0
  142. package/package.json +10 -9
  143. package/pages/about.vue +0 -1
  144. package/pages/account/create-key.vue +0 -1
  145. package/pages/account/index.vue +0 -1
  146. package/pages/auth/login.vue +0 -1
  147. package/pages/auth/logout.vue +0 -2
  148. package/pages/auth/setup.vue +0 -4
  149. package/pages/auth/verify.vue +14 -8
  150. package/pages/c/_cluster/apps/charts/install.vue +4 -4
  151. package/pages/c/_cluster/apps/index.vue +0 -2
  152. package/pages/c/_cluster/auth/index.vue +0 -2
  153. package/pages/c/_cluster/ecm/index.vue +0 -2
  154. package/pages/c/_cluster/explorer/index.vue +28 -2
  155. package/pages/c/_cluster/fleet/index.vue +1 -1
  156. package/pages/c/_cluster/index.vue +0 -2
  157. package/pages/c/_cluster/settings/banners.vue +0 -2
  158. package/pages/c/_cluster/settings/brand.vue +0 -2
  159. package/pages/c/_cluster/settings/index.vue +0 -2
  160. package/pages/c/_cluster/settings/links.vue +0 -1
  161. package/pages/c/_cluster/settings/performance.vue +0 -1
  162. package/pages/c/_cluster/uiplugins/CatalogList/CatalogLoadDialog.vue +2 -1
  163. package/pages/c/_cluster/uiplugins/CatalogList/index.vue +10 -46
  164. package/pages/c/_cluster/uiplugins/index.vue +0 -2
  165. package/pages/diagnostic.vue +1 -2
  166. package/pages/fail-whale.vue +0 -1
  167. package/pages/prefs.vue +0 -1
  168. package/pages/support/index.vue +2 -8
  169. package/pkg/auto-import.js +1 -1
  170. package/plugins/axios.js +0 -36
  171. package/plugins/back-button.js +3 -5
  172. package/plugins/codemirror-loader.js +1 -1
  173. package/plugins/codemirror.js +41 -0
  174. package/plugins/dashboard-store/__tests__/{mutations.spec.ts → mutations.test.ts} +1 -1
  175. package/plugins/dashboard-store/__tests__/resource-class.test.ts +49 -0
  176. package/plugins/dashboard-store/__tests__/utils/store-mocks.ts +7 -0
  177. package/plugins/dashboard-store/actions.js +30 -4
  178. package/plugins/dashboard-store/classify.js +1 -18
  179. package/plugins/dashboard-store/getters.js +10 -5
  180. package/plugins/dashboard-store/index.js +0 -12
  181. package/plugins/dashboard-store/mutations.js +0 -4
  182. package/plugins/dashboard-store/resource-class.js +59 -18
  183. package/plugins/steve/__tests__/steve-class.spec.ts +59 -0
  184. package/plugins/steve/__tests__/utils/steve-mocks.ts +31 -0
  185. package/plugins/steve/getters.js +4 -1
  186. package/plugins/steve/norman-class.js +19 -0
  187. package/plugins/steve/steve-class.js +22 -0
  188. package/plugins/steve/subscribe.js +4 -10
  189. package/rancher-components/Accordion/Accordion.test.ts +45 -0
  190. package/rancher-components/Accordion/Accordion.vue +86 -0
  191. package/rancher-components/Accordion/index.ts +1 -0
  192. package/rancher-components/BadgeState/BadgeState.vue +3 -3
  193. package/rancher-components/Banner/Banner.vue +2 -2
  194. package/rancher-components/Card/Card.vue +3 -3
  195. package/rancher-components/Form/Checkbox/Checkbox.vue +3 -3
  196. package/rancher-components/Form/LabeledInput/LabeledInput.test.ts +18 -1
  197. package/rancher-components/Form/LabeledInput/LabeledInput.vue +65 -24
  198. package/rancher-components/Form/Radio/RadioButton.test.ts +7 -3
  199. package/rancher-components/Form/Radio/RadioButton.vue +13 -7
  200. package/rancher-components/Form/Radio/RadioGroup.test.ts +30 -0
  201. package/rancher-components/Form/Radio/RadioGroup.vue +8 -3
  202. package/rancher-components/Form/TextArea/TextAreaAutoGrow.vue +6 -4
  203. package/rancher-components/Form/ToggleSwitch/ToggleSwitch.vue +7 -4
  204. package/rancher-components/LabeledTooltip/LabeledTooltip.vue +9 -4
  205. package/rancher-components/StringList/StringList.test.ts +270 -0
  206. package/rancher-components/StringList/StringList.vue +65 -26
  207. package/rancher-components/components/Accordion/Accordion.test.ts +45 -0
  208. package/rancher-components/components/Accordion/Accordion.vue +86 -0
  209. package/rancher-components/components/Accordion/index.ts +1 -0
  210. package/rancher-components/components/BadgeState/BadgeState.vue +3 -3
  211. package/rancher-components/components/Banner/Banner.vue +2 -2
  212. package/rancher-components/components/Card/Card.vue +3 -3
  213. package/rancher-components/components/Form/Checkbox/Checkbox.vue +3 -3
  214. package/rancher-components/components/Form/LabeledInput/LabeledInput.test.ts +18 -1
  215. package/rancher-components/components/Form/LabeledInput/LabeledInput.vue +57 -24
  216. package/rancher-components/components/Form/Radio/RadioButton.vue +13 -7
  217. package/rancher-components/components/Form/Radio/RadioGroup.vue +4 -3
  218. package/rancher-components/components/Form/TextArea/TextAreaAutoGrow.vue +6 -4
  219. package/rancher-components/components/Form/ToggleSwitch/ToggleSwitch.vue +7 -4
  220. package/rancher-components/components/LabeledTooltip/LabeledTooltip.vue +9 -4
  221. package/rancher-components/components/StringList/StringList.vue +8 -8
  222. package/scripts/.gitlab/workflows/build-extension-catalog.gitlab-ci.yml +50 -0
  223. package/scripts/extension/parse-tag-name +2 -2
  224. package/scripts/publish-shell.sh +10 -0
  225. package/scripts/test-plugins-build.sh +85 -9
  226. package/server/har-file.js +183 -0
  227. package/store/catalog.js +1 -1
  228. package/store/features.js +1 -0
  229. package/store/i18n.js +11 -0
  230. package/store/index.js +10 -11
  231. package/store/prefs.js +33 -35
  232. package/store/type-map.js +8 -7
  233. package/tsconfig.json +35 -9
  234. package/tsconfig.paths.json +21 -0
  235. package/types/shell/index.d.ts +427 -234
  236. package/types/vue-shim.d.ts +42 -0
  237. package/utils/__tests__/create-yaml.test.ts +60 -0
  238. package/utils/axios.js +0 -19
  239. package/utils/azure.js +24 -0
  240. package/utils/create-yaml.js +17 -10
  241. package/utils/git.ts +1 -1
  242. package/utils/monitoring.js +1 -1
  243. package/utils/nuxt.js +18 -39
  244. package/utils/object.js +14 -0
  245. package/utils/router.scrollBehavior.js +12 -14
  246. package/utils/time.js +1 -1
  247. package/utils/url.ts +1 -1
  248. package/vue.config.js +23 -2
  249. package/.DS_Store +0 -0
  250. package/assets/images/providers/aks-black.svg +0 -28
  251. package/assets/images/providers/aks.svg +0 -31
  252. package/edit/provisioning.cattle.io.cluster/__tests__/Basics.tests.ts +0 -234
  253. package/initialize/layouts.ts +0 -26
  254. package/mixins/fetch.server.js +0 -73
  255. package/pages/c/index.vue +0 -9
  256. package/pages/rio/mesh.vue +0 -508
  257. package/plugins/transitions.js +0 -4
  258. package/scripts/.DS_Store +0 -0
  259. package/scripts/verdaccio.log +0 -205
  260. package/tsconfig.default.json +0 -46
  261. package/yarn-error.log +0 -200
  262. /package/components/form/__tests__/{NameNsDescription.ts → NameNsDescription.test.ts} +0 -0
  263. /package/edit/networking.k8s.io.networkpolicy/__tests__/utils/{selectors.ts → selectors.test.ts} +0 -0
  264. /package/edit/provisioning.cattle.io.cluster/{AgentConfiguration.vue → tabs/AgentConfiguration.vue} +0 -0
  265. /package/edit/provisioning.cattle.io.cluster/{MemberRoles.vue → tabs/MemberRoles.vue} +0 -0
  266. /package/edit/provisioning.cattle.io.cluster/{S3Config.vue → tabs/etcd/S3Config.vue} +0 -0
  267. /package/edit/provisioning.cattle.io.cluster/{ACE.vue → tabs/networking/ACE.vue} +0 -0
  268. /package/edit/provisioning.cattle.io.cluster/{RegistryConfigs.vue → tabs/registries/RegistryConfigs.vue} +0 -0
  269. /package/edit/provisioning.cattle.io.cluster/{RegistryMirrors.vue → tabs/registries/RegistryMirrors.vue} +0 -0
  270. /package/edit/provisioning.cattle.io.cluster/{DrainOptions.vue → tabs/upgrade/DrainOptions.vue} +0 -0
  271. /package/plugins/dashboard-store/__tests__/{actions.spec.ts → actions.test.ts} +0 -0
  272. /package/plugins/dashboard-store/__tests__/{getters.spec.ts → getters.test.ts} +0 -0
  273. /package/rancher-components/BadgeState/{BadgeState.spec.ts → BadgeState.test.ts} +0 -0
  274. /package/rancher-components/components/BadgeState/{BadgeState.spec.ts → BadgeState.test.ts} +0 -0
@@ -0,0 +1,122 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!-- Generator: Adobe Illustrator 24.2.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
3
+
4
+ <svg
5
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
6
+ xmlns:cc="http://creativecommons.org/ns#"
7
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
8
+ xmlns:svg="http://www.w3.org/2000/svg"
9
+ xmlns="http://www.w3.org/2000/svg"
10
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12
+ version="1.1"
13
+ id="Layer_1"
14
+ x="0px"
15
+ y="0px"
16
+ viewBox="0 0 348.92935 163.69999"
17
+ xml:space="preserve"
18
+ sodipodi:docname="OVHcloud_stacked_R_logo_fullcolor_RGB.svg"
19
+ width="348.92935"
20
+ height="163.7"
21
+ inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)"><metadata
22
+ id="metadata35"><rdf:RDF><cc:Work
23
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
24
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
25
+ id="defs33" /><sodipodi:namedview
26
+ pagecolor="#ffffff"
27
+ bordercolor="#666666"
28
+ borderopacity="1"
29
+ objecttolerance="10"
30
+ gridtolerance="10"
31
+ guidetolerance="10"
32
+ inkscape:pageopacity="0"
33
+ inkscape:pageshadow="2"
34
+ inkscape:window-width="2499"
35
+ inkscape:window-height="1376"
36
+ id="namedview31"
37
+ showgrid="false"
38
+ inkscape:zoom="2.1519241"
39
+ inkscape:cx="381.9839"
40
+ inkscape:cy="25.915451"
41
+ inkscape:window-x="1981"
42
+ inkscape:window-y="27"
43
+ inkscape:window-maximized="1"
44
+ inkscape:current-layer="Layer_1" />
45
+ <style
46
+ type="text/css"
47
+ id="style2">
48
+ .st0{fill-rule:evenodd;clip-rule:evenodd;fill:#000E9C;}
49
+ .st1{fill:#000E9C;}
50
+ </style>
51
+ <g
52
+ id="g24"
53
+ transform="translate(-49.4,-37.8)">
54
+ <path
55
+ class="st0"
56
+ d="m 272.4,42.2 c 12.8,23.1 10.4,51.6 -6.1,72.2 H 231.5 L 242.2,95.5 H 228 L 244.8,66 h 14.3 z m -68.7,72.2 H 168.2 C 151.5,93.8 149,65.1 162.1,42 l 23,40 25.4,-44.2 h 37.3 z"
57
+ id="path4"
58
+ inkscape:connector-curvature="0"
59
+ style="clip-rule:evenodd;fill:#000e9c;fill-rule:evenodd" />
60
+ <g
61
+ id="g22">
62
+ <path
63
+ class="st1"
64
+ d="m 49.4,171.3 c 0,-20.4 10.2,-30.2 26.9,-30.2 16.7,0 26.9,9.8 26.9,30.2 0,20.2 -10.2,30.1 -26.9,30.1 -16.7,0.1 -26.9,-9.9 -26.9,-30.1 z m 6.1,0 c 0,16.8 7.7,24.8 20.8,24.8 13.2,0 20.8,-8 20.8,-24.8 0,-16.9 -7.7,-24.9 -20.8,-24.9 -13.2,0 -20.8,8 -20.8,24.9 z"
65
+ id="path6"
66
+ inkscape:connector-curvature="0"
67
+ style="fill:#000e9c" />
68
+ <path
69
+ class="st1"
70
+ d="m 147.1,143.5 c 0.3,-0.7 1.1,-1.9 2.8,-1.9 1.6,0 2.9,1.3 2.9,2.9 0,0.5 -0.2,1 -0.3,1.3 L 132.4,199 c -0.4,1.2 -1.6,2 -2.8,2 -1.1,0 -2.3,-0.8 -2.8,-2 l -20.2,-53.1 c -0.1,-0.3 -0.3,-0.8 -0.3,-1.3 0,-1.6 1.3,-2.9 2.9,-2.9 1.6,0 2.5,1.2 2.8,1.9 l 17.5,46.3 z"
71
+ id="path8"
72
+ inkscape:connector-curvature="0"
73
+ style="fill:#000e9c" />
74
+ <path
75
+ class="st1"
76
+ d="M 165,173.2 V 198 c 0,1.6 -1.3,2.9 -2.9,2.9 -1.6,0 -2.9,-1.4 -2.9,-2.9 v -53.5 c 0,-1.6 1.3,-2.9 2.9,-2.9 1.6,0 2.9,1.4 2.9,2.9 v 23.3 h 30 v -23.3 c 0,-1.6 1.3,-2.9 2.9,-2.9 1.6,0 2.9,1.4 2.9,2.9 V 198 c 0,1.6 -1.3,2.9 -2.9,2.9 -1.6,0 -2.9,-1.4 -2.9,-2.9 v -24.8 z"
77
+ id="path10"
78
+ inkscape:connector-curvature="0"
79
+ style="fill:#000e9c" />
80
+ <path
81
+ class="st1"
82
+ d="m 228.5,159.9 c 7.7,0 11.9,4 13.3,5.9 0.4,0.6 0.6,1 0.6,1.6 0,1.5 -1.1,2.5 -2.5,2.5 -0.9,0 -1.5,-0.3 -2.1,-1 -1.3,-1.5 -3.6,-4 -9.3,-4 -7.9,0 -12.1,5.1 -12.1,15.7 0,10.8 4.2,15.8 12.1,15.8 5,0 8,-2.2 10,-3.7 0.6,-0.4 1,-0.6 1.6,-0.6 1.4,0 2.5,1.1 2.5,2.5 0,0.8 -0.3,1.4 -1.1,2.2 -1.9,1.6 -6,4.7 -13,4.7 -11.1,0 -17.7,-6.6 -17.7,-20.8 -0.1,-14.2 6.6,-20.8 17.7,-20.8 z"
83
+ id="path12"
84
+ inkscape:connector-curvature="0"
85
+ style="fill:#000e9c" />
86
+ <path
87
+ class="st1"
88
+ d="m 255.9,141.7 v 49.2 c 0,3.4 1.1,4.9 3.4,4.9 1.4,0 2.6,1.1 2.6,2.6 0,1.5 -1.2,2.6 -2.6,2.6 -5.8,0 -9,-3.4 -9,-10.1 v -49.2 c 0,-1.5 1.3,-2.8 2.8,-2.8 1.6,0 2.8,1.3 2.8,2.8 z"
89
+ id="path14"
90
+ inkscape:connector-curvature="0"
91
+ style="fill:#000e9c" />
92
+ <path
93
+ class="st1"
94
+ d="m 302.9,180.6 c 0,14.1 -6.9,20.8 -18.1,20.8 -11.1,0 -18.1,-6.6 -18.1,-20.8 0,-14.1 7,-20.7 18.1,-20.7 11.2,0 18.1,6.6 18.1,20.7 z m -5.6,0 c 0,-10.9 -4.6,-15.7 -12.5,-15.7 -7.9,0 -12.5,4.8 -12.5,15.7 0,11 4.6,15.8 12.5,15.8 7.9,0 12.5,-4.8 12.5,-15.8 z"
95
+ id="path16"
96
+ inkscape:connector-curvature="0"
97
+ style="fill:#000e9c" />
98
+ <path
99
+ class="st1"
100
+ d="m 316.1,163.2 v 22.5 c 0,5.6 1.8,10.4 10.5,10.4 8.7,0 10.5,-4.8 10.5,-10.4 v -22.5 c 0,-1.6 1.3,-2.8 2.8,-2.8 1.5,0 2.7,1.2 2.7,2.8 v 22.5 c 0,8.2 -2.7,15.7 -16,15.7 -13.3,0 -16,-7.5 -16,-15.7 v -22.5 c 0,-1.6 1.2,-2.8 2.8,-2.8 1.4,0.1 2.7,1.3 2.7,2.8 z"
101
+ id="path18"
102
+ inkscape:connector-curvature="0"
103
+ style="fill:#000e9c" />
104
+ <path
105
+ class="st1"
106
+ d="m 379.4,165.5 v -23.9 c 0,-1.6 1.2,-2.8 2.8,-2.8 1.6,0 2.8,1.2 2.8,2.8 v 42.7 c 0,11.4 -7.1,17 -16.9,17 -11.1,0 -17.7,-6.6 -17.7,-20.8 0,-14.1 6.2,-20.7 17.3,-20.7 5.5,0.1 9.7,3 11.7,5.7 z m 0,7 c 0,0 -3.3,-7.6 -11.4,-7.6 -7.8,0 -12.1,5.1 -12.1,15.7 0,10.8 4.2,15.8 12.1,15.8 6.6,0 11.4,-3.8 11.4,-12 z"
107
+ id="path20"
108
+ inkscape:connector-curvature="0"
109
+ style="fill:#000e9c" />
110
+ </g>
111
+ </g>
112
+ <g
113
+ id="g28"
114
+ transform="translate(-51.570659,-37.8)">
115
+ <path
116
+ class="st1"
117
+ d="m 395.3,152.8 c -0.7,0 -1.4,-0.1 -2,-0.4 -0.6,-0.3 -1.2,-0.6 -1.7,-1.1 -0.5,-0.5 -0.9,-1.1 -1.1,-1.8 -0.3,-0.7 -0.4,-1.5 -0.4,-2.3 0,-0.9 0.1,-1.6 0.4,-2.3 0.3,-0.7 0.7,-1.3 1.1,-1.8 0.5,-0.5 1,-0.9 1.7,-1.1 0.6,-0.3 1.3,-0.4 2,-0.4 0.7,0 1.4,0.1 2,0.4 0.6,0.3 1.2,0.7 1.7,1.1 0.5,0.5 0.9,1.1 1.1,1.8 0.3,0.7 0.4,1.5 0.4,2.3 0,0.9 -0.1,1.6 -0.4,2.3 -0.3,0.7 -0.7,1.3 -1.1,1.8 -0.5,0.5 -1,0.9 -1.7,1.1 -0.6,0.2 -1.3,0.4 -2,0.4 z m 0,-0.9 c 0.6,0 1.2,-0.1 1.7,-0.4 0.5,-0.2 1,-0.6 1.4,-1 0.4,-0.4 0.7,-0.9 0.9,-1.5 0.2,-0.6 0.3,-1.2 0.3,-1.9 0,-0.7 -0.1,-1.3 -0.3,-1.9 -0.2,-0.6 -0.5,-1.1 -0.9,-1.5 -0.4,-0.4 -0.9,-0.8 -1.4,-1 -0.5,-0.2 -1.1,-0.4 -1.7,-0.4 -0.6,0 -1.2,0.1 -1.7,0.4 -0.5,0.2 -1,0.6 -1.4,1 -0.4,0.4 -0.7,0.9 -0.9,1.5 -0.2,0.6 -0.3,1.2 -0.3,1.9 0,0.7 0.1,1.3 0.3,1.9 0.2,0.6 0.5,1.1 0.9,1.5 0.4,0.4 0.8,0.7 1.4,1 0.5,0.3 1.1,0.4 1.7,0.4 z m -2,-1.9 v -6 h 2 c 0.3,0 0.6,0 0.8,0.1 0.3,0.1 0.5,0.2 0.7,0.3 0.2,0.1 0.4,0.3 0.5,0.6 0.1,0.2 0.2,0.5 0.2,0.9 0,0.4 -0.1,0.7 -0.3,1 -0.2,0.3 -0.5,0.5 -0.8,0.6 l 1.4,2.5 h -1.1 l -1.1,-2.2 h -1.4 v 2.2 z m 1,-2.9 h 0.8 c 0.4,0 0.8,-0.1 1.1,-0.2 0.3,-0.2 0.4,-0.4 0.4,-0.8 0,-0.3 -0.1,-0.6 -0.3,-0.8 -0.2,-0.2 -0.6,-0.3 -1.1,-0.3 h -0.9 z"
118
+ id="path26"
119
+ inkscape:connector-curvature="0"
120
+ style="fill:#000e9c" />
121
+ </g>
122
+ </svg>
@@ -0,0 +1,122 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!-- Generator: Adobe Illustrator 24.2.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
3
+
4
+ <svg
5
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
6
+ xmlns:cc="http://creativecommons.org/ns#"
7
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
8
+ xmlns:svg="http://www.w3.org/2000/svg"
9
+ xmlns="http://www.w3.org/2000/svg"
10
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12
+ version="1.1"
13
+ id="Layer_1"
14
+ x="0px"
15
+ y="0px"
16
+ viewBox="0 0 348.92935 163.69999"
17
+ xml:space="preserve"
18
+ sodipodi:docname="OVHcloud_stacked_R_logo_fullcolor_RGB.svg"
19
+ width="348.92935"
20
+ height="163.7"
21
+ inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)"><metadata
22
+ id="metadata35"><rdf:RDF><cc:Work
23
+ rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
24
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
25
+ id="defs33" /><sodipodi:namedview
26
+ pagecolor="#ffffff"
27
+ bordercolor="#666666"
28
+ borderopacity="1"
29
+ objecttolerance="10"
30
+ gridtolerance="10"
31
+ guidetolerance="10"
32
+ inkscape:pageopacity="0"
33
+ inkscape:pageshadow="2"
34
+ inkscape:window-width="2499"
35
+ inkscape:window-height="1376"
36
+ id="namedview31"
37
+ showgrid="false"
38
+ inkscape:zoom="2.1519241"
39
+ inkscape:cx="381.9839"
40
+ inkscape:cy="25.915451"
41
+ inkscape:window-x="1981"
42
+ inkscape:window-y="27"
43
+ inkscape:window-maximized="1"
44
+ inkscape:current-layer="Layer_1" />
45
+ <style
46
+ type="text/css"
47
+ id="style2">
48
+ .st0{fill-rule:evenodd;clip-rule:evenodd;fill:#000E9C;}
49
+ .st1{fill:#000E9C;}
50
+ </style>
51
+ <g
52
+ id="g24"
53
+ transform="translate(-49.4,-37.8)">
54
+ <path
55
+ class="st0"
56
+ d="m 272.4,42.2 c 12.8,23.1 10.4,51.6 -6.1,72.2 H 231.5 L 242.2,95.5 H 228 L 244.8,66 h 14.3 z m -68.7,72.2 H 168.2 C 151.5,93.8 149,65.1 162.1,42 l 23,40 25.4,-44.2 h 37.3 z"
57
+ id="path4"
58
+ inkscape:connector-curvature="0"
59
+ style="clip-rule:evenodd;fill:#000e9c;fill-rule:evenodd" />
60
+ <g
61
+ id="g22">
62
+ <path
63
+ class="st1"
64
+ d="m 49.4,171.3 c 0,-20.4 10.2,-30.2 26.9,-30.2 16.7,0 26.9,9.8 26.9,30.2 0,20.2 -10.2,30.1 -26.9,30.1 -16.7,0.1 -26.9,-9.9 -26.9,-30.1 z m 6.1,0 c 0,16.8 7.7,24.8 20.8,24.8 13.2,0 20.8,-8 20.8,-24.8 0,-16.9 -7.7,-24.9 -20.8,-24.9 -13.2,0 -20.8,8 -20.8,24.9 z"
65
+ id="path6"
66
+ inkscape:connector-curvature="0"
67
+ style="fill:#000e9c" />
68
+ <path
69
+ class="st1"
70
+ d="m 147.1,143.5 c 0.3,-0.7 1.1,-1.9 2.8,-1.9 1.6,0 2.9,1.3 2.9,2.9 0,0.5 -0.2,1 -0.3,1.3 L 132.4,199 c -0.4,1.2 -1.6,2 -2.8,2 -1.1,0 -2.3,-0.8 -2.8,-2 l -20.2,-53.1 c -0.1,-0.3 -0.3,-0.8 -0.3,-1.3 0,-1.6 1.3,-2.9 2.9,-2.9 1.6,0 2.5,1.2 2.8,1.9 l 17.5,46.3 z"
71
+ id="path8"
72
+ inkscape:connector-curvature="0"
73
+ style="fill:#000e9c" />
74
+ <path
75
+ class="st1"
76
+ d="M 165,173.2 V 198 c 0,1.6 -1.3,2.9 -2.9,2.9 -1.6,0 -2.9,-1.4 -2.9,-2.9 v -53.5 c 0,-1.6 1.3,-2.9 2.9,-2.9 1.6,0 2.9,1.4 2.9,2.9 v 23.3 h 30 v -23.3 c 0,-1.6 1.3,-2.9 2.9,-2.9 1.6,0 2.9,1.4 2.9,2.9 V 198 c 0,1.6 -1.3,2.9 -2.9,2.9 -1.6,0 -2.9,-1.4 -2.9,-2.9 v -24.8 z"
77
+ id="path10"
78
+ inkscape:connector-curvature="0"
79
+ style="fill:#000e9c" />
80
+ <path
81
+ class="st1"
82
+ d="m 228.5,159.9 c 7.7,0 11.9,4 13.3,5.9 0.4,0.6 0.6,1 0.6,1.6 0,1.5 -1.1,2.5 -2.5,2.5 -0.9,0 -1.5,-0.3 -2.1,-1 -1.3,-1.5 -3.6,-4 -9.3,-4 -7.9,0 -12.1,5.1 -12.1,15.7 0,10.8 4.2,15.8 12.1,15.8 5,0 8,-2.2 10,-3.7 0.6,-0.4 1,-0.6 1.6,-0.6 1.4,0 2.5,1.1 2.5,2.5 0,0.8 -0.3,1.4 -1.1,2.2 -1.9,1.6 -6,4.7 -13,4.7 -11.1,0 -17.7,-6.6 -17.7,-20.8 -0.1,-14.2 6.6,-20.8 17.7,-20.8 z"
83
+ id="path12"
84
+ inkscape:connector-curvature="0"
85
+ style="fill:#000e9c" />
86
+ <path
87
+ class="st1"
88
+ d="m 255.9,141.7 v 49.2 c 0,3.4 1.1,4.9 3.4,4.9 1.4,0 2.6,1.1 2.6,2.6 0,1.5 -1.2,2.6 -2.6,2.6 -5.8,0 -9,-3.4 -9,-10.1 v -49.2 c 0,-1.5 1.3,-2.8 2.8,-2.8 1.6,0 2.8,1.3 2.8,2.8 z"
89
+ id="path14"
90
+ inkscape:connector-curvature="0"
91
+ style="fill:#000e9c" />
92
+ <path
93
+ class="st1"
94
+ d="m 302.9,180.6 c 0,14.1 -6.9,20.8 -18.1,20.8 -11.1,0 -18.1,-6.6 -18.1,-20.8 0,-14.1 7,-20.7 18.1,-20.7 11.2,0 18.1,6.6 18.1,20.7 z m -5.6,0 c 0,-10.9 -4.6,-15.7 -12.5,-15.7 -7.9,0 -12.5,4.8 -12.5,15.7 0,11 4.6,15.8 12.5,15.8 7.9,0 12.5,-4.8 12.5,-15.8 z"
95
+ id="path16"
96
+ inkscape:connector-curvature="0"
97
+ style="fill:#000e9c" />
98
+ <path
99
+ class="st1"
100
+ d="m 316.1,163.2 v 22.5 c 0,5.6 1.8,10.4 10.5,10.4 8.7,0 10.5,-4.8 10.5,-10.4 v -22.5 c 0,-1.6 1.3,-2.8 2.8,-2.8 1.5,0 2.7,1.2 2.7,2.8 v 22.5 c 0,8.2 -2.7,15.7 -16,15.7 -13.3,0 -16,-7.5 -16,-15.7 v -22.5 c 0,-1.6 1.2,-2.8 2.8,-2.8 1.4,0.1 2.7,1.3 2.7,2.8 z"
101
+ id="path18"
102
+ inkscape:connector-curvature="0"
103
+ style="fill:#000e9c" />
104
+ <path
105
+ class="st1"
106
+ d="m 379.4,165.5 v -23.9 c 0,-1.6 1.2,-2.8 2.8,-2.8 1.6,0 2.8,1.2 2.8,2.8 v 42.7 c 0,11.4 -7.1,17 -16.9,17 -11.1,0 -17.7,-6.6 -17.7,-20.8 0,-14.1 6.2,-20.7 17.3,-20.7 5.5,0.1 9.7,3 11.7,5.7 z m 0,7 c 0,0 -3.3,-7.6 -11.4,-7.6 -7.8,0 -12.1,5.1 -12.1,15.7 0,10.8 4.2,15.8 12.1,15.8 6.6,0 11.4,-3.8 11.4,-12 z"
107
+ id="path20"
108
+ inkscape:connector-curvature="0"
109
+ style="fill:#000e9c" />
110
+ </g>
111
+ </g>
112
+ <g
113
+ id="g28"
114
+ transform="translate(-51.570659,-37.8)">
115
+ <path
116
+ class="st1"
117
+ d="m 395.3,152.8 c -0.7,0 -1.4,-0.1 -2,-0.4 -0.6,-0.3 -1.2,-0.6 -1.7,-1.1 -0.5,-0.5 -0.9,-1.1 -1.1,-1.8 -0.3,-0.7 -0.4,-1.5 -0.4,-2.3 0,-0.9 0.1,-1.6 0.4,-2.3 0.3,-0.7 0.7,-1.3 1.1,-1.8 0.5,-0.5 1,-0.9 1.7,-1.1 0.6,-0.3 1.3,-0.4 2,-0.4 0.7,0 1.4,0.1 2,0.4 0.6,0.3 1.2,0.7 1.7,1.1 0.5,0.5 0.9,1.1 1.1,1.8 0.3,0.7 0.4,1.5 0.4,2.3 0,0.9 -0.1,1.6 -0.4,2.3 -0.3,0.7 -0.7,1.3 -1.1,1.8 -0.5,0.5 -1,0.9 -1.7,1.1 -0.6,0.2 -1.3,0.4 -2,0.4 z m 0,-0.9 c 0.6,0 1.2,-0.1 1.7,-0.4 0.5,-0.2 1,-0.6 1.4,-1 0.4,-0.4 0.7,-0.9 0.9,-1.5 0.2,-0.6 0.3,-1.2 0.3,-1.9 0,-0.7 -0.1,-1.3 -0.3,-1.9 -0.2,-0.6 -0.5,-1.1 -0.9,-1.5 -0.4,-0.4 -0.9,-0.8 -1.4,-1 -0.5,-0.2 -1.1,-0.4 -1.7,-0.4 -0.6,0 -1.2,0.1 -1.7,0.4 -0.5,0.2 -1,0.6 -1.4,1 -0.4,0.4 -0.7,0.9 -0.9,1.5 -0.2,0.6 -0.3,1.2 -0.3,1.9 0,0.7 0.1,1.3 0.3,1.9 0.2,0.6 0.5,1.1 0.9,1.5 0.4,0.4 0.8,0.7 1.4,1 0.5,0.3 1.1,0.4 1.7,0.4 z m -2,-1.9 v -6 h 2 c 0.3,0 0.6,0 0.8,0.1 0.3,0.1 0.5,0.2 0.7,0.3 0.2,0.1 0.4,0.3 0.5,0.6 0.1,0.2 0.2,0.5 0.2,0.9 0,0.4 -0.1,0.7 -0.3,1 -0.2,0.3 -0.5,0.5 -0.8,0.6 l 1.4,2.5 h -1.1 l -1.1,-2.2 h -1.4 v 2.2 z m 1,-2.9 h 0.8 c 0.4,0 0.8,-0.1 1.1,-0.2 0.3,-0.2 0.4,-0.4 0.4,-0.8 0,-0.3 -0.1,-0.6 -0.3,-0.8 -0.2,-0.2 -0.6,-0.3 -1.1,-0.3 h -0.9 z"
118
+ id="path26"
119
+ inkscape:connector-curvature="0"
120
+ style="fill:#000e9c" />
121
+ </g>
122
+ </svg>
@@ -54,3 +54,102 @@ HEADER {
54
54
  background-color: var(--nav-bg);
55
55
  height: var(--footer-height);
56
56
  }
57
+
58
+
59
+ // !BEGIN This was all a part of default.vue but it wasn't scoped which meant it applied to all styles. Without layouts this style was being lazy loaded instead of on initial load. This was styling other layouts especially plain.vue.
60
+ .dashboard-root {
61
+ display: flex;
62
+ flex-direction: column;
63
+ height: 100vh;
64
+ }
65
+
66
+ .dashboard-content {
67
+ display: grid;
68
+ position: relative;
69
+ flex: 1 1 auto;
70
+ overflow-y: auto;
71
+ min-height: 0px;
72
+
73
+ &.dashboard-padding-left {
74
+ padding-left: $app-bar-collapsed-width;
75
+
76
+ .overlay-content-mode {
77
+ left: calc(var(--nav-width) + $app-bar-collapsed-width);
78
+ }
79
+ }
80
+
81
+ &.pin-right {
82
+ grid-template-areas:
83
+ "header header header"
84
+ "nav main wm";
85
+ grid-template-rows: var(--header-height) auto;
86
+ grid-template-columns: var(--nav-width) auto var(--wm-width, 0px);
87
+ }
88
+
89
+ &.pin-bottom {
90
+ grid-template-areas:
91
+ "header header"
92
+ "nav main"
93
+ "wm wm";
94
+ grid-template-rows: var(--header-height) auto var(--wm-height, 0px);
95
+ grid-template-columns: var(--nav-width) auto;
96
+ }
97
+
98
+ &.pin-left {
99
+ grid-template-areas:
100
+ "header header header"
101
+ "wm nav main";
102
+ grid-template-rows: var(--header-height) auto;
103
+ grid-template-columns: var(--wm-width, 0px) var(--nav-width) auto;
104
+ }
105
+
106
+ >HEADER {
107
+ grid-area: header;
108
+ }
109
+
110
+ .default-side-nav {
111
+ grid-area: nav;
112
+ }
113
+ }
114
+
115
+ .wm {
116
+ grid-area: wm;
117
+ overflow-y: hidden;
118
+ z-index: 1;
119
+ }
120
+
121
+ .localeSelector {
122
+ ::v-deep .popover-inner {
123
+ padding: 50px 0;
124
+ }
125
+
126
+ ::v-deep .popover-arrow {
127
+ display: none;
128
+ }
129
+
130
+ ::v-deep .popover:focus {
131
+ outline: 0;
132
+ }
133
+
134
+ li {
135
+ padding: 8px 20px;
136
+
137
+ &:hover {
138
+ background-color: var(--primary-hover-bg);
139
+ color: var(--primary-hover-text);
140
+ text-decoration: none;
141
+ }
142
+ }
143
+ }
144
+
145
+ .drag-start {
146
+ z-index: 1000;
147
+ opacity: 0.5;
148
+ transition: opacity .3s ease;
149
+ }
150
+
151
+ .drag-end {
152
+ opacity: 1;
153
+ }
154
+
155
+ // !END
@@ -1680,7 +1680,7 @@ cluster:
1680
1680
  banner:
1681
1681
  warning: 'This cluster contains a machineSelectorConfig, which this form does not fully support; use the YAML editor to manage the full configuration.'
1682
1682
  os: 'You are attempting to add a {newOS} worker node to a cluster with one or more {existingOS} worker nodes: some installed apps may need to be upgraded or removed.'
1683
- rke2-k3-reprovisioning: 'Making changes to cluster configuration may result in nodes reprovisioning. For more information see the <a target="blank" href="{docsBase}/cluster-provisioning/rke-clusters/behavior-differences-between-rke1-and-rke2/" target="_blank" rel="noopener nofollow">documentation</a>.'
1683
+ rke2-k3-reprovisioning: 'Making changes to cluster configuration may result in nodes reprovisioning. For more information see the <a href="{docsBase}/cluster-provisioning/rke-clusters/behavior-differences-between-rke1-and-rke2/" target="_blank" rel="noopener nofollow">documentation</a>.'
1684
1684
  desiredNodeGroupWarning: There are 0 nodes available to run the cluster agent. The cluster will not become active until at least one node is available.
1685
1685
  haveArgInfo: Configuration information is not available for the selected Kubernetes version. The options available on this screen will be limited; you may want to use the YAML editor.
1686
1686
  cloudProviderAddConfig: 'On Kubernetes 1.27 or greater, the Amazon Cloud Provider requires additional configuration. See <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">the documentation</a> for more information.'
@@ -1862,6 +1862,9 @@ cluster:
1862
1862
  header: System Services
1863
1863
  cni:
1864
1864
  label: Container Network
1865
+ cilium:
1866
+ BandwidthManager:
1867
+ enable: Enable Bandwidth Manager
1865
1868
  cloudProvider:
1866
1869
  label: Cloud Provider
1867
1870
  header: Cloud Provider Config
@@ -2046,6 +2049,8 @@ clusterIndexPage:
2046
2049
  etcd: Etcd
2047
2050
  scheduler: Scheduler
2048
2051
  controller-manager: Controller Manager
2052
+ certs:
2053
+ label: Certificates
2049
2054
 
2050
2055
  configmap:
2051
2056
  tabs:
@@ -2355,6 +2360,7 @@ glance:
2355
2360
  v1MonitoringInstalled: V1 Monitoring Installed
2356
2361
  clusterInfo: Cluster Information
2357
2362
  eventsTable: Full events list
2363
+ secretsTable: Full secrets list
2358
2364
 
2359
2365
  clusterBadge:
2360
2366
  addLabel: Add Cluster Badge
@@ -2767,7 +2773,7 @@ landing:
2767
2773
  cpuUsed: CPU Used
2768
2774
  memoryUsed: Memory Used
2769
2775
  seeWhatsNew: Learn more about the improvements and new capabilities in this version.
2770
- whatsNewLink: "What's new in 2.8"
2776
+ whatsNewLink: "What's new in 2.9"
2771
2777
  learnMore: Learn More
2772
2778
  support: Support
2773
2779
  community:
@@ -3158,9 +3164,9 @@ monitoring:
3158
3164
  label: Additional Secrets
3159
3165
  existing: Choose an existing config secret
3160
3166
  info: |
3161
- <span class="text-bold">Create default config</span>: A Secret containing your Alertmanager Config will be created in the <pre class='inline-block m-0'>cattle-monitoring-system</pre> namespace on deploying this chart under the name <pre class='inline-block m-0'>alertmanager-rancher-monitoring-alertmanager</pre>. By default, this Secret will never be modified on an uninstall or upgrade of this chart. <br />
3167
+ <span class="text-bold">Create default config</span>:<br>A Secret containing your Alertmanager Config will be created in the <pre class='inline-block m-0'>cattle-monitoring-system</pre> namespace on deploying this chart under the name <pre class='inline-block m-0'>alertmanager-rancher-monitoring-alertmanager</pre>. By default, this Secret will never be modified on an uninstall or upgrade of this chart. <br /><br />
3162
3168
  Once you have deployed this chart, you should edit the Secret via the UI in order to add your custom notification configurations that will be used by Alertmanager to send alerts. <br /> <br />
3163
- <span class="text-bold">Choose an existing config secret</span>: You must specify a Secret that exists in the <pre class='inline-block m-0'>cattle-monitoring-system</pre> namespace. If the namespace does not exist, you will not be able to select an existing secret.
3169
+ <span class="text-bold">Choose an existing config secret</span>:<br>You must specify a Secret that exists in the <pre class='inline-block m-0'>cattle-monitoring-system</pre> namespace. If the namespace does not exist, you will not be able to select an existing secret.
3164
3170
  label: Alertmanager Secret
3165
3171
  new: Create default config
3166
3172
  radio:
@@ -4131,6 +4137,9 @@ plugins:
4131
4137
  image:
4132
4138
  label: Catalog Image Reference
4133
4139
  placeholder: "e.g. hub.docker.io/example-org/my-image:latest"
4140
+ imagePullSecrets:
4141
+ label: Image Pull Secrets
4142
+ tooltip: Must be of Type `kubernetes.io/dockercfg` or `kubernetes.io/dockerconfigjson`
4134
4143
  secrets:
4135
4144
  banner: "If the registry that hosts the Catalog Image requires Pull Secrets, they must be created in the following namespace:<pre>cattle-ui-plugin-system</pre>"
4136
4145
  banner: This will create an Deployment, Service, and Helm repository to serve the extension charts.
@@ -4748,7 +4757,7 @@ resourceTable:
4748
4757
  machinePool: "<span>Pool:</span> {name}"
4749
4758
  notInANamespace: Not Namespaced
4750
4759
  notInAProject: Not in a Project
4751
- project: "<span>Project:</span> {name}"
4760
+ project: "<span>Project:</span> <span>{name}</span>"
4752
4761
  notInAWorkspace: Not in a Workspace
4753
4762
  workspace: "<span>Workspace:</span> {name}"
4754
4763
  notInANodePool: "Not in a Pool"
@@ -4781,13 +4790,26 @@ secret:
4781
4790
  authentication: Authentication
4782
4791
  certificate:
4783
4792
  certificate: Certificate
4793
+ certificates: Certificates
4784
4794
  certificatePlaceholder: "Paste in the CA certificate, starting with -----BEGIN CERTIFICATE----"
4785
4795
  cn: Domain Name
4786
4796
  expires: Expires
4797
+ expiresOn: Expires On
4798
+ expiresDuration: Expires In
4799
+ lifetime: Lifetime
4787
4800
  issuer: Issuer
4801
+ paging: |-
4802
+ {pages, plural,
4803
+ =0 {No {pluralLabel}}
4804
+ =1 {{count} {count, plural, =1 {{singularLabel}} other {{pluralLabel}}}}
4805
+ other {{from} - {to} of {count} {pluralLabel}}}
4788
4806
  plusMore: "+ {n} more"
4789
4807
  privateKey: Private Key
4790
4808
  privateKeyPlaceholder: "Paste in the private key, typically starting with -----BEGIN RSA PRIVATE KEY-----"
4809
+ warnings:
4810
+ expiring: "{count} {count, plural, =1 {Certificate expires soon} other {Certificates expire soon}}"
4811
+ expired: "{count} {count, plural, =1 {Certificate has expired} other {Certificates have expired}}"
4812
+ filtered: ". Not all may be visible given the selected project/namespace filter"
4791
4813
  data: Data
4792
4814
  registry:
4793
4815
  address: Registry
@@ -5573,6 +5595,9 @@ tableHeaders:
5573
5595
  volume: Volume
5574
5596
  volumeMode: Volume Mode
5575
5597
  weight: Weight
5598
+ clusterResources: Cluster Resources
5599
+ repoPerClusterState: Cluster State
5600
+ repoPerClusterStateTooltip: The state of the repo on the cluster
5576
5601
  target:
5577
5602
  router:
5578
5603
  label: Router
@@ -884,7 +884,7 @@ catalog:
884
884
  requiresFound: '在安装这个 Chart 前,你需要安装<a href="{url}">{name}</a>。'
885
885
  requiresMissing: '这个 Chart 另一个提供 {name} 的 Chart,但我们找不到这个Chart。'
886
886
  insufficientCpu: '这个 Chart 需要 {need, number} 个 CPU 核,但集群只有 {have, number} 个可用。'
887
- insufficientMemory: '这个 Cchart 需要 {need} 内存,但集群只有 {have} 可用。'
887
+ insufficientMemory: '这个 Chart 需要 {need} 内存,但集群只有 {have} 可用。'
888
888
  legacy:
889
889
  label: 这是个 {legacyType} 应用,无法在这里修改。
890
890
  enableLegacy:
package/babel.config.js CHANGED
@@ -10,7 +10,13 @@ module.exports = function(api) {
10
10
  { targets: { node: 'current' } }
11
11
  ]
12
12
  ];
13
- const env = { test: { presets: [['@babel/env', { targets: { node: 'current' } }]] } };
13
+ const env = {
14
+ test: {
15
+ presets: [[
16
+ '@babel/env', { targets: { node: 'current' } }
17
+ ]]
18
+ }
19
+ };
14
20
 
15
21
  const plugins = [];
16
22
 
@@ -5,8 +5,6 @@ import { Checkbox } from '@components/Form/Checkbox';
5
5
  import LabeledSelect from '@shell/components/form/LabeledSelect';
6
6
  import { RadioGroup } from '@components/Form/Radio';
7
7
 
8
- const DEFAULT_MONITORING_NAMESPACE = 'cattle-monitoring-system';
9
-
10
8
  export default {
11
9
  components: {
12
10
  Checkbox,
@@ -20,7 +18,7 @@ export default {
20
18
  default: 'create',
21
19
  },
22
20
 
23
- secrets: {
21
+ monitoringSecrets: {
24
22
  type: Array,
25
23
  default: () => [],
26
24
  },
@@ -43,12 +41,7 @@ export default {
43
41
 
44
42
  computed: {
45
43
  allSecrets() {
46
- const { secrets } = this;
47
-
48
- return secrets
49
- .filter(
50
- (sec) => sec.metadata.namespace === DEFAULT_MONITORING_NAMESPACE
51
- )
44
+ return this.monitoringSecrets
52
45
  .map((sec) => ({ label: sec.metadata.name, value: sec.metadata.name }));
53
46
  },
54
47
 
@@ -62,22 +55,15 @@ export default {
62
55
  },
63
56
 
64
57
  existingSecret() {
65
- return this.secrets.find(
66
- (sec) => sec?.metadata?.name ===
67
- 'alertmanager-rancher-monitoring-alertmanager' &&
68
- sec?.metadata?.namespace === DEFAULT_MONITORING_NAMESPACE
69
- );
58
+ return this.monitoringSecrets
59
+ .find((sec) => sec?.metadata?.name === 'alertmanager-rancher-monitoring-alertmanager');
70
60
  },
71
61
 
72
62
  filteredSecrets() {
73
- const { secrets } = this;
74
63
  const filtered = [];
75
64
 
76
- secrets.forEach((secret) => {
77
- if (
78
- secret.metadata.name &&
79
- secret.metadata.namespace === DEFAULT_MONITORING_NAMESPACE
80
- ) {
65
+ this.monitoringSecrets.forEach((secret) => {
66
+ if ( secret.metadata.name ) {
81
67
  filtered.push(secret.metadata.name);
82
68
  }
83
69
  });
@@ -93,7 +79,7 @@ export default {
93
79
  },
94
80
 
95
81
  watch: {
96
- filteredSecrets(newValue, oldValue) {
82
+ filteredSecrets(newValue) {
97
83
  if (isEmpty(newValue)) {
98
84
  this.$set(
99
85
  this.value.alertmanager.alertmanagerSpec,
@@ -87,6 +87,9 @@ export default {
87
87
 
88
88
  return (storageClasses || []).length >= 1;
89
89
  },
90
+ showGrafanaResourceConfig() {
91
+ return this.value?.grafana?.resources?.requests && this.value?.grafana?.resources?.limits;
92
+ }
90
93
  },
91
94
  watch: {
92
95
  persistentStorageType(newType, oldType) {
@@ -172,6 +175,58 @@ export default {
172
175
  <h3>{{ t('monitoring.grafana.title') }}</h3>
173
176
  </div>
174
177
  <div class="grafana-config">
178
+ <!-- Request and Limits -->
179
+ <!-- Note, we use the same labels for resource config as Prometheus since they are generic -->
180
+ <div
181
+ v-if="showGrafanaResourceConfig"
182
+ class="row"
183
+ >
184
+ <div class="col span-12 mt-5">
185
+ <h4 class="mb-0">
186
+ {{ t('monitoring.prometheus.config.resourceLimits') }}
187
+ </h4>
188
+ </div>
189
+ </div>
190
+ <div
191
+ v-if="showGrafanaResourceConfig"
192
+ class="row"
193
+ >
194
+ <div class="col span-6">
195
+ <LabeledInput
196
+ v-model="value.grafana.resources.requests.cpu"
197
+ data-testid="input-grafana-requests-cpu"
198
+ :label="t('monitoring.prometheus.config.requests.cpu')"
199
+ :mode="mode"
200
+ />
201
+ </div>
202
+ <div class="col span-6">
203
+ <LabeledInput
204
+ v-model="value.grafana.resources.requests.memory"
205
+ data-testid="input-grafana-requests-memory"
206
+ :label="t('monitoring.prometheus.config.requests.memory')"
207
+ :mode="mode"
208
+ />
209
+ </div>
210
+ </div>
211
+ <div class="row">
212
+ <div class="col span-6">
213
+ <LabeledInput
214
+ v-model="value.grafana.resources.limits.cpu"
215
+ data-testid="input-grafana-limits-cpu"
216
+ :label="t('monitoring.prometheus.config.limits.cpu')"
217
+ :mode="mode"
218
+ />
219
+ </div>
220
+ <div class="col span-6">
221
+ <LabeledInput
222
+ v-model="value.grafana.resources.limits.memory"
223
+ data-testid="input-grafana-limits-memory"
224
+ :label="t('monitoring.prometheus.config.limits.memory')"
225
+ :mode="mode"
226
+ />
227
+ </div>
228
+ </div>
229
+
175
230
  <div class="row pt-10 pb-10">
176
231
  <div class="col span-12 persistent-storage-config">
177
232
  <RadioGroup