]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/blob
701ae11f27fd87920986658326c4c82bff16d130
[ceph-ci.git] /
1 <ng-container *ngIf="!!selection">
2   <cds-tabs type="contained"
3             theme="light">
4     <cds-tab heading="Details">
5       <table
6         class="cds--data-table--sort cds--data-table--no-border cds--data-table cds--data-table--md"
7         data-testid="rgw-storage-details"
8       >
9         <tbody>
10           @if( isTierMatch( TIER_TYPE_DISPLAY.LOCAL )){
11           <tr>
12             <td class="bold"
13                 i18n>
14               Zone Group
15               <cd-helper class="text-pre-wrap">
16                 <span>
17                   {{ zoneGroupText }}
18                 </span>
19               </cd-helper>
20             </td>
21             <td>{{ selection?.zonegroup_name }}</td>
22           </tr>
23           } @if(isTierMatch( TIER_TYPE_DISPLAY.LOCAL )){
24           <tr>
25             <td class="bold"
26                 i18n>
27               Placement Target
28               <cd-helper class="text-pre-wrap">
29                 <span>
30                   Placement Target defines the destination and rules for moving objects between
31                   storage tiers.
32                 </span>
33               </cd-helper>
34             </td>
35             <td>{{ selection?.placement_target }}</td>
36           </tr>
37           } @if(isTierMatch( TIER_TYPE_DISPLAY.CLOUD_TIER, TIER_TYPE_DISPLAY.GLACIER)){
38           <tr>
39             <td class="bold"
40                 i18n>
41               Target Path
42               <cd-helper class="text-pre-wrap">
43                 <span>
44                   {{ targetPathText }}
45                 </span>
46               </cd-helper>
47             </td>
48             <td>{{ selection?.target_path }}</td>
49           </tr>
50           <tr>
51             <td class="bold"
52                 i18n>
53               Access key
54               <cd-helper class="text-pre-wrap">
55                 <span>
56                   {{ targetAccessKeyText }}
57                 </span>
58               </cd-helper>
59             </td>
60             <td>
61               <div cdsCol
62                    [columnNumbers]="{ md: 4 }"
63                    class="d-flex">
64                 <input
65                   cdsPassword
66                   type="password"
67                   readonly
68                   id="access_key"
69                   [value]="selection?.access_key"
70                 />
71                 <button type="button"
72                         class="btn btn-light"
73                         cdPasswordButton="access_key"></button>
74                 <cd-copy-2-clipboard-button source="access_key"> </cd-copy-2-clipboard-button>
75               </div>
76             </td>
77           </tr>
78           <tr>
79             <td class="bold"
80                 i18n>
81               Secret key
82               <cd-helper class="text-pre-wrap">
83                 <span> {{ targetSecretKeyText }} </span>
84               </cd-helper>
85             </td>
86             <td>
87               <div cdsCol
88                    [columnNumbers]="{ md: 4 }"
89                    class="d-flex">
90                 <input
91                   cdsPassword
92                   type="password"
93                   readonly
94                   id="secret"
95                   [value]="selection?.secret"
96                 />
97                 <button type="button"
98                         class="btn btn-light"
99                         cdPasswordButton="secret"></button>
100                 <cd-copy-2-clipboard-button source="secret"> </cd-copy-2-clipboard-button>
101               </div>
102             </td>
103           </tr>
104           <tr>
105             <td class="bold"
106                 i18n>
107               Host Style
108               <cd-helper class="text-pre-wrap">
109                 <span>{{ hostStyleText }}</span>
110               </cd-helper>
111             </td>
112             <td>{{ selection?.host_style }}</td>
113           </tr>
114           <tr>
115             <td class="bold"
116                 i18n>
117               Head Object (Stub File)
118               <cd-helper class="text-pre-wrap">
119                 <span> {{ retainHeadObjectText }}</span>
120               </cd-helper>
121             </td>
122             <td>{{ selection?.retain_head_object ? 'Enabled' : 'Disabled' }}</td>
123           </tr>
124           <tr>
125             <td class="bold"
126                 i18n>
127               Allow Read Through
128               <cd-helper class="text-pre-wrap">
129                 <span>
130                   {{ allowReadThroughText }}
131                 </span>
132               </cd-helper>
133             </td>
134             <td>{{ selection?.allow_read_through ? 'Enabled' : 'Disabled' }}</td>
135           </tr>
136           } @if(isTierMatch(TIER_TYPE_DISPLAY.CLOUD_TIER, TIER_TYPE_DISPLAY.GLACIER) &&
137           (selection?.allow_read_through)) {
138           <tr>
139             <td class="bold"
140                 i18n>
141               Read through Restore Days
142               <cd-helper class="text-pre-wrap">
143                 <span>
144                   {{ readthroughrestoreDaysText }}
145                 </span>
146               </cd-helper>
147             </td>
148             <td>
149               {{ selection?.read_through_restore_days }}
150               {{ selection?.read_through_restore_days === 1 ? 'Day' : 'Days' }}
151             </td>
152           </tr>
153           } @if(isTierMatch( TIER_TYPE_DISPLAY.GLACIER)){
154           <tr>
155             <td class="bold"
156                 i18n>
157               Glacier Restore Days
158               <cd-helper class="text-pre-wrap">
159                 <span>
160                   {{ glacierRestoreDayText }}
161                 </span>
162               </cd-helper>
163             </td>
164             <td>  {{ selection?.glacier_restore_days }}
165               {{ selection?.glacier_restore_days === 1 ? 'Day' : 'Days' }}</td>
166           </tr>
167           <tr>
168             <td class="bold"
169                 i18n>
170               Glacier Restore Tier Type
171               <cd-helper class="text-pre-wrap">
172                 <span>
173                   {{ glacierRestoreTiertypeText }}
174                 </span>
175               </cd-helper>
176             </td>
177             <td>{{ selection?.glacier_restore_tier_type }}</td>
178           </tr>
179           } @if(isTierMatch( TIER_TYPE_DISPLAY.CLOUD_TIER, TIER_TYPE_DISPLAY.GLACIER)){
180           <tr>
181             <td class="bold"
182                 i18n>
183               Restore Storage Class
184               <cd-helper class="text-pre-wrap">
185                 <span>
186                   {{ restoreStorageClassText }}
187                 </span>
188               </cd-helper>
189             </td>
190             <td>{{ selection?.restore_storage_class }}</td>
191           </tr>
192           <tr>
193             <td class="bold"
194                 i18n>
195               Multipart Minimum Part Size
196               <cd-helper class="text-pre-wrap">
197                 <span>
198                   {{ multipartMinPartText }}
199                 </span>
200               </cd-helper>
201             </td>
202             <td>{{ selection?.multipart_min_part_size | dimlessBinary }}</td>
203           </tr>
204           <tr>
205             <td class="bold"
206                 i18n>
207               Multipart Sync Threshold
208               <cd-helper class="text-pre-wrap">
209                 <span>
210                   {{ multipartSyncThreholdText }}
211                 </span>
212               </cd-helper>
213             </td>
214             <td>{{ selection?.multipart_sync_threshold | dimlessBinary }}</td>
215           </tr>
216           } @if(selection?.acl_mappings.length > 0) {
217           <tr>
218             <td class="bold w-25"
219                 i18n>ACLs</td>
220             <td>
221               <ng-container *ngFor="let type of groupedACLs | keyvalue">
222                 <div class="mb-2">
223                   <div class="cds--label">{{ type.key }}:</div>
224                   <div *ngFor="let item of type.value"
225                        [cdsStack]="'horizontal'"
226                        class="mt-1">
227                     <cds-tag size="sm"
228                              class="tags-background-gray">
229                       {{ item.source_id }} : {{ item.dest_id }}
230                     </cds-tag>
231                   </div>
232                 </div>
233               </ng-container>
234             </td>
235           </tr>
236          }
237         </tbody>
238       </table>
239     </cds-tab>
240   </cds-tabs>
241 </ng-container>