- pass gw_group to delete API in frontend
- when more than one gw groups present delete listener failing with error message: Multiple NVMe-oF gateway groups are configured. Please specify the 'gw_group' parameter in the request.
- added missing types, i18n
Fixes https://tracker.ceph.com/issues/71236
Signed-off-by: Afreen Misbah <afreen@ibm.com>
(cherry picked from commit
87ff77183d84066378618939a0a357a80d773e34)
deleteListenerModal() {
const listener = this.selection.first();
this.modalService.show(DeleteConfirmationModalComponent, {
- itemDescription: 'Listener',
+ itemDescription: $localize`Listener`,
actionDescription: 'delete',
- itemNames: [`listener ${listener.host_name} (${listener.traddr}:${listener.trsvcid})`],
+ itemNames: [
+ $localize`listener` + ' ' + `${listener.host_name} (${listener.traddr}:${listener.trsvcid})`
+ ],
submitActionObservable: () =>
this.taskWrapper.wrapTaskAroundCall({
task: new FinishedTask('nvmeof/listener/delete', {
}),
call: this.nvmeofService.deleteListener(
this.subsystemNQN,
+ this.group,
listener.host_name,
listener.traddr,
listener.trsvcid
it('should call deleteListener', () => {
const request = { host_name: 'ceph-node-02', traddr: '192.168.100.102', trsvcid: '4421' };
service
- .deleteListener(mockNQN, request.host_name, request.traddr, request.trsvcid)
+ .deleteListener(mockNQN, mockGroupName, request.host_name, request.traddr, request.trsvcid)
.subscribe();
const req = httpTesting.expectOne(
- `${API_PATH}/subsystem/${mockNQN}/listener/${request.host_name}/${request.traddr}?trsvcid=${request.trsvcid}`
+ `${API_PATH}/subsystem/${mockNQN}/listener/${request.host_name}/${request.traddr}?gw_group=${mockGroupName}&trsvcid=${request.trsvcid}`
);
expect(req.request.method).toBe('DELETE');
});
});
}
- deleteListener(subsystemNQN: string, hostName: string, traddr: string, trsvcid: string) {
+ deleteListener(
+ subsystemNQN: string,
+ group: string,
+ hostName: string,
+ traddr: string,
+ trsvcid: string
+ ) {
return this.http.delete(
`${API_PATH}/subsystem/${subsystemNQN}/listener/${hostName}/${traddr}`,
{
observe: 'response',
params: {
+ gw_group: group,
trsvcid
}
}
adrfam: number; // 0: IPv4, 1: IPv6
trsvcid: number; // 4420
id?: number; // for table
+ full_addr?: string; // for table
}
export interface NvmeofSubsystemNamespace {