public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
* Re: [pve-devel] Proxmox Backup API
       [not found] <CAPmH9Rybf23f1WP0gOKUR7US32DeEwTXfmKEG_+br4VSV_bfpg@mail.gmail.com>
@ 2025-07-02 20:17 ` Thomas Lamprecht
  2025-07-08  3:07   ` Dennis Klochko via pve-devel
       [not found]   ` <CAPmH9Rw9sy7EiLUMEKcjWogV5xOVenKJXwERUyW9Tb_vLyci8w@mail.gmail.com>
  0 siblings, 2 replies; 4+ messages in thread
From: Thomas Lamprecht @ 2025-07-02 20:17 UTC (permalink / raw)
  To: Dennis Klochko, pve-devel

Hello!

Am 25.06.25 um 04:57 schrieb Dennis Klochko:
> Please share what the official backup API for Proxmox is?

The basic idea is that you create a specialized storage plugin basing
of our backup provider one, while the base skeleton needs to be in Perl,
the actual code talking with your backup solution can be anything you
like and either interface with the perl plugin with some FFI or IPC
layer.

The base plugin has some [pod] (perl doc format) you can check out, and
there is now also a git repo that includes [example plugins].

If you have any specific questions feel free to ask them here, we're
in process of expanding examples and docs, whichs is part of the reason
why my reply comes a bit late; I wanted to finish preparing the first
publication of the example git repo.

[pod]: https://git.proxmox.com/?p=pve-storage.git;a=blob;f=src/PVE/BackupProvider/Plugin/Base.pm

[example plugins]: https://git.proxmox.com/?p=pve-storage-plugin-examples.git;a=summary

regards
 Thomas


_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [pve-devel] Proxmox Backup API
  2025-07-02 20:17 ` [pve-devel] Proxmox Backup API Thomas Lamprecht
@ 2025-07-08  3:07   ` Dennis Klochko via pve-devel
       [not found]   ` <CAPmH9Rw9sy7EiLUMEKcjWogV5xOVenKJXwERUyW9Tb_vLyci8w@mail.gmail.com>
  1 sibling, 0 replies; 4+ messages in thread
From: Dennis Klochko via pve-devel @ 2025-07-08  3:07 UTC (permalink / raw)
  To: Thomas Lamprecht; +Cc: Dennis Klochko, pve-devel

[-- Attachment #1: Type: message/rfc822, Size: 7394 bytes --]

From: Dennis Klochko <dennis.klochko@nakivo.com>
To: Thomas Lamprecht <t.lamprecht@proxmox.com>
Cc: pve-devel@lists.proxmox.com
Subject: Re: Proxmox Backup API
Date: Tue, 8 Jul 2025 06:07:41 +0300
Message-ID: <CAPmH9Rw9sy7EiLUMEKcjWogV5xOVenKJXwERUyW9Tb_vLyci8w@mail.gmail.com>

Hi Thomas,

Thank you for the extra information, that's very helpful.
Another question is about versioning of a plugin vs new Proxmox versions -
in what cases should the plugin be updated?

On Wed, Jul 2, 2025 at 11:17 PM Thomas Lamprecht <t.lamprecht@proxmox.com>
wrote:

> Hello!
>
> Am 25.06.25 um 04:57 schrieb Dennis Klochko:
> > Please share what the official backup API for Proxmox is?
>
> The basic idea is that you create a specialized storage plugin basing
> of our backup provider one, while the base skeleton needs to be in Perl,
> the actual code talking with your backup solution can be anything you
> like and either interface with the perl plugin with some FFI or IPC
> layer.
>
> The base plugin has some [pod] (perl doc format) you can check out, and
> there is now also a git repo that includes [example plugins].
>
> If you have any specific questions feel free to ask them here, we're
> in process of expanding examples and docs, whichs is part of the reason
> why my reply comes a bit late; I wanted to finish preparing the first
> publication of the example git repo.
>
> [pod]:
> https://git.proxmox.com/?p=pve-storage.git;a=blob;f=src/PVE/BackupProvider/Plugin/Base.pm
>
> [example plugins]:
> https://git.proxmox.com/?p=pve-storage-plugin-examples.git;a=summary
>
> regards
>  Thomas
>
>

-- 

Sincere regards,

*Dennis*

*_____________________________________*

Dennis

Dennis Klochko | Technology Alliance Program Manager | NAKIVO Inc. |
www.nakivo.com

E-mail: dennis.klochko@nakivo.com


*Dennis Klochko *| Technical Alliance Program Manager | Nakivo, Inc.|
*www.nakivo.com
<http://www.nakivo.com/>*

*E-mail*: dennis.klochko@nakivo.com

This email and any files transmitted with it are confidential and intended
solely for the use of the individual or entity to whom they are addressed.

If you have received this email in error or would like to prevent receipt
of similar messages in the future, please let the author know via reply and
delete it from your system. Note that any views or opinions presented in
this email are solely those of the author and do not necessarily represent
those of the company.

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [pve-devel] Proxmox Backup API
       [not found]   ` <CAPmH9Rw9sy7EiLUMEKcjWogV5xOVenKJXwERUyW9Tb_vLyci8w@mail.gmail.com>
@ 2025-07-08  6:33     ` Thomas Lamprecht
  0 siblings, 0 replies; 4+ messages in thread
From: Thomas Lamprecht @ 2025-07-08  6:33 UTC (permalink / raw)
  To: Dennis Klochko; +Cc: pve-devel

Hi Dennis,

Am 08.07.25 um 05:07 schrieb Dennis Klochko:
> Thank you for the extra information, that's very helpful.
> Another question is about versioning of a plugin vs new Proxmox versions -
> in what cases should the plugin be updated?

We had a short section about [api versioning] in the storage plugin
development wiki article already, I extended it slightly to provide
some more information.

[api versioning]: https://pve.proxmox.com/wiki/Storage_Plugin_Development#API_Versioning

In general, we do not try to make hard breaks if anyhow avoidable.
That means that we normally bump the API age alongside the API version,
especially for updates during a stable release series.
On new major releases, which are due roughly every two years, we might
reduce some technical debt and make bigger changes, but even there we
try hard to not fully reset the API age to zero, but rather try to still
support the last previous major version to make updates easier for our
users and also third-party integrations.

There is a link to an [example] for how one can handle returning the
API version inside a plugin such that it can be used for a broad range
of versions, and we got an [API changelog] file tracking historic API
changes in the pve-storage git repository, if you want to see what such
bumps can entail in practice.

[example]: https://git.proxmox.com/?p=pve-storage-plugin-examples.git;a=blob;f=backup-provider-directory/src/PVE/Storage/Custom/BackupProviderDirExamplePlugin.pm;h=57df944c0475d914e2171c5b29744376eb057a5c;hb=HEAD#l37

[API changelog]: https://git.proxmox.com/?p=pve-storage.git;a=blob;f=ApiChangeLog

- Thomas


_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [pve-devel] Proxmox Backup API
@ 2025-06-25  2:57 Dennis Klochko via pve-devel
  0 siblings, 0 replies; 4+ messages in thread
From: Dennis Klochko via pve-devel @ 2025-06-25  2:57 UTC (permalink / raw)
  To: pve-devel; +Cc: Dennis Klochko

[-- Attachment #1: Type: message/rfc822, Size: 5692 bytes --]

From: Dennis Klochko <dennis.klochko@nakivo.com>
To: pve-devel@lists.proxmox.com
Subject: Proxmox Backup API
Date: Wed, 25 Jun 2025 05:57:34 +0300
Message-ID: <CAPmH9Rybf23f1WP0gOKUR7US32DeEwTXfmKEG_+br4VSV_bfpg@mail.gmail.com>

Hi team,

Please share what the official backup API for Proxmox is?
-- 

Sincere regards,

*Dennis*

*_____________________________________*

Dennis

Dennis Klochko | Technology Alliance Program Manager | NAKIVO Inc. |
www.nakivo.com

E-mail: dennis.klochko@nakivo.com


*Dennis Klochko *| Technical Alliance Program Manager | Nakivo, Inc.|
*www.nakivo.com
<http://www.nakivo.com/>*

*E-mail*: dennis.klochko@nakivo.com

This email and any files transmitted with it are confidential and intended
solely for the use of the individual or entity to whom they are addressed.

If you have received this email in error or would like to prevent receipt
of similar messages in the future, please let the author know via reply and
delete it from your system. Note that any views or opinions presented in
this email are solely those of the author and do not necessarily represent
those of the company.

[-- Attachment #2: Type: text/plain, Size: 160 bytes --]

_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2025-07-08  6:33 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <CAPmH9Rybf23f1WP0gOKUR7US32DeEwTXfmKEG_+br4VSV_bfpg@mail.gmail.com>
2025-07-02 20:17 ` [pve-devel] Proxmox Backup API Thomas Lamprecht
2025-07-08  3:07   ` Dennis Klochko via pve-devel
     [not found]   ` <CAPmH9Rw9sy7EiLUMEKcjWogV5xOVenKJXwERUyW9Tb_vLyci8w@mail.gmail.com>
2025-07-08  6:33     ` Thomas Lamprecht
2025-06-25  2:57 Dennis Klochko via pve-devel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal