]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-ci.git/blob
ee790712d16810112268808a62b96c2f1ebbedd6
[ceph-ci.git] /
1 <cd-alert-panel
2   *ngIf="(snapScheduleModuleStatus$ | async) === false"
3   type="info"
4   spacingClass="mb-3"
5   i18n
6   class="align-items-center"
7   actionName="Enable"
8   (action)="enableSnapshotSchedule()"
9 >
10   In order to access the snapshot scheduler feature, the snap_scheduler module must be enabled
11 </cd-alert-panel>
12
13 <ng-template
14   #pathTpl
15   let-row="data.row">
16   <span
17     class="fw-bold"
18     [ngbTooltip]="fullpathTpl"
19     triggers="click:blur">
20     {{ row.pathForSelection?.split?.("@")?.[0] | path }}
21   </span>
22
23   <span
24   *ngIf="row.active; else inactiveStatusTpl">
25     <i
26       [ngClass]="[icons.success, icons.large]"
27       ngbTooltip="{{ row.pathForSelection?.split?.('@')?.[0] }} is active"
28       class="text-success"
29     ></i>
30   </span>
31
32   <ng-template #inactiveStatusTpl>
33     <i
34       [ngClass]="[icons.warning, icons.large]"
35       class="text-warning"
36       ngbTooltip="{{ row.pathForSelection?.split?.('@')?.[0] }} has been deactivated"
37     ></i>
38   </ng-template>
39
40   <ng-template #fullpathForSelectionTpl>
41     <span
42       data-toggle="tooltip"
43       [title]="row.pathForSelection"
44       class="font-monospace"
45       >{{ row.pathForSelection?.split?.("@")?.[0] }}
46       <cd-copy-2-clipboard-button
47         *ngIf="row.pathForSelection"
48         [source]="row.pathForSelection?.split?.('@')?.[0]"
49         [byId]="false"
50         [showIconOnly]="true"
51       >
52       </cd-copy-2-clipboard-button>
53     </span>
54   </ng-template>
55 </ng-template>
56
57 <ng-template
58   #retentionTpl
59   let-row="data.row">
60   <ul *ngIf="row.retentionCopy.length; else noDataTpl">
61     <li *ngFor="let ret of row.retentionCopy">{{ ret }}</li>
62   </ul>
63 </ng-template>
64
65 <ng-template
66   #subvolTpl
67   let-row="data.row">
68   <span *ngIf="row.subvol; else noDataTpl">
69     {{row.subvol}}
70   </span>
71 </ng-template>
72
73
74
75 <ng-template #noDataTpl>-</ng-template>
76
77 <cd-table
78   [data]="snapshotSchedules$ | async"
79   *ngIf="snapScheduleModuleStatus$ | async"
80   columnMode="flex"
81   [columns]="columns"
82   selectionType="single"
83   [hasDetails]="false"
84   (fetchData)="fetchData()"
85   (updateSelection)="updateSelection($event)"
86 >
87   <div class="table-actions">
88     <cd-table-actions
89       [permission]="permissions.cephfs"
90       [selection]="selection"
91       class="btn-group"
92       [tableActions]="tableActions$ | async"
93     >
94     </cd-table-actions>
95   </div>
96 </cd-table>