[pve-devel] [Patch V3 manager 4/8] Add function that selects the desired plugin.

2020-04-15 Thread Wolfgang Link
These functions also extract the data required for the plugin. Signed-off-by: Wolfgang Link --- PVE/API2/ACME.pm | 27 +++ 1 file changed, 27 insertions(+) diff --git a/PVE/API2/ACME.pm b/PVE/API2/ACME.pm index e69a563b..7bb3ab95 100644 --- a/PVE/API2/ACME.pm +++ b/PVE

[pve-devel] [Patch V3 manager 5/8] Adapt acme node config parser and rename the function.

2020-04-15 Thread Wolfgang Link
Signed-off-by: Wolfgang Link --- PVE/API2/ACME.pm | 26 ++ PVE/NodeConfig.pm | 44 ++-- 2 files changed, 48 insertions(+), 22 deletions(-) diff --git a/PVE/API2/ACME.pm b/PVE/API2/ACME.pm index 7bb3ab95..d215739b 100644 --- a/PVE

[pve-devel] [Patch V3 manager 8/8] Add libproxmox-acme to the dependencies.

2020-04-15 Thread Wolfgang Link
It is a build dependency as it is needed for the man generator. Signed-off-by: Wolfgang Link --- debian/control | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/debian/control b/debian/control index 5df624df..4b0de491 100644 --- a/debian/control +++ b/debian/control

[pve-devel] [Patch V3 acme 08/13] Refactor extract_callenge for code reuse.

2020-04-15 Thread Wolfgang Link
Signed-off-by: Wolfgang Link --- src/PVE/ACME/Challenge.pm | 47 +++ 1 file changed, 47 insertions(+) diff --git a/src/PVE/ACME/Challenge.pm b/src/PVE/ACME/Challenge.pm index 40d32b6..649c228 100644 --- a/src/PVE/ACME/Challenge.pm +++ b/src/PVE/ACME

[pve-devel] [Patch V3 acme 09/13] Create the plugin config.

2020-04-15 Thread Wolfgang Link
. Signed-off-by: Wolfgang Link --- src/PVE/ACME/StandAlone.pm | 21 + 1 file changed, 21 insertions(+) diff --git a/src/PVE/ACME/StandAlone.pm b/src/PVE/ACME/StandAlone.pm index f48d638..0b4aaae 100644 --- a/src/PVE/ACME/StandAlone.pm +++ b/src/PVE/ACME/StandAlone.pm @@ -12,6 +12,27

[pve-devel] (no subject)

2020-04-15 Thread Wolfgang Link
>From Wolfgang Link # This line is ignored. From: Wolfgang Link Reply-To: Subject: RFC for ACME DNS Challenge V3 In-Reply-To: The acme_sh project is used as a DNS API plugin system. So we can reuse the already defiend plugins. It is used as subplugins. The acme.sh script is repla

[pve-devel] [Patch V3 acme 04/13] Add funtion to set DNSAPI variable

2020-04-15 Thread Wolfgang Link
acme.sh DNS plugins expect a configuration in which the login information is stored. We pass the credentials with the command. This function supports the expected behavior of the plugins. Signed-off-by: Wolfgang Link --- src/proxmox-acme | 19 +++ 1 file changed, 19 insertions

[pve-devel] [Patch V3 manager 1/8] Use the plugin architecture.

2020-04-15 Thread Wolfgang Link
And remove the call of standalone plugin directly. Prepare all necessary data for the plugin. Signed-off-by: Wolfgang Link --- PVE/API2/ACME.pm | 35 +++ 1 file changed, 27 insertions(+), 8 deletions(-) diff --git a/PVE/API2/ACME.pm b/PVE/API2/ACME.pm index

[pve-devel] [Patch V3 acme 05/13] Implement feature setup and teardown functionality.

2020-04-15 Thread Wolfgang Link
We use these functions to add and remove a txt record via the dnsapi. Signed-off-by: Wolfgang Link --- src/proxmox-acme | 68 1 file changed, 68 insertions(+) diff --git a/src/proxmox-acme b/src/proxmox-acme index b4e01d8..ff9fec8 100644

