Skip to content

Commit 46acb9d

Browse files
committed
NE: UI cleanup
1 parent 193f885 commit 46acb9d

File tree

5 files changed

+5
-139
lines changed

5 files changed

+5
-139
lines changed

ui/public/locales/en.json

Lines changed: 2 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1095,6 +1095,7 @@
10951095
"label.external.details.tooltip": "Details that will be passed to the external provisioner while deploying an instance",
10961096
"label.externalprovisioner": "External provisioner",
10971097
"label.external.link": "External link",
1098+
"label.external.network.provider": "External Network Provider",
10981099
"label.externalid": "External Id",
10991100
"label.externalloadbalanceripaddress": "External load balancer IP address.",
11001101
"label.extra": "Extra arguments",
@@ -4238,21 +4239,5 @@
42384239
"Compute*Month": "Compute * Month",
42394240
"GB*Month": "GB * Month",
42404241
"IP*Month": "IP * Month",
4241-
"Policy*Month": "Policy * Month",
4242-
"ExternalNetwork": "External Network",
4243-
"label.external.network": "External Network",
4244-
"label.external.network.provider": "External Network Provider",
4245-
"label.extension": "Extension",
4246-
"label.services": "Services",
4247-
"label.add.external.network.provider": "Add External Network Provider",
4248-
"label.not.added": "Not Added",
4249-
"label.refresh": "Refresh",
4250-
"label.run.action": "Run Action",
4251-
"label.enable.provider": "Enable Provider",
4252-
"label.disable.provider": "Disable Provider",
4253-
"label.external.network.service": "External Network Service",
4254-
"message.confirm.disable.external.network.provider": "Are you sure you want to disable the External Network provider?",
4255-
"message.no.network.orchestrator.extensions": "No NetworkOrchestrator extensions found. Please create one first via createExtension API.",
4256-
"message.extension.services.from.capabilities": "Services are derived automatically from the extension's network.service.capabilities detail.",
4257-
"message.select.extension": "Please select an extension."
4242+
"Policy*Month": "Policy * Month"
42584243
}

ui/src/config/section/network.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,7 @@ export default {
213213
{
214214
api: 'runCustomAction',
215215
icon: 'thunderbolt-outlined',
216-
label: 'label.run.action',
216+
label: 'label.run.custom.action',
217217
dataView: true,
218218
show: (record) => {
219219
return 'runCustomAction' in store.getters.apis &&

ui/src/views/infra/network/ServiceProvidersTab.vue

Lines changed: 0 additions & 101 deletions
Original file line numberDiff line numberDiff line change
@@ -18,16 +18,6 @@
1818
<template>
1919
<div>
2020
<a-spin :spinning="fetchLoading">
21-
<!-- Add Extension Provider button: only shown when extension is registered but NSP not yet created -->
22-
<a-button
23-
v-if="isExtensionTab && !nsps[tabKey]"
24-
:disabled="!('addNetworkServiceProvider' in $store.getters.apis)"
25-
type="dashed"
26-
style="width: 100%; margin-bottom: 12px;"
27-
@click="handleAddExternalNetworkProvider">
28-
<template #icon><plus-outlined /></template>
29-
{{ $t('label.add.external.network.provider') }}
30-
</a-button>
3121
<a-tabs
3222
:tabPosition="device === 'mobile' ? 'top' : 'left'"
3323
:animated="false"
@@ -75,44 +65,6 @@
7565
</a-tabs>
7666
</a-spin>
7767

78-
<!-- Add External Network Provider modal: selects extension (services come from extension capabilities) -->
79-
<a-modal
80-
:visible="showAddExtNetProviderModal"
81-
:title="$t('label.add.external.network.provider')"
82-
:maskClosable="false"
83-
:footer="null"
84-
@cancel="showAddExtNetProviderModal = false">
85-
<a-spin :spinning="extensionProviderLoading">
86-
<a-form layout="vertical">
87-
<a-form-item :label="$t('label.extension')">
88-
<a-select
89-
v-model:value="extNetProviderForm.extensionId"
90-
showSearch
91-
optionFilterProp="label"
92-
:filterOption="(input, option) => option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0">
93-
<a-select-option
94-
v-for="ext in availableExtensions"
95-
:key="ext.id"
96-
:value="ext.id"
97-
:label="ext.name">
98-
{{ ext.name }} <span style="color: #aaa">({{ ext.state }})</span>
99-
</a-select-option>
100-
</a-select>
101-
<div v-if="availableExtensions.length === 0" style="color: #faad14; margin-top: 4px;">
102-
{{ $t('message.no.network.orchestrator.extensions') }}
103-
</div>
104-
<div v-else style="color: #8c8c8c; font-size: 12px; margin-top: 4px;">
105-
{{ $t('message.extension.services.from.capabilities') }}
106-
</div>
107-
</a-form-item>
108-
<div class="action-button">
109-
<a-button @click="showAddExtNetProviderModal = false">{{ $t('label.cancel') }}</a-button>
110-
<a-button type="primary" :disabled="!extNetProviderForm.extensionId" @click="handleAddExtNetProvider">{{ $t('label.ok') }}</a-button>
111-
</div>
112-
</a-form>
113-
</a-spin>
114-
</a-modal>
115-
11668
<div v-if="showFormAction">
11769
<keep-alive v-if="currentAction.component">
11870
<a-modal
@@ -241,12 +193,6 @@ export default {
241193
showFormAction: false,
242194
currentAction: {},
243195
tabKey: 'BaremetalDhcpProvider',
244-
showAddExtNetProviderModal: false,
245-
extensionProviderLoading: false,
246-
availableExtensions: [],
247-
extNetProviderForm: {
248-
extensionId: null
249-
},
250196
registeredExtensions: []
251197
}
252198
},
@@ -1223,56 +1169,9 @@ export default {
12231169
this.form = reactive({})
12241170
this.rules = reactive({})
12251171
},
1226-
handleAddExternalNetworkProvider () {
1227-
// Open the extension picker modal — services come from extension capabilities
1228-
this.extNetProviderForm = { extensionId: null }
1229-
this.extensionProviderLoading = true
1230-
this.showAddExtNetProviderModal = true
1231-
getAPI('listExtensions', { type: 'NetworkOrchestrator' }).then(json => {
1232-
this.availableExtensions = (json.listextensionsresponse && json.listextensionsresponse.extension) || []
1233-
if (this.availableExtensions.length > 0) {
1234-
this.extNetProviderForm.extensionId = this.availableExtensions[0].id
1235-
}
1236-
}).catch(error => {
1237-
this.$notifyError(error)
1238-
}).finally(() => {
1239-
this.extensionProviderLoading = false
1240-
})
1241-
},
12421172
_updateServicesFromExtension (extensionId) {
12431173
// No longer needed — services are derived from extension capabilities server-side
12441174
},
1245-
async handleAddExtNetProvider () {
1246-
if (this.extensionProviderLoading) return
1247-
const extensionId = this.extNetProviderForm.extensionId
1248-
if (!extensionId) {
1249-
this.$message.error(this.$t('message.select.extension'))
1250-
return
1251-
}
1252-
const ext = this.availableExtensions.find(e => e.id === extensionId)
1253-
const extName = ext ? ext.name : ''
1254-
if (!extName) {
1255-
this.$message.error(this.$t('message.select.extension'))
1256-
return
1257-
}
1258-
1259-
this.extensionProviderLoading = true
1260-
try {
1261-
// registerExtension auto-creates the NSP (Enabled) with services from network.service.capabilities
1262-
await postAPI('registerExtension', {
1263-
extensionid: extensionId,
1264-
resourceid: this.resource.id,
1265-
resourcetype: 'PhysicalNetwork'
1266-
})
1267-
this.$message.success(this.$t('label.add.external.network.provider') + ': ' + extName)
1268-
this.showAddExtNetProviderModal = false
1269-
this.fetchData()
1270-
} catch (error) {
1271-
this.$notifyError(error)
1272-
} finally {
1273-
this.extensionProviderLoading = false
1274-
}
1275-
},
12761175
fetchData () {
12771176
if (!this.resource || !('id' in this.resource)) {
12781177
return

ui/src/views/offering/AddNetworkOffering.vue

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -138,15 +138,6 @@
138138
<a-select-option key="" >{{ }}</a-select-option>
139139
<a-select-option :value="'NSX'" :label="$t('label.nsx')"> {{ $t('label.nsx') }} </a-select-option>
140140
<a-select-option :value="'Netris'" :label="$t('label.netris')"> {{ $t('label.netris') }} </a-select-option>
141-
<!-- Dynamic extension-based providers registered to guest physical networks.
142-
The value is the extension/NSP name so the provider is correctly resolved. -->
143-
<a-select-option
144-
v-for="ext in availableExtensionProviders"
145-
:key="ext.name"
146-
:value="ext.name"
147-
:label="ext.name">
148-
{{ ext.name }} <span style="color: #aaa">({{ $t('label.external.network.provider') }})</span>
149-
</a-select-option>
150141
</a-select>
151142
</a-form-item>
152143
</a-col>

ui/src/views/offering/AddVpcOffering.vue

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -86,15 +86,6 @@
8686
<a-select-option key="" >{{ }}</a-select-option>
8787
<a-select-option :value="'NSX'" :label="$t('label.nsx')"> {{ $t('label.nsx') }} </a-select-option>
8888
<a-select-option :value="'Netris'" :label="$t('label.netris')"> {{ $t('label.netris') }} </a-select-option>
89-
<!-- Dynamic extension-based providers registered to guest physical networks.
90-
The value is the extension/NSP name for correct provider resolution. -->
91-
<a-select-option
92-
v-for="ext in availableExtensionProviders"
93-
:key="ext.name"
94-
:value="ext.name"
95-
:label="ext.name">
96-
{{ ext.name }} <span style="color: #aaa">({{ $t('label.external.network.provider') }})</span>
97-
</a-select-option>
9889
</a-select>
9990
</a-form-item>
10091
</a-col>
@@ -161,8 +152,8 @@
161152
<CheckBoxSelectPair
162153
:resourceKey="item.name"
163154
:checkBoxLabel="item.description"
164-
:forExternalNetProvider="form.provider === 'NSX' || form.provider === 'Netris' || isExternalNetworkProvider"
165-
:defaultCheckBoxValue="form.provider === 'NSX' || form.provider === 'Netris' || isExternalNetworkProvider"
155+
:forExternalNetProvider="form.provider === 'NSX' || form.provider === 'Netris'"
156+
:defaultCheckBoxValue="form.provider === 'NSX' || form.provider === 'Netris'"
166157
:selectOptions="item.provider"
167158
@handle-checkselectpair-change="handleSupportedServiceChange"/>
168159
</a-list-item>

0 commit comments

Comments
 (0)