103 Commits

Author SHA1 Message Date
Niels de Vos
aa837d1ddf Fix detecting default annotation on VolumeGroupSnapshotClass
The `IsDefaultAnnotation()` function has been extended to check for the
correct default annotation, taking the Kind of the object into
consideration.
2024-02-22 12:23:17 +01:00
Madhu Rajanna
0fe3abb9f1 fix method name in logging
updating code to use correct method
names for logging.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2024-02-20 08:41:14 +01:00
xing-yang
3ed4ebd3d8 Use client v7 2024-01-30 17:40:58 -05:00
Niels de Vos
9e58d4cc61 Selector in VolumeGroupSnapshotSource API should be optional 2024-01-26 17:27:25 +01:00
Raunak Pradip Shah
0bd355cf29 update API names in group snapshot content to be consistent with volume snapshots 2024-01-05 11:29:51 -08:00
Raunak Pradip Shah
bffa5ae25f Update to API for static group volume snapshots 2024-01-05 11:29:42 -08:00
Raunak Pradip Shah
47e71db17f add comments and fix unit test 2023-12-07 09:20:11 -08:00
Raunak Pradip Shah
875662b365 Add finalizer to indicate volume snapshot is part of a group 2023-12-06 16:16:30 -08:00
Sunny Song
7603bf1c4e Update dependency go modules for k8s v1.29.0-rc.1 2023-11-29 22:24:11 +00:00
Raunak Pradip Shah
060ee23d6d Delete individual volume snapshots as part of the group snapshot delete API and prevent users from deleting individual volume snapshots if it is part of an existing group snapshot
Also revert commit bb29899ca3.
2023-11-17 14:24:55 +05:30
Raunak Pradip Shah
facefbad6e add DeleteVolumeGroupSnapshot API to delete group snapshot 2023-11-03 13:14:00 +05:30
Shubham Pampattiwar
ff71329d8c Update VolumeSnapshot and VolumeSnapshotContent using JSON patch
fix unit tests

operate on cloned copy

revert to update call for removeSnapshotFinalizer

fix content delete finalizer
2023-09-15 12:17:38 -07:00
Raunak Pradip Shah
21acc924d7 Fix typos 2023-05-03 21:21:32 +05:30
Raunak Pradip Shah
1a93d9f551 Add volume snapshot ref details to group snapshot 2023-05-03 21:21:32 +05:30
Raunak Pradip Shah
e26501e510 Add reference details to volume group snapshot content status 2023-05-03 21:21:32 +05:30
Raunak Pradip Shah
871312988b Added create group volume snapshot functionality 2023-05-03 21:21:32 +05:30
Raunak Pradip Shah
09b36e73ae Add syncGroupSnapshotContent and related functions 2023-05-03 21:21:32 +05:30
Raunak Pradip Shah
3c32e81fe0 SyncUnreadyGroupSnapshot and related functions 2023-05-03 21:21:32 +05:30
Raunak Pradip Shah
a574b8780c -Introduce volume group snapshot functionality include initializing queues and caches in snapshotter
- Introduce new flag for volume group snapshots and run worker if flag is enabled
- Introduce the main controller for group snapshots in snapshot-controller
2023-05-03 21:21:32 +05:30
Humble Chirammal
461143ec25 update client package with go 1.19 formatting changes
Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
2022-09-14 08:26:30 +05:30
Humble Chirammal
d34102faae make the formatting errors based on go 1.19
Reference#
https://github.com/kubernetes-csi/csi-release-tools/pull/203

Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
2022-09-13 19:37:34 +05:30
Kubernetes Prow Robot
9ffdb95103 Merge pull request #690 from humblec/rbac
replace serviceAccountName key, rbac and cleanup in the code
2022-04-25 07:39:39 -07:00
Humble Chirammal
f30b14f8fd make use of short declaration of variables and cleanup code
Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
2022-04-13 08:35:03 +05:30
Raunak Pradip Shah
454fb36092 Update code with new type logic 2022-04-07 19:24:41 +05:30
Raunak Pradip Shah
5b578e8573 - Introduce new flag to enable feature to prevent unauthorised volume mode conversion
- Changes to snapshot controller to read the volume mode from the PV and add it to SourceVolumeMode field in VolumeSnapshotContent
2022-04-07 19:08:18 +05:30
Raunak Pradip Shah
5b3a927d2a Vendored deps 2022-03-24 21:40:29 +05:30
Raunak Pradip Shah
d300796fab - Update snapshotter module to v6
- Update snapshotter client module to v5
- Update go version in client modules to v1.17
2022-03-23 08:59:19 +05:30
Ubuntu
21fc337b87 feat: Implement distributed snapshotting 2021-12-24 20:03:31 +00:00
Grant Griffiths
ad7dfe6045 Revert patch for empty finalizers
Signed-off-by: Grant Griffiths <ggriffiths@purestorage.com>
2021-10-05 15:38:57 -07:00
Grant Griffiths
d14e2eea8f Use patch for snapshot-controller when there are no finalizers
- Also address PR feedback re: avoid a deepCopy for annotations patch

Signed-off-by: Grant Griffiths <ggriffiths@purestorage.com>
2021-09-29 16:43:02 -07:00
Grant Griffiths
e1f82e4f1a Add patch for delete annotation
Signed-off-by: Grant Griffiths <ggriffiths@purestorage.com>
2021-09-28 15:54:15 -07:00
Grant Griffiths
3b9f0e2c72 Fix unit tests and don't patch with empty finalizers
Signed-off-by: Grant Griffiths <ggriffiths@purestorage.com>
2021-09-28 14:29:40 -07:00
Grant Griffiths
2039ad9101 checkandBindSnapshotContent with patch tested
Signed-off-by: Grant Griffiths <ggriffiths@purestorage.com>
2021-09-24 11:11:15 -07:00
Grant Griffiths
36b6b879ba add content finalizer patch
Signed-off-by: Grant Griffiths <ggriffiths@purestorage.com>
2021-09-23 14:05:17 -07:00
Grant Griffiths
afff04176d WIP
Signed-off-by: Grant Griffiths <ggriffiths@purestorage.com>
2021-09-23 14:05:17 -07:00
Grant Griffiths
0476dcedcc Refactor http server and register leaderelection health check
- Needed to start the http server outside of pkg/metric
- We needed this because we want to add other endpoints to the server

Signed-off-by: Grant Griffiths <ggriffiths@purestorage.com>
2021-08-10 11:44:12 -07:00
shahra
8f35f9f0d0 Update documentation for snapshot controller validation 2021-07-20 20:45:12 +05:30
Pranshu Srivastava
60824e54a5 Add "SnapshotCreated" and "SnapshotReady" events for snapshot-controller 2021-07-05 19:21:00 +05:30
Kubernetes Prow Robot
d6d967c79d Merge pull request #527 from ggriffiths/removeannvs_beingcreated_returncontent
Return VolumeSnapshotContent from various functions instead of nil
2021-06-17 01:54:18 -07:00
Grant Griffiths
5cf92fc01a Return VolumeSnapshotContent from various functions instead of nil
Signed-off-by: Grant Griffiths <ggriffiths@purestorage.com>
2021-06-14 10:47:05 -07:00
Humble Chirammal
206fecb9f1 Allow tuning Common-controller Ratelimiter with retryIntervalStart & retryIntervalMax
This patch adds two new parameters `retryIntervalStart & retryIntervalMax`
which can be configured to adjust the ratelimiters of snapshotqueue and contentqueue
in the controller.

Signed-off-by: Humble Chirammal <hchiramm@redhat.com>

```release-note
 `retry-interval-start` and `retry-interval-max` arguments are added to common-controller
  which controls retry interval of failed volume snapshot creation and deletion.
  These values set the ratelimiter for snapshot and content queues.
```

Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
2021-06-11 23:29:17 +05:30
prateekpandey14
533ed886dc Move snapshot validations to validation-webhook directory
Signed-off-by: prateekpandey14 <prateekpandey14@gmail.com>
2021-03-14 13:39:57 +05:30
xing-yang
2a7c550b18 Change ReadyToUse in Snapshot based on caller input
ReadyToUse in Snapshot will be updated based on ReadyToUse in Content.
ReadytoUse in Snapshot will also be updated when caller indicates it should
be changed to false when an error occurrs.
2020-12-16 14:35:57 +00:00
xing-yang
730e6f6458 Update to client/v4 2020-12-14 18:50:10 +00:00
xing-yang
5069c99ec3 Update controller based on snapshot v1 apis 2020-12-11 21:13:47 +00:00
Grant Griffiths
941821bf99 Add snapshot controller metrics
Signed-off-by: Grant Griffiths <grant@portworx.com>
2020-12-02 22:18:18 -08:00
xiangqian
6f237c2a6d using csi driver from PV instead of from StorageClass
resolve comments
2020-12-01 17:23:35 -08:00
shahra
b9139fab75 Allow creation of snapshot content if pvc finalizer exists,
even if pvc is marked for deletion.
2020-10-30 18:17:32 -07:00
Jan Safranek
73f72bd7b6 Fix panic when source PVC does not exist
checkAndUpdateSnapshotClass must always return a snapshot, even though it
fails somewhere in ctrl.SetDefaultSnapshotClass.

Add unit tests for that.
2020-09-29 14:53:48 +02:00
xing-yang
a2ac03c740 Update to v3 2020-09-08 21:25:47 +00:00