[pve-devel] [Patch V3 acme 01/13] Add Debian Buildsystem config

2020-04-15 Thread Wolfgang Link
Signed-off-by: Wolfgang Link --- .gitignore | 5 + Makefile | 40 debian/changelog | 5 + debian/compat| 1 + debian/control | 17 + debian/copyright | 22

[pve-devel] [Patch V3 manager 2/8] Extend node config in the acme section.

2020-04-15 Thread Wolfgang Link
Allow additional domains with different sub-plugins, However, only one domain per additional entry is permitted. Signed-off-by: Wolfgang Link --- PVE/NodeConfig.pm | 38 ++ 1 file changed, 38 insertions(+) diff --git a/PVE/NodeConfig.pm b/PVE/NodeConfig.pm

[pve-devel] [Patch V3 cluster] Add ACME plugin config file to cluster files

2020-04-15 Thread Wolfgang Link
Signed-off-by: Wolfgang Link --- data/PVE/Cluster.pm | 1 + data/src/status.c | 1 + 2 files changed, 2 insertions(+) diff --git a/data/PVE/Cluster.pm b/data/PVE/Cluster.pm index 068d626..56704ec 100644 --- a/data/PVE/Cluster.pm +++ b/data/PVE/Cluster.pm @@ -54,6 +54,7 @@ my $observed

[pve-devel] [Patch V3 acme 11/13] Add DNSChallenge Plugin

2020-04-15 Thread Wolfgang Link
This plugin calls the custom script acme.sh and uses the implementation of the DNS API. Signed-off-by: Wolfgang Link --- debian/control | 3 +- src/Makefile | 1 + src/PVE/ACME/DNSChallenge.pm | 198 +++ 3 files changed, 201

[pve-devel] [Patch V3 acme 03/13] Remove unnecessary Code and fixes.

2020-04-15 Thread Wolfgang Link
This Code is not required in the Proxmox environment. We know in our environment what we have as a tool-change. Fix Code what does not work because variable or functions are missing. Signed-off-by: Wolfgang Link --- src/proxmox-acme | 476 --- 1 file

[pve-devel] [Patch V3 acme 06/13] Add submodule acme.sh for DNS plugins

2020-04-15 Thread Wolfgang Link
Copy the DNS plugins form acme.sh The project acme.sh can be found here. https://github.com/Neilpang/acme.sh Signed-off-by: Wolfgang Link --- .gitmodules | 3 ++ Makefile | 10 - acme.sh | 1 + src/Makefile | 117 +++ 4 files

[pve-devel] [Patch V3 acme 13/13] Implement function to resolve all subplugins

2020-04-15 Thread Wolfgang Link
This function helps to retrieve all subplugins that are supported by the plugins. This will later be used as an enumeration for entering parameters. Signed-off-by: Wolfgang Link --- src/PVE/ACME.pm | 21 + src/PVE/ACME/DNSChallenge.pm | 4 src/PVE/ACME

[pve-devel] [Patch V3 acme 02/13] Copy the needed function form acme.sh

2020-04-15 Thread Wolfgang Link
For the thin wrapper around acme.sh DNS plugins, the required functions are copied. The project acme.sh can be found here. https://github.com/Neilpang/acme.sh Signed-off-by: Wolfgang Link --- Makefile | 1 + src/proxmox-acme | 806 +++ 2

[pve-devel] [Patch V3 acme 10/13] Use the caller's data instead of extracting it yourself.

2020-04-15 Thread Wolfgang Link
Add the server in the data structure to return it. Signed-off-by: Wolfgang Link --- src/PVE/ACME/StandAlone.pm | 41 -- 1 file changed, 13 insertions(+), 28 deletions(-) diff --git a/src/PVE/ACME/StandAlone.pm b/src/PVE/ACME/StandAlone.pm index 0b4aaae

[pve-devel] [Patch V3 acme 07/13] Move code from pve-common

