mirror of https://github.com/rancher/ui.git
remove external harvester mode
This commit is contained in:
parent
4a5f7c0f12
commit
9d02902073
|
|
@ -176,6 +176,7 @@ export default Component.extend(NodeDriver, {
|
||||||
networks: get(this, 'globalStore').rawRequest({ url: `${ url }/v1/k8s.cni.cncf.io.networkattachmentdefinition` }),
|
networks: get(this, 'globalStore').rawRequest({ url: `${ url }/v1/k8s.cni.cncf.io.networkattachmentdefinition` }),
|
||||||
namespaces: get(this, 'globalStore').rawRequest({ url: `${ url }/v1/namespace` }),
|
namespaces: get(this, 'globalStore').rawRequest({ url: `${ url }/v1/namespace` }),
|
||||||
configmaps: get(this, 'globalStore').rawRequest({ url: `${ url }/v1/configmap` }),
|
configmaps: get(this, 'globalStore').rawRequest({ url: `${ url }/v1/configmap` }),
|
||||||
|
storageClass: get(this, 'globalStore').rawRequest({ url: `${ url }/v1/storage.k8s.io.storageclasses` }),
|
||||||
systemNamespace: get(this, 'globalStore').rawRequest({ url: `${ url }/v1/management.cattle.io.settings/system-namespaces` }),
|
systemNamespace: get(this, 'globalStore').rawRequest({ url: `${ url }/v1/management.cattle.io.settings/system-namespaces` }),
|
||||||
}).then((resp) => {
|
}).then((resp) => {
|
||||||
const images = resp.images.body.data || [];
|
const images = resp.images.body.data || [];
|
||||||
|
|
@ -254,24 +255,37 @@ export default Component.extend(NodeDriver, {
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
const storageClass = resp.storageClass.body.data || [];
|
||||||
|
const storageClassContent = storageClass.map((s) => {
|
||||||
|
const isDefault = s.metadata?.annotations?.['storageclass.kubernetes.io/is-default-class'] === 'true';
|
||||||
|
const label = isDefault ? `${ s.metadata.name } (${ this.intl.t('generic.default') })` : s.metadata.name;
|
||||||
|
|
||||||
|
return {
|
||||||
|
label,
|
||||||
|
value: s.metadata.name,
|
||||||
|
};
|
||||||
|
}) || [];
|
||||||
|
|
||||||
setProperties(this, {
|
setProperties(this, {
|
||||||
imageContent,
|
imageContent,
|
||||||
networkContent,
|
networkContent,
|
||||||
namespaceContent,
|
namespaceContent,
|
||||||
userDataContent,
|
userDataContent,
|
||||||
networkDataContent,
|
networkDataContent,
|
||||||
|
storageClassContent
|
||||||
});
|
});
|
||||||
}).catch((err) => {
|
}).catch((err) => {
|
||||||
setProperties(this, {
|
setProperties(this, {
|
||||||
imageContent: [],
|
imageContent: [],
|
||||||
networkContent: [],
|
networkContent: [],
|
||||||
namespaceContent: [],
|
namespaceContent: [],
|
||||||
userDataContent: [],
|
userDataContent: [],
|
||||||
networkDataContent: [],
|
networkDataContent: [],
|
||||||
namespaces: [],
|
namespaces: [],
|
||||||
vmAffinity: [],
|
vmAffinity: [],
|
||||||
nodeSchedulings: [],
|
nodeSchedulings: [],
|
||||||
podSchedulings: [],
|
podSchedulings: [],
|
||||||
|
storageClassContent: [],
|
||||||
})
|
})
|
||||||
|
|
||||||
const message = err.statusText || err.message;
|
const message = err.statusText || err.message;
|
||||||
|
|
@ -292,15 +306,6 @@ export default Component.extend(NodeDriver, {
|
||||||
return (get(this, 'cloudCredentials') || []).find((C) => C.id === get(this, 'model.cloudCredentialId'));
|
return (get(this, 'cloudCredentials') || []).find((C) => C.id === get(this, 'model.cloudCredentialId'));
|
||||||
}),
|
}),
|
||||||
|
|
||||||
|
|
||||||
isImported: computed('currentCredential.harvestercredentialConfig.clusterType', function() {
|
|
||||||
if (get(this, 'currentCredential') && get(this, 'currentCredential').harvestercredentialConfig) {
|
|
||||||
return get(this, 'currentCredential').harvestercredentialConfig.clusterType === 'imported';
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}),
|
|
||||||
|
|
||||||
isSystemNamespace(namespace) {
|
isSystemNamespace(namespace) {
|
||||||
if ( namespace.metadata && namespace.metadata.annotations && namespace.metadata.annotations['management.cattle.io/system-namespace'] === 'true' ) {
|
if ( namespace.metadata && namespace.metadata.annotations && namespace.metadata.annotations['management.cattle.io/system-namespace'] === 'true' ) {
|
||||||
return true;
|
return true;
|
||||||
|
|
|
||||||
|
|
@ -74,100 +74,19 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col span-6">
|
|
||||||
<label class="acc-label">
|
|
||||||
{{t "nodeDriver.harvester.diskSize.label"}}{{field-required}}
|
|
||||||
</label>
|
|
||||||
<div class="input-group">
|
|
||||||
{{input-integer
|
|
||||||
min=1
|
|
||||||
value=config.diskSize
|
|
||||||
classNames="form-control"
|
|
||||||
placeholder=(t "nodeDriver.harvester.diskSize.placeholder")
|
|
||||||
}}
|
|
||||||
<div class="input-group-addon bg-default">
|
|
||||||
{{t "nodeDriver.harvester.diskSize.unit"}}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col span-6">
|
<div class="col span-6">
|
||||||
<label class="acc-label">
|
<label class="acc-label">
|
||||||
{{t "nodeDriver.harvester.namespace.label"}}{{field-required}}
|
{{t "nodeDriver.harvester.namespace.label"}}{{field-required}}
|
||||||
</label>
|
</label>
|
||||||
|
|
||||||
{{#if isImported}}
|
<SearchableSelect
|
||||||
<SearchableSelect
|
@class="form-control"
|
||||||
@class="form-control"
|
@content={{namespaceContent}}
|
||||||
@content={{namespaceContent}}
|
@value={{config.vmNamespace}}
|
||||||
@value={{config.vmNamespace}}
|
@placeholder={{t "nodeDriver.harvester.namespace.placeholder"}}
|
||||||
@placeholder={{t "nodeDriver.harvester.namespace.placeholder"}}
|
/>
|
||||||
/>
|
|
||||||
{{else}}
|
|
||||||
{{input
|
|
||||||
type="text"
|
|
||||||
value=config.vmNamespace
|
|
||||||
classNames="form-control"
|
|
||||||
placeholder=(t "nodeDriver.harvester.namespace.placeholder")
|
|
||||||
}}
|
|
||||||
{{/if}}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
{{#if isImported}}
|
|
||||||
<div class="col span-6">
|
|
||||||
<label class="acc-label">
|
|
||||||
{{t "nodeDriver.harvester.imageName.label"}}{{field-required}}
|
|
||||||
</label>
|
|
||||||
<SearchableSelect
|
|
||||||
@class="form-control"
|
|
||||||
@content={{imageContent}}
|
|
||||||
@value={{config.imageName}}
|
|
||||||
@placeholder={{t "nodeDriver.harvester.imageName.placeholder"}}
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col span-6">
|
|
||||||
<label class="acc-label">
|
|
||||||
{{t "nodeDriver.harvester.networkName.label"}}{{field-required}}
|
|
||||||
</label>
|
|
||||||
<SearchableSelect
|
|
||||||
@class="form-control"
|
|
||||||
@content={{networkContent}}
|
|
||||||
@value={{config.networkName}}
|
|
||||||
@placeholder={{t "nodeDriver.harvester.networkName.placeholder"}}
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
{{else}}
|
|
||||||
<div class="col span-6">
|
|
||||||
<label class="acc-label">
|
|
||||||
{{t "nodeDriver.harvester.imageName.label"}}{{field-required}}
|
|
||||||
</label>
|
|
||||||
{{input
|
|
||||||
type="text"
|
|
||||||
value=config.imageName
|
|
||||||
classNames="form-control"
|
|
||||||
placeholder=(t "nodeDriver.harvester.imageName.placeholder")
|
|
||||||
}}
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col span-6">
|
|
||||||
<label class="acc-label">
|
|
||||||
{{t "nodeDriver.harvester.networkName.label"}}{{field-required}}
|
|
||||||
</label>
|
|
||||||
{{input
|
|
||||||
type="text"
|
|
||||||
value=config.networkName
|
|
||||||
classNames="form-control"
|
|
||||||
placeholder=(t "nodeDriver.harvester.networkName.placeholder")
|
|
||||||
}}
|
|
||||||
</div>
|
|
||||||
{{/if}}
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
<div class="col span-6">
|
<div class="col span-6">
|
||||||
<label class="acc-label">
|
<label class="acc-label">
|
||||||
{{t "nodeDriver.harvester.sshUser.label"}}{{field-required}}
|
{{t "nodeDriver.harvester.sshUser.label"}}{{field-required}}
|
||||||
|
|
@ -193,6 +112,52 @@
|
||||||
}}
|
}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col span-6">
|
||||||
|
<label class="acc-label">
|
||||||
|
{{t "nodeDriver.harvester.imageName.label"}}{{field-required}}
|
||||||
|
</label>
|
||||||
|
<SearchableSelect
|
||||||
|
@class="form-control"
|
||||||
|
@content={{imageContent}}
|
||||||
|
@value={{config.imageName}}
|
||||||
|
@placeholder={{t "nodeDriver.harvester.imageName.placeholder"}}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col span-6">
|
||||||
|
<label class="acc-label">
|
||||||
|
{{t "nodeDriver.harvester.diskSize.label"}}{{field-required}}
|
||||||
|
</label>
|
||||||
|
<div class="input-group">
|
||||||
|
{{input-integer
|
||||||
|
min=1
|
||||||
|
value=config.diskSize
|
||||||
|
classNames="form-control"
|
||||||
|
placeholder=(t "nodeDriver.harvester.diskSize.placeholder")
|
||||||
|
}}
|
||||||
|
<div class="input-group-addon bg-default">
|
||||||
|
{{t "nodeDriver.harvester.diskSize.unit"}}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col span-6">
|
||||||
|
<label class="acc-label">
|
||||||
|
{{t "nodeDriver.harvester.networkName.label"}}{{field-required}}
|
||||||
|
</label>
|
||||||
|
<SearchableSelect
|
||||||
|
@class="form-control"
|
||||||
|
@content={{networkContent}}
|
||||||
|
@value={{config.networkName}}
|
||||||
|
@placeholder={{t "nodeDriver.harvester.networkName.placeholder"}}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{/accordion-list-item}}
|
{{/accordion-list-item}}
|
||||||
|
|
||||||
|
|
@ -243,20 +208,18 @@
|
||||||
</div> --}}
|
</div> --}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
{{#if isImported}}
|
<div class="row">
|
||||||
<div class="row">
|
<div class="col span-6">
|
||||||
<div class="col span-6">
|
<label class="acc-label">
|
||||||
<label class="acc-label">
|
{{t "nodeDriver.harvester.userData.template.label"}}
|
||||||
{{t "nodeDriver.harvester.userData.template.label"}}
|
</label>
|
||||||
</label>
|
<SearchableSelect
|
||||||
<SearchableSelect
|
@class="form-control"
|
||||||
@class="form-control"
|
@content={{userDataContent}}
|
||||||
@content={{userDataContent}}
|
@value={{config.userData}}
|
||||||
@value={{config.userData}}
|
/>
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
</div>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col span-12">
|
<div class="col span-12">
|
||||||
|
|
@ -275,20 +238,18 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{{#if isImported}}
|
<div class="row">
|
||||||
<div class="row">
|
<div class="col span-6">
|
||||||
<div class="col span-6">
|
<label class="acc-label">
|
||||||
<label class="acc-label">
|
{{t "nodeDriver.harvester.networkData.template.label"}}
|
||||||
{{t "nodeDriver.harvester.networkData.template.label"}}
|
</label>
|
||||||
</label>
|
<SearchableSelect
|
||||||
<SearchableSelect
|
@class="form-control"
|
||||||
@class="form-control"
|
@content={{networkDataContent}}
|
||||||
@content={{networkDataContent}}
|
@value={{config.networkData}}
|
||||||
@value={{config.networkData}}
|
/>
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
</div>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col span-12">
|
<div class="col span-12">
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue