]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/blob
b3a26cb15ccd0d7c526cd00f81afade0ff5f3414
[ceph-ci.git] /
1 <cd-modal [modalRef]="activeModal">
2   <ng-container i18n="form title"
3                 class="modal-title">{{ action | titlecase }} {{ resource | upperFirst }}</ng-container>
4
5   <ng-container class="modal-content">
6     <form name="subvolumegroupForm"
7           #formDir="ngForm"
8           [formGroup]="subvolumegroupForm"
9           novalidate>
10       <div class="modal-body">
11         <div class="form-group row">
12           <label class="cd-col-form-label required"
13                  for="subvolumegroupName"
14                  i18n>Name</label>
15           <div class="cd-col-form-input">
16             <input class="form-control"
17                    type="text"
18                    placeholder="subvolumegroup name..."
19                    id="subvolumegroupName"
20                    name="subvolumegroupName"
21                    formControlName="subvolumegroupName"
22                    autofocus>
23             <span class="invalid-feedback"
24                   *ngIf="subvolumegroupForm.showError('subvolumegroupName', formDir, 'required')"
25                   i18n>This field is required.</span>
26             <span class="invalid-feedback"
27                   *ngIf="subvolumegroupForm.showError('subvolumegroupName', formDir, 'notUnique')"
28                   i18n>The subvolumegroup already exists.</span>
29           </div>
30         </div>
31
32         <!-- Volume name -->
33         <div class="form-group row">
34           <label class="cd-col-form-label"
35                  for="volumeName"
36                  i18n>Volume name</label>
37           <div class="cd-col-form-input">
38             <input class="form-control"
39                    id="volumeName"
40                    name="volumeName"
41                    formControlName="volumeName">
42           </div>
43         </div>
44
45         <!-- Size -->
46         <div class="form-group row">
47           <label class="cd-col-form-label"
48                  for="size"
49                  i18n>Size
50             <cd-helper>The size of the subvolumegropup is specified by setting a quota on it.
51                   If left blank or put 0, then quota will be infinite</cd-helper>
52           </label>
53           <div class="cd-col-form-input">
54             <input class="form-control"
55                    type="text"
56                    id="size"
57                    name="size"
58                    formControlName="size"
59                    i18n-placeholder
60                    placeholder="e.g., 10GiB"
61                    defaultUnit="GiB"
62                    cdDimlessBinary>
63           </div>
64         </div>
65
66         <!-- CephFS Pools -->
67         <div class="form-group row">
68           <label class="cd-col-form-label"
69                  for="pool"
70                  i18n>Pool
71             <cd-helper>By default, the data_pool_layout of the parent directory is selected.</cd-helper>
72           </label>
73           <div class="cd-col-form-input">
74             <select class="form-select"
75                     id="pool"
76                     name="pool"
77                     formControlName="pool">
78               <option *ngFor="let pool of dataPools"
79                       [value]="pool.pool">{{ pool.pool }}</option>
80             </select>
81           </div>
82         </div>
83
84         <!-- UID -->
85         <div class="form-group row">
86           <label class="cd-col-form-label"
87                  for="uid"
88                  i18n>UID</label>
89           <div class="cd-col-form-input">
90             <input class="form-control"
91                    type="number"
92                    placeholder="subvolumegroup UID..."
93                    id="uid"
94                    name="uid"
95                    formControlName="uid">
96           </div>
97         </div>
98
99         <!-- GID -->
100         <div class="form-group row">
101           <label class="cd-col-form-label"
102                  for="gid"
103                  i18n>GID</label>
104           <div class="cd-col-form-input">
105             <input class="form-control"
106                    type="number"
107                    placeholder="subvolumegroup GID..."
108                    id="gid"
109                    name="gid"
110                    formControlName="gid">
111           </div>
112         </div>
113
114         <!-- Mode -->
115         <div class="form-group row">
116           <label class="cd-col-form-label"
117                  for="mode"
118                  i18n>Mode
119             <cd-helper>Permissions for the directory. Default mode is 755 which is rwxr-xr-x</cd-helper>
120           </label>
121           <div class="cd-col-form-input">
122             <cd-checked-table-form [data]="scopePermissions"
123                                    [columns]="columns"
124                                    [form]="subvolumegroupForm"
125                                    inputField="mode"
126                                    [isTableForOctalMode]="true"
127                                    [scopes]="scopes"></cd-checked-table-form>
128           </div>
129         </div>
130       </div>
131
132       <div class="modal-footer">
133         <cd-form-button-panel (submitActionEvent)="submit()"
134                               [form]="subvolumegroupForm"
135                               [submitText]="(action | titlecase) + ' ' + (resource | upperFirst)"></cd-form-button-panel>
136       </div>
137     </form>
138   </ng-container>
139 </cd-modal>