2020-04-15 Thread Wolfgang Link
Signed-off-by: Wolfgang Link --- src/Makefile | 9 + src/PVE/ACME.pm| 533 + src/PVE/ACME/Challenge.pm | 22 ++ src/PVE/ACME/StandAlone.pm | 71 + 4 files changed, 635 insertions(+) create mode 100644 src/PVE/ACME.pm create

[pve-devel] [Patch V3 acme 12/13] Add debug mode

2020-04-15 Thread Wolfgang Link
This can be used at setup time to get feedback on the DNS plugin parameters. Signed-off-by: Wolfgang Link --- src/proxmox-acme | 21 +++-- 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/src/proxmox-acme b/src/proxmox-acme index ff9fec8..566588f 100644 --- a/src

[pve-devel] [Patch V2 acme 07/12] Move code from pve-common

2020-03-31 Thread Wolfgang Link
Signed-off-by: Wolfgang Link --- src/Makefile | 9 + src/PVE/ACME.pm| 533 + src/PVE/ACME/Challenge.pm | 22 ++ src/PVE/ACME/StandAlone.pm | 71 + 4 files changed, 635 insertions(+) create mode 100644 src/PVE/ACME.pm create

[pve-devel] [Patch V2 acme 09/12] Add function setup and teardown.

2020-03-31 Thread Wolfgang Link
These are the two main functions that a plugin should offer. Setup creates the endpoint at which Letsencrypt does the validation, teardown does the cleanup. Signed-off-by: Wolfgang Link --- src/PVE/ACME.pm| 43 ++ src/PVE/ACME/StandAlone.pm | 16

[pve-devel] [Patch V2 cluster] Add ACME plugin config file to cluster files

2020-03-31 Thread Wolfgang Link
Signed-off-by: Wolfgang Link --- data/PVE/Cluster.pm | 1 + data/src/status.c | 1 + 2 files changed, 2 insertions(+) diff --git a/data/PVE/Cluster.pm b/data/PVE/Cluster.pm index 068d626..b410003 100644 --- a/data/PVE/Cluster.pm +++ b/data/PVE/Cluster.pm @@ -54,6 +54,7 @@ my $observed

[pve-devel] [Patch V2 acme 06/12] Add submodule acme.sh for DNS plugins

2020-03-31 Thread Wolfgang Link
Copy the DNS plugins form acme.sh The project acme.sh can be found here. https://github.com/Neilpang/acme.sh Signed-off-by: Wolfgang Link --- .gitmodules | 3 ++ Makefile | 10 - acme.sh | 1 + src/Makefile | 119 +++ 4 files

[pve-devel] [Patch V2 common 3/3] Register acme-plugin-format

2020-03-31 Thread Wolfgang Link
Signed-off-by: Wolfgang Link --- src/PVE/JSONSchema.pm | 7 +++ 1 file changed, 7 insertions(+) diff --git a/src/PVE/JSONSchema.pm b/src/PVE/JSONSchema.pm index 3eb38eb..0c655bc 100644 --- a/src/PVE/JSONSchema.pm +++ b/src/PVE/JSONSchema.pm @@ -183,6 +183,13 @@ sub parse_storage_id

[pve-devel] [Patch V2 acme 12/12] Add debug mode

2020-03-31 Thread Wolfgang Link
This can be used at setup time to get feedback on the DNS plugin parameters. Signed-off-by: Wolfgang Link --- src/proxmox-acme | 21 +++-- 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/src/proxmox-acme b/src/proxmox-acme index 1cfb8f6..89eee1c 100644 --- a/src

[pve-devel] [Patch V2 acme 01/12] Add Debian Buildsystem config

2020-03-31 Thread Wolfgang Link
Signed-off-by: Wolfgang Link --- .gitignore | 5 + Makefile | 40 debian/changelog | 5 + debian/compat| 1 + debian/control | 17 + debian/copyright | 16

[pve-devel] [Patch V2 acme 11/12] Add DNSChallenge Plugin

2020-03-31 Thread Wolfgang Link
This plugin calls the custom script acme.sh and uses the implementation of the DNS API. Signed-off-by: Wolfgang Link --- debian/control | 3 +- src/Makefile | 1 + src/PVE/ACME.pm | 1 + src/PVE/ACME/DNSChallenge.pm | 197

[pve-devel] [Patch V2 acme 03/12] Remove unnecessary Code and fixes.

2020-03-31 Thread Wolfgang Link
This Code is not required in the Proxmox environment. We know in our environment what we have as a tool-change. Fix Code what does not work because variable or functions are missing. Signed-off-by: Wolfgang Link --- src/proxmox-acme | 476 --- 1 file

[pve-devel] [Patch V2 acme 04/12] Add funtion to set DNSAPI variable

2020-03-31 Thread Wolfgang Link
acme.sh DNS plugins expect a configuration in which the login information is stored. We pass the credentials with the command. This function supports the expected behavior of the plugins. Signed-off-by: Wolfgang Link --- src/proxmox-acme | 13 + 1 file changed, 13 insertions

[pve-devel] [Patch V2 acme 05/12] Implement feature setup and teardown functionality.

2020-03-31 Thread Wolfgang Link
We use these functions to add and remove a txt record via the dnsapi. Signed-off-by: Wolfgang Link --- src/proxmox-acme | 68 1 file changed, 68 insertions(+) diff --git a/src/proxmox-acme b/src/proxmox-acme index f7a6757..1cfb8f6 100644

[pve-devel] RFC for ACME DNS Challenge V2

2020-03-31 Thread Wolfgang Link
The acme_sh project is used as a DNS API plugin system. So we can reuse the already defiend plugins. I add it as a submodule. The acme.sh script is replaced by proxmox-acme, which contains the function required to operate the DNSAPI plug-ins. The login information is saved in the file plugin.cfg

[pve-devel] [Patch V2 acme 02/12] Copy the needed function form acme.sh

2020-03-31 Thread Wolfgang Link
For the thin wrapper around acme.sh DNS plugins, the required functions are copied. The project acme.sh can be found here. https://github.com/Neilpang/acme.sh Signed-off-by: Wolfgang Link --- Makefile | 1 + src/proxmox-acme | 806 +++ 2

[pve-devel] [Patch V2 manager 3/8] Remove unused code

2020-03-31 Thread Wolfgang Link
Signed-off-by: Wolfgang Link --- PVE/NodeConfig.pm | 7 --- 1 file changed, 7 deletions(-) diff --git a/PVE/NodeConfig.pm b/PVE/NodeConfig.pm index 94f7287e..6a75ee32 100644 --- a/PVE/NodeConfig.pm +++ b/PVE/NodeConfig.pm @@ -235,13 +235,6 @@ sub parse_acme { return $res; } -sub

[pve-devel] [Patch V2 common 1/3] Move the code to proxmox-acme and add a dependency on it.

2020-03-31 Thread Wolfgang Link
Signed-off-by: Wolfgang Link --- debian/control | 1 + src/PVE/ACME.pm| 533 - src/PVE/ACME/Challenge.pm | 22 -- src/PVE/ACME/StandAlone.pm | 71 - 4 files changed, 1 insertion(+), 626 deletions(-) delete mode 100644 src/PVE

[pve-devel] [Patch V2 acme 10/12] Refactor extract_callenge for code reuse.

2020-03-31 Thread Wolfgang Link
Signed-off-by: Wolfgang Link --- src/PVE/ACME.pm| 15 +++ src/PVE/ACME/StandAlone.pm | 2 ++ 2 files changed, 17 insertions(+) diff --git a/src/PVE/ACME.pm b/src/PVE/ACME.pm index c10dca2..7c0794a 100644 --- a/src/PVE/ACME.pm +++ b/src/PVE/ACME.pm @@ -573,4 +573,19

[pve-devel] [Patch V2 acme 08/12] Create the plugin config.

