]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/dashboard: fix unmanged iscsi service creation
authorNizamudeen A <nia@redhat.com>
Wed, 24 Aug 2022 10:16:10 +0000 (15:46 +0530)
committerNizamudeen A <nia@redhat.com>
Tue, 13 Sep 2022 07:19:38 +0000 (12:49 +0530)
Resolves: rhbz#2080316

Signed-off-by: Nizamudeen A <nia@redhat.com>
(cherry picked from commit 7d157fe48e21945ef51e21f206639f9abfa44fa5)
(cherry picked from commit 55a0740ef777fb1cb01919a700c463bf6443939c)

src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/services/service-form/service-form.component.html
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/services/service-form/service-form.component.ts

index 986d8d3aa85c76c352824944a8e673c986df1a1f..db346efda65ea4d09b030b81273f5542c6427ece 100644 (file)
         </ng-container>
 
         <!-- iSCSI -->
-        <ng-container *ngIf="!serviceForm.controls.unmanaged.value && serviceForm.controls.service_type.value === 'iscsi'">
-          <!-- pool -->
-          <div class="form-group row">
-            <label i18n
-                   class="cd-col-form-label required"
-                   for="pool">Pool</label>
-            <div class="cd-col-form-input">
-              <select id="pool"
-                      name="pool"
-                      class="form-control"
-                      formControlName="pool">
-                <option *ngIf="pools === null"
-                        [ngValue]="null"
-                        i18n>Loading...</option>
-                <option *ngIf="pools && pools.length === 0"
-                        [ngValue]="null"
-                        i18n>-- No pools available --</option>
-                <option *ngIf="pools && pools.length > 0"
-                        [ngValue]="null"
-                        i18n>-- Select a pool --</option>
-                <option *ngFor="let pool of pools"
-                        [value]="pool.pool_name">{{ pool.pool_name }}</option>
-              </select>
-              <span class="invalid-feedback"
-                    *ngIf="serviceForm.showError('pool', frm, 'required')"
-                    i18n>This field is required.</span>
-            </div>
+        <!-- pool -->
+        <div class="form-group row"
+             *ngIf="serviceForm.controls.service_type.value === 'iscsi'">
+          <label i18n
+                 class="cd-col-form-label required"
+                 for="pool">Pool</label>
+          <div class="cd-col-form-input">
+            <select id="pool"
+                    name="pool"
+                    class="form-control"
+                    formControlName="pool">
+              <option *ngIf="pools === null"
+                      [ngValue]="null"
+                      i18n>Loading...</option>
+              <option *ngIf="pools && pools.length === 0"
+                      [ngValue]="null"
+                      i18n>-- No pools available --</option>
+              <option *ngIf="pools && pools.length > 0"
+                      [ngValue]="null"
+                      i18n>-- Select a pool --</option>
+              <option *ngFor="let pool of pools"
+                      [value]="pool.pool_name">{{ pool.pool_name }}</option>
+            </select>
+            <span class="invalid-feedback"
+                  *ngIf="serviceForm.showError('pool', frm, 'required')"
+                  i18n>This field is required.</span>
           </div>
+        </div>
 
+        <!-- fields in iSCSI which are hidden when unmanaged is true -->
+        <ng-container *ngIf="!serviceForm.controls.unmanaged.value && serviceForm.controls.service_type.value === 'iscsi'">
           <!-- trusted_ip_list -->
           <div class="form-group row">
             <label class="cd-col-form-label"
index b9954e384ab71ecabb94f76440a6811c368939e7..000a6bc536ce1ddd68b3a840a1ffc6daa501216c 100644 (file)
@@ -135,8 +135,7 @@ export class ServiceFormComponent extends CdForm implements OnInit {
         null,
         [
           CdValidators.requiredIf({
-            service_type: 'iscsi',
-            unmanaged: false
+            service_type: 'iscsi'
           })
         ]
       ],
@@ -563,6 +562,10 @@ export class ServiceFormComponent extends CdForm implements OnInit {
           serviceSpec['monitor_port'] = values['monitor_port'];
         }
         break;
+
+      case 'iscsi':
+        serviceSpec['pool'] = values['pool'];
+        break;
     }
 
     if (!values['unmanaged']) {
@@ -590,7 +593,6 @@ export class ServiceFormComponent extends CdForm implements OnInit {
           }
           break;
         case 'iscsi':
-          serviceSpec['pool'] = values['pool'];
           if (_.isString(values['trusted_ip_list']) && !_.isEmpty(values['trusted_ip_list'])) {
             serviceSpec['trusted_ip_list'] = values['trusted_ip_list'].trim();
           }