Commit graph

6 commits

Author SHA1 Message Date
Andrey Kolkov
5b613836ee [backups] add restore jobs controller
Signed-off-by: Andrey Kolkov <androndo@gmail.com>
(cherry picked from commit 5e15a75d89)
Signed-off-by: Timofei Larkin <lllamnyp@gmail.com>
2026-01-08 19:17:26 +03:00
Timofei Larkin
16d82b13ad Velero backup controller impl (#1762)
## What this PR does

Implement a controller for BackupJobs referencing a Velero strategy. Creates a Backup.velero.io according to the template in the `Velero.strategy.backups.cozystack.io`.

### Release note

```release-note
[backups] Implement a backup strategy controller for Velero strategies.
```

Signed-off-by: Timofei Larkin <lllamnyp@gmail.com>
Co-authored-by: Andrey Kolkov <androndo@gmail.com>
Co-authored-by: Timofei Larkin <lllamnyp@gmail.com>
(cherry picked from commit 069a3ca9b0)
Signed-off-by: Timofei Larkin <lllamnyp@gmail.com>
2026-01-08 19:12:39 +03:00
Andrey Kolkov
deb8d22bc8 [backups] Scaffold a Velero strategy (#1742)
## What this PR does

This patch adds boilerplate code for a Velero strategy for the backups
API. Implementation can be added into the Reconcile function in a
subsequent PR.

###

```release-note
[backups] Add the boilerplate for a new Velero strategy for backups.
```

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Added Velero as a supported backup strategy, including a
cluster-scoped Velero resource type and CRD for creating Velero-backed
strategies.
* Backup job controller updated to recognize and dispatch Velero-backed
jobs, with status conditions exposed for monitoring progress and health.
* Introduced basic reconciliation flow for Velero strategy to enable
future behavior and observability.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

(cherry picked from commit 715509f57e)
Signed-off-by: Timofei Larkin <lllamnyp@gmail.com>
2026-01-08 19:09:32 +03:00
Timofei Larkin
64b7984e51 [backups] Stub the Job backup strategy controller (#1720)
## What this PR does

This PR introduces a bare-bones Job backup strategy API type and stubs
out all the boilerplate for a new controller that will handle this
strategy, as well as any others in the `strategy.backups.cozystack.io`
API group.

### Release note

```release-note
[backups] Create stubs and minimal implmentations for controllers for
the strategy.backups.cozystack.io API group.
```

(cherry picked from commit 1f0b5ff9ac)
Signed-off-by: Timofei Larkin <lllamnyp@gmail.com>
2026-01-08 19:09:03 +03:00
Timofei Larkin
789aca4c84 [backups] Build and deploy backup controller (#1685)
## What this PR does

This patch adds compilation and docker build steps for the backup
controller as well as adding a Helm chart to deploy it as part of the
PaaS bundles.

### Release note

```release-note
[backups] Build and deploy backup controller
```

(cherry picked from commit 89897914fa)
Signed-off-by: Timofei Larkin <lllamnyp@gmail.com>
2026-01-08 19:07:37 +03:00
Timofei Larkin
8b7bc9c1e1 [backups] Implement core backup Plan controller (#1640)
## What this PR does

This patch creates a new backups.cozystack.io API group which includes
backup-related resources owned exclusively by Cozystack core. A
cronjob-like controller is implemented to create backup jobs that will
be handled by appropriate third-party or external controllers.

### Release note

```release-note
[backups] Implement the core backup API and an accompanying controller.
```

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Adds a full backups system: create scheduled Plans (cron), run
BackupJobs with lifecycle phases (Pending→Running→Succeeded/Failed), and
produce Backup artifacts with metadata.
* Adds RestoreJobs to restore from stored Backups and track restore
progress/status.
* Exposes new API resources (Plan, BackupJob, Backup, RestoreJob) so
backups and restores can be declared and observed via the platform.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

(cherry picked from commit 67ecf3d0f6)
Signed-off-by: Timofei Larkin <lllamnyp@gmail.com>
2026-01-08 19:07:02 +03:00