2020-03-31 Thread Wolfgang Link
-by: Wolfgang Link --- src/PVE/ACME/Challenge.pm | 62 ++ src/PVE/ACME/StandAlone.pm | 16 ++ 2 files changed, 78 insertions(+) diff --git a/src/PVE/ACME/Challenge.pm b/src/PVE/ACME/Challenge.pm index 40d32b6..b261476 100644 --- a/src/PVE/ACME/Challenge.pm

[pve-devel] [Patch V2 manager 1/8] Use the plugin architecture.

2020-03-31 Thread Wolfgang Link
And remove the call of standalone plugin directly. Signed-off-by: Wolfgang Link --- PVE/API2/ACME.pm | 5 + 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/PVE/API2/ACME.pm b/PVE/API2/ACME.pm index b1bb6261..8bd6a924 100644 --- a/PVE/API2/ACME.pm +++ b/PVE/API2/ACME.pm @@ -4,7

[pve-devel] [Patch V2 manager 7/8] Add the ACME plugin capabilities to the API.

2020-03-31 Thread Wolfgang Link
Signed-off-by: Wolfgang Link --- PVE/CLI/pvenode.pm | 8 +++- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/PVE/CLI/pvenode.pm b/PVE/CLI/pvenode.pm index d9e41a8e..e8c2005e 100644 --- a/PVE/CLI/pvenode.pm +++ b/PVE/CLI/pvenode.pm @@ -5,12 +5,11 @@ use warnings; use PVE

[pve-devel] [Patch V2 manager 4/8] Add the config parser and convert the old config to a new one.

2020-03-31 Thread Wolfgang Link
Signed-off-by: Wolfgang Link --- PVE/API2/ACME.pm | 16 +-- PVE/NodeConfig.pm | 67 +-- 2 files changed, 73 insertions(+), 10 deletions(-) diff --git a/PVE/API2/ACME.pm b/PVE/API2/ACME.pm index 8bd6a924..ba25d153 100644 --- a/PVE/API2/ACME.pm

[pve-devel] [Patch V2 manager 5/8] Add libproxmox-acme-perl to pveversion

