]> git.apps.os.sepia.ceph.com Git - ceph.git/blob
5274cf73a5569481324148773c557c2fce07b986
[ceph.git] /
1 <div class="row">
2   <div class="col-sm-12 col-lg-12">
3     <div>
4       <cd-alert-panel   *ngIf="!rgwModuleStatus"
5                         type="info"
6                         spacingClass="mb-3"
7                         i18n>In order to access the import/export feature, the rgw module must be enabled
8         <a class="text-decoration-underline"
9            (click)="enableRgwModule()">
10            Enable the Object Gateway Module</a>
11       </cd-alert-panel>
12       <cd-alert-panel   *ngIf="restartGatewayMessage"
13                         type="warning"
14                         spacingClass="mb-3"
15                         i18n>Please restart all Ceph Object Gateway instances in all zones to ensure consistent multisite configuration updates.
16         <a class="text-decoration-underline"
17            routerLink="/services">
18            Cluster->Services</a>
19       </cd-alert-panel>
20       <cd-table-actions class="btn-group mb-4 me-2"
21                         [permission]="permission"
22                         [selection]="selection"
23                         [tableActions]="createTableActions">
24       </cd-table-actions>
25       <span *ngIf="showMigrateAction">
26         <cd-table-actions class="btn-group mb-4 me-2 secondary"
27                           [permission]="permission"
28                           [btnColor]="'light'"
29                           [selection]="selection"
30                           [tableActions]="migrateTableAction">
31         </cd-table-actions>
32       </span>
33       <cd-table-actions class="btn-group mb-4 me-2"
34                         [permission]="permission"
35                         [btnColor]="'light'"
36                         [selection]="selection"
37                         [tableActions]="importAction">
38       </cd-table-actions>
39       <cd-table-actions class="btn-group mb-4 me-2"
40                         [permission]="permission"
41                         [btnColor]="'light'"
42                         [selection]="selection"
43                         [tableActions]="exportAction">
44       </cd-table-actions>
45     </div>
46     <div class="card">
47       <div class="card-header"
48            i18n>Topology Viewer</div>
49       <div class="card-body">
50         <div class="row">
51           <div class="col-sm-6 col-lg-6 tree-container">
52             <i *ngIf="loadingIndicator"
53                [ngClass]="[icons.large, icons.spinner, icons.spin]"></i>
54             <tree-root #tree
55                        [nodes]="nodes"
56                        [options]="treeOptions"
57                        (updateData)="onUpdateData()">
58               <ng-template #treeNodeTemplate
59                            let-node>
60                 <span *ngIf="node.data.name"
61                       class="me-3">
62                   <span *ngIf="(node.data.show_warning)">
63                     <i  class="text-danger"
64                         i18n-title
65                         [title]="node.data.warning_message"
66                         [ngClass]="icons.danger"></i>
67                   </span>
68                   <i [ngClass]="node.data.icon"></i>
69                     {{ node.data.name }}
70                 </span>
71                 <span class="badge badge-success me-2"
72                       *ngIf="node.data.is_default">
73                   default
74                 </span>
75                 <span class="badge badge-warning me-2"
76                       *ngIf="node.data.is_master">
77                   master
78                 </span>
79                 <span class="badge badge-warning me-2"
80                       *ngIf="node.data.secondary_zone">
81                   secondary-zone
82                 </span>
83                 <div class="btn-group align-inline-btns"
84                      *ngIf="node.isFocused"
85                      role="group">
86                   <div [title]="editTitle"
87                        i18n-title>
88                     <button type="button"
89                             class="btn btn-light dropdown-toggle-split ms-1"
90                             (click)="openModal(node, true)"
91                             [disabled]="getDisable() || node.data.secondary_zone">
92                       <i [ngClass]="[icons.edit]"></i>
93                     </button>
94                   </div>
95                   <div [title]="deleteTitle"
96                        i18n-title>
97                     <button type="button"
98                             class="btn btn-light ms-1"
99                             [disabled]="isDeleteDisabled(node) || node.data.secondary_zone"
100                             (click)="delete(node)">
101                       <i [ngClass]="[icons.destroy]"></i>
102                     </button>
103                   </div>
104                 </div>
105               </ng-template>
106             </tree-root>
107           </div>
108           <div class="col-sm-6 col-lg-6 metadata"
109                *ngIf="metadata">
110             <legend>{{ metadataTitle }}</legend>
111             <div>
112               <cd-table-key-value cdTableDetail
113                                   [data]="metadata">
114               </cd-table-key-value>
115             </div>
116           </div>
117         </div>
118       </div>
119     </div>
120   </div>
121 </div>