diff --git a/locales/en/messages.po b/locales/en/messages.po index 926770242a..215c921039 100644 --- a/locales/en/messages.po +++ b/locales/en/messages.po @@ -83,7 +83,7 @@ msgstr "Account Name" msgid "Active" msgstr "Active" -#: src/renderer/components/+add-cluster/add-cluster.tsx:176 +#: src/renderer/components/+add-cluster/add-cluster.tsx:196 #: src/renderer/components/cluster-manager/clusters-menu.tsx:116 msgid "Add Cluster" msgstr "Add Cluster" @@ -108,7 +108,7 @@ msgstr "Add bindings to {name}" #~ msgid "Add cluster" #~ msgstr "Add cluster" -#: src/renderer/components/+add-cluster/add-cluster.tsx:204 +#: src/renderer/components/+add-cluster/add-cluster.tsx:223 msgid "Add cluster(s)" msgstr "Add cluster(s)" @@ -710,7 +710,7 @@ msgstr "Currently applied filters:" msgid "Custom Resources" msgstr "Custom Resources" -#: src/renderer/components/+add-cluster/add-cluster.tsx:121 +#: src/renderer/components/+add-cluster/add-cluster.tsx:141 msgid "Custom.." msgstr "Custom.." @@ -1730,13 +1730,17 @@ msgstr "Persistent Volume Claims" msgid "Persistent Volumes" msgstr "Persistent Volumes" +#: src/renderer/components/+add-cluster/add-cluster.tsx:78 +msgid "Please select kube-config's context" +msgstr "Please select kube-config's context" + #: src/renderer/components/+add-cluster/add-cluster.tsx:63 #~ msgid "Please select kubeconfig" #~ msgstr "Please select kubeconfig" #: src/renderer/components/+add-cluster/add-cluster.tsx:64 -msgid "Please select kubeconfig context" -msgstr "Please select kubeconfig context" +#~ msgid "Please select kubeconfig context" +#~ msgstr "Please select kubeconfig context" #: src/renderer/components/+workloads-pods/pod-menu.tsx:50 msgid "Pod" @@ -1832,7 +1836,7 @@ msgstr "Provisioner" msgid "Proxy is used only for non-cluster communication." msgstr "Proxy is used only for non-cluster communication." -#: src/renderer/components/+add-cluster/add-cluster.tsx:188 +#: src/renderer/components/+add-cluster/add-cluster.tsx:207 msgid "Proxy settings" msgstr "Proxy settings" @@ -2216,7 +2220,7 @@ msgstr "Secret type" msgid "Secrets" msgstr "Secrets" -#: src/renderer/components/+add-cluster/add-cluster.tsx:185 +#: src/renderer/components/+add-cluster/add-cluster.tsx:204 msgid "Select a context" msgstr "Select a context" @@ -2228,6 +2232,11 @@ msgstr "Select a quota.." #~ msgid "Select context" #~ msgstr "Select context" +#: src/renderer/components/+add-cluster/add-cluster.tsx:52 +#: src/renderer/components/+add-cluster/add-cluster.tsx:52 +msgid "Select custom kube-config file" +msgstr "Select custom kube-config file" + #: src/renderer/components/+add-cluster/add-cluster.tsx:173 #~ msgid "Select kubeconfig" #~ msgstr "Select kubeconfig" @@ -2570,6 +2579,11 @@ msgstr "Upgrade version" msgid "Usage" msgstr "Usage" +#: src/renderer/components/+add-cluster/add-cluster.tsx:53 +#: src/renderer/components/+add-cluster/add-cluster.tsx:53 +msgid "Use configuration" +msgstr "Use configuration" + #: src/renderer/components/+user-management-roles-bindings/add-role-binding-dialog.tsx:190 msgid "Use same name for RoleBinding" msgstr "Use same name for RoleBinding" diff --git a/locales/fi/messages.po b/locales/fi/messages.po index 6f21b88dfa..c137ed90a7 100644 --- a/locales/fi/messages.po +++ b/locales/fi/messages.po @@ -83,7 +83,7 @@ msgstr "" msgid "Active" msgstr "" -#: src/renderer/components/+add-cluster/add-cluster.tsx:176 +#: src/renderer/components/+add-cluster/add-cluster.tsx:196 #: src/renderer/components/cluster-manager/clusters-menu.tsx:116 msgid "Add Cluster" msgstr "" @@ -108,7 +108,7 @@ msgstr "" #~ msgid "Add cluster" #~ msgstr "" -#: src/renderer/components/+add-cluster/add-cluster.tsx:204 +#: src/renderer/components/+add-cluster/add-cluster.tsx:223 msgid "Add cluster(s)" msgstr "" @@ -706,7 +706,7 @@ msgstr "" msgid "Custom Resources" msgstr "" -#: src/renderer/components/+add-cluster/add-cluster.tsx:121 +#: src/renderer/components/+add-cluster/add-cluster.tsx:141 msgid "Custom.." msgstr "" @@ -1713,13 +1713,17 @@ msgstr "" msgid "Persistent Volumes" msgstr "" +#: src/renderer/components/+add-cluster/add-cluster.tsx:78 +msgid "Please select kube-config's context" +msgstr "" + #: src/renderer/components/+add-cluster/add-cluster.tsx:63 #~ msgid "Please select kubeconfig" #~ msgstr "" #: src/renderer/components/+add-cluster/add-cluster.tsx:64 -msgid "Please select kubeconfig context" -msgstr "" +#~ msgid "Please select kubeconfig context" +#~ msgstr "" #: src/renderer/components/+workloads-pods/pod-menu.tsx:50 msgid "Pod" @@ -1815,7 +1819,7 @@ msgstr "" msgid "Proxy is used only for non-cluster communication." msgstr "" -#: src/renderer/components/+add-cluster/add-cluster.tsx:188 +#: src/renderer/components/+add-cluster/add-cluster.tsx:207 msgid "Proxy settings" msgstr "" @@ -2199,7 +2203,7 @@ msgstr "" msgid "Secrets" msgstr "" -#: src/renderer/components/+add-cluster/add-cluster.tsx:185 +#: src/renderer/components/+add-cluster/add-cluster.tsx:204 msgid "Select a context" msgstr "" @@ -2211,6 +2215,11 @@ msgstr "" #~ msgid "Select context" #~ msgstr "" +#: src/renderer/components/+add-cluster/add-cluster.tsx:52 +#: src/renderer/components/+add-cluster/add-cluster.tsx:52 +msgid "Select custom kube-config file" +msgstr "" + #: src/renderer/components/+add-cluster/add-cluster.tsx:173 #~ msgid "Select kubeconfig" #~ msgstr "" @@ -2553,6 +2562,11 @@ msgstr "" msgid "Usage" msgstr "" +#: src/renderer/components/+add-cluster/add-cluster.tsx:53 +#: src/renderer/components/+add-cluster/add-cluster.tsx:53 +msgid "Use configuration" +msgstr "" + #: src/renderer/components/+user-management-roles-bindings/add-role-binding-dialog.tsx:190 msgid "Use same name for RoleBinding" msgstr "" diff --git a/locales/ru/messages.po b/locales/ru/messages.po index dd864e7d9c..4d61241cae 100644 --- a/locales/ru/messages.po +++ b/locales/ru/messages.po @@ -84,7 +84,7 @@ msgstr "Название аккаунта" msgid "Active" msgstr "Активный" -#: src/renderer/components/+add-cluster/add-cluster.tsx:176 +#: src/renderer/components/+add-cluster/add-cluster.tsx:196 #: src/renderer/components/cluster-manager/clusters-menu.tsx:116 msgid "Add Cluster" msgstr "" @@ -109,7 +109,7 @@ msgstr "Добавить привязки к {name}" #~ msgid "Add cluster" #~ msgstr "" -#: src/renderer/components/+add-cluster/add-cluster.tsx:204 +#: src/renderer/components/+add-cluster/add-cluster.tsx:223 msgid "Add cluster(s)" msgstr "" @@ -711,7 +711,7 @@ msgstr "Текущие фильтры:" msgid "Custom Resources" msgstr "" -#: src/renderer/components/+add-cluster/add-cluster.tsx:121 +#: src/renderer/components/+add-cluster/add-cluster.tsx:141 msgid "Custom.." msgstr "" @@ -1731,13 +1731,17 @@ msgstr "Persistent Volume Claims" msgid "Persistent Volumes" msgstr "Persistent Volumes" +#: src/renderer/components/+add-cluster/add-cluster.tsx:78 +msgid "Please select kube-config's context" +msgstr "" + #: src/renderer/components/+add-cluster/add-cluster.tsx:63 #~ msgid "Please select kubeconfig" #~ msgstr "" #: src/renderer/components/+add-cluster/add-cluster.tsx:64 -msgid "Please select kubeconfig context" -msgstr "" +#~ msgid "Please select kubeconfig context" +#~ msgstr "" #: src/renderer/components/+workloads-pods/pod-menu.tsx:50 msgid "Pod" @@ -1833,7 +1837,7 @@ msgstr "Комиссия" msgid "Proxy is used only for non-cluster communication." msgstr "" -#: src/renderer/components/+add-cluster/add-cluster.tsx:188 +#: src/renderer/components/+add-cluster/add-cluster.tsx:207 msgid "Proxy settings" msgstr "" @@ -2217,7 +2221,7 @@ msgstr "Тип секрета" msgid "Secrets" msgstr "Secrets" -#: src/renderer/components/+add-cluster/add-cluster.tsx:185 +#: src/renderer/components/+add-cluster/add-cluster.tsx:204 msgid "Select a context" msgstr "" @@ -2229,6 +2233,11 @@ msgstr "Выберите квоту..." #~ msgid "Select context" #~ msgstr "" +#: src/renderer/components/+add-cluster/add-cluster.tsx:52 +#: src/renderer/components/+add-cluster/add-cluster.tsx:52 +msgid "Select custom kube-config file" +msgstr "" + #: src/renderer/components/+add-cluster/add-cluster.tsx:173 #~ msgid "Select kubeconfig" #~ msgstr "" @@ -2571,6 +2580,11 @@ msgstr "Обновить версию" msgid "Usage" msgstr "Использование" +#: src/renderer/components/+add-cluster/add-cluster.tsx:53 +#: src/renderer/components/+add-cluster/add-cluster.tsx:53 +msgid "Use configuration" +msgstr "" + #: src/renderer/components/+user-management-roles-bindings/add-role-binding-dialog.tsx:190 msgid "Use same name for RoleBinding" msgstr "Использовать тоже имя для привязки ролей" diff --git a/src/renderer/components/+add-cluster/add-cluster.tsx b/src/renderer/components/+add-cluster/add-cluster.tsx index 49dc5ff88a..fe03fa904e 100644 --- a/src/renderer/components/+add-cluster/add-cluster.tsx +++ b/src/renderer/components/+add-cluster/add-cluster.tsx @@ -2,10 +2,12 @@ import "./add-cluster.scss" import React, { Fragment } from "react"; import { observer } from "mobx-react"; import { computed, observable } from "mobx"; +import { remote } from "electron"; import { KubeConfig } from "@kubernetes/client-node"; -import { Trans } from "@lingui/macro"; +import { _i18n } from "../../i18n"; +import { t, Trans } from "@lingui/macro"; import { Select, SelectOption } from "../select"; -import { FileInput, Input } from "../input"; +import { Input } from "../input"; import { AceEditor } from "../ace-editor"; import { Button } from "../button"; import { Icon } from "../icon"; @@ -33,14 +35,18 @@ export class AddCluster extends React.Component { @observable customConfig = "" componentDidMount() { - this.setLocalConfigPath(userStore.kubeConfigPath); + this.kubeConfigPath = userStore.kubeConfigPath; } componentWillUnmount() { userStore.markNewContextsAsSeen(); } - protected setLocalConfigPath(filePath: string) { + protected get kubeConfigPath() { + return userStore.kubeConfigPath; + } + + protected set kubeConfigPath(filePath: string) { try { const kubeConfig = loadConfig(filePath); validateConfig(kubeConfig); @@ -54,6 +60,19 @@ export class AddCluster extends React.Component { } } + selectKubeConfig = async () => { + const { dialog, BrowserWindow } = remote; + const { canceled, filePaths } = await dialog.showOpenDialog(BrowserWindow.getFocusedWindow(), { + defaultPath: this.kubeConfigPath, + properties: ["openFile", "showHiddenFiles"], + message: _i18n._(t`Select custom kube-config file`), + buttonLabel: _i18n._(t`Use configuration`), + }); + if (!canceled && filePaths.length) { + this.kubeConfigPath = filePaths[0]; + } + } + @computed get isCustom() { return this.newClusterConfig === this.custom; } @@ -179,25 +198,18 @@ export class AddCluster extends React.Component {

Add Cluster

-
- this.setLocalConfigPath(file.path)} - />