2020-03-31 Thread Wolfgang Link
Signed-off-by: Wolfgang Link --- PVE/API2/APT.pm | 1 + 1 file changed, 1 insertion(+) diff --git a/PVE/API2/APT.pm b/PVE/API2/APT.pm index 08345ec9..0bb9cf0f 100644 --- a/PVE/API2/APT.pm +++ b/PVE/API2/APT.pm @@ -550,6 +550,7 @@ __PACKAGE__->register_method({ libpve-guest-com

[pve-devel] [Patch V2 manager 6/8] Create ACME Plugin config.

2020-03-31 Thread Wolfgang Link
With this configuration it is possible to use many different plugins with different providers and users. Signed-off-by: Wolfgang Link --- PVE/API2/ACMEPlugin.pm | 120 + PVE/API2/Cluster.pm| 6 +++ PVE/API2/Makefile | 1 + PVE/CLI/pvenode.pm

[pve-devel] [Patch V2 manager 8/8] Add libproxmox-acme to the dependencies.

2020-03-31 Thread Wolfgang Link
It is a build dependency as it is needed for the man generator. Signed-off-by: Wolfgang Link --- debian/control | 2 ++ 1 file changed, 2 insertions(+) diff --git a/debian/control b/debian/control index ec5267a4..1bb292e9 100644 --- a/debian/control +++ b/debian/control @@ -9,6 +9,7 @@ Build

[pve-devel] [Patch V2 common 2/3] Reuse id parse code.

2020-03-31 Thread Wolfgang Link
The storage_id is the same as the plugin_id. Signed-off-by: Wolfgang Link --- src/PVE/JSONSchema.pm | 13 + 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/PVE/JSONSchema.pm b/src/PVE/JSONSchema.pm index fa405ac..3eb38eb 100644 --- a/src/PVE/JSONSchema.pm +++ b/src

[pve-devel] [Patch V2 manager 2/8] Extend node config in the acme section.

2020-03-31 Thread Wolfgang Link
Allow more than one domain entry, but only one domain per entry is allowed. Before that, the Acme parameter could have multiple domains. Signed-off-by: Wolfgang Link --- PVE/NodeConfig.pm | 47 ++- 1 file changed, 42 insertions(+), 5 deletions

[pve-devel] [PATCH docs] update link for YubiKey documentation

2020-05-11 Thread Wolfgang Link
Signed-off-by: Wolfgang Link --- pveum.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pveum.adoc b/pveum.adoc index 7998d16..4fbaa86 100644 --- a/pveum.adoc +++ b/pveum.adoc @@ -279,7 +279,7 @@ password into the user's 'Key IDs' field. Please refer to the https

Re: [pve-devel] applied: [zsync] fix: check for incremental sync snapshot.

2020-03-19 Thread Wolfgang Link
> On March 19, 2020 1:05 PM Thomas Lamprecht wrote: > > > On 3/19/20 11:51 AM, Fabian Ebner wrote: > > Hi, > > this does fix an issue when the receiving side has the most recent > > snapshot, but not the 'old_snap' one. And of course testing for 'last_snap' > > is correct, since that one

[pve-devel] [PATCH V3] Revision of the pvesr documentation

2020-03-17 Thread Wolfgang Link
Improvement of grammar and punctuation. Clarify the HA limitations. Remove future tense in some sentences. It is not good to use it in technical/scientific papers. Rewrite some sentences to improve understanding. --- pvesr.adoc | 112 ++--- 1 file

[pve-devel] [zsync] fix: check for incremental sync snapshot.

2020-03-18 Thread Wolfgang Link
For an incremental sync you need the last_snap on both sides. --- pve-zsync | 13 - 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/pve-zsync b/pve-zsync index ea3178e..893baf0 100755 --- a/pve-zsync +++ b/pve-zsync @@ -931,6 +931,7 @@ sub snapshot_destroy { } }

Re: [pve-devel] [zsync] fix: check for incremental sync snapshot.

2020-03-18 Thread Wolfgang Link
arch 18, 2020 7:51 AM Wolfgang Link wrote: > > > > > > For an incremental sync you need the last_snap on both sides. > > --- > > pve-zsync | 13 - > > 1 file changed, 4 insertions(+), 9 deletions(-) > > > > diff --git a/pve-zsync b/pve-zsyn

Re: [pve-devel] [PATCH pve-zsync 0/1] Allow pve-zsync jobs to share dest

2020-06-16 Thread Wolfgang Link
Hi, thank you for this patch and the work. I will look at this patch and give you feedback. Regards Wolfgang > On 06/16/2020 8:53 PM Bruce Wainer wrote: > > > By flipping Source and Dest in snapshot_get and snapshot_exist, we can allow > multiple sync jobs to share the same source. >

Re: [pve-devel] [pve-zsync] Discussion/Feedback: Extending pve-zsync to handle intervening snapshots

2020-06-15 Thread Wolfgang Link
Hello, I think that's a good idea. However, I am not sure whether the additional flag described in point 1 is necessary, since old jobs already have an independent dest dataset. So the new logic should not conflict it. I think it would be great to rewrite the "snapshot_get" and

Re: [pve-devel] [PATCH pve-zsync 0/1] Allow pve-zsync jobs to share dest

2020-06-23 Thread Wolfgang Link
firmation. What is the next step? > Thank you, > Bruce > > > On Jun 22, 2020, at 7:43 AM, Wolfgang Link wrote: > > > > Look good to me > > I tested it and it works. There are no upgrade problems. > > Even if jobs already exist. > > > > Regards >

Re: [pve-devel] [PATCH pve-zsync 0/1] Allow pve-zsync jobs to share dest

2020-06-22 Thread Wolfgang Link
Look good to me I tested it and it works. There are no upgrade problems. Even if jobs already exist. Regards Wolfgang > On 06/17/2020 6:44 AM Wolfgang Link wrote: > > > Hi, > > thank you for this patch and the work. > I will look at this patch and give you f

<    5   6   7   8   9   10