proxmox_notify's api functions have been changed so that they take
ownership of config structs.
Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
Tested-by: Max Carrara <m.carrara@proxmox.com>
Reviewed-by: Max Carrara <m.carrara@proxmox.com>
Instead of passing literal template strings to the notification
system, we now only pass an identifier. This identifier will be used
load the template files from a product-specific directory.
Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
Tested-by: Max Carrara <m.carrara@proxmox.com>
Reviewed-by: Max Carrara <m.carrara@proxmox.com>
This fixes an issue with `openssl-probe` calling `setenv` when (issued
via the `native-tls` crate with the ACME client) which crashes perl.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Use `proxmox-http-error::HttpError` instead of
`proxmox-notify::api::ApiError`.
Also factoring out the digest decoding into a small helper.
Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
Note: this is more of a soft requirement, since as long as the Notify
module isn't loaded we don't need the latest version.
This is important to keep in mind since we do not currently have a
`pmg-rs` notify `Context` implementation and thus cannot depend on a
newer `pmg-rs`. However, as long as pmg code doesn't try to *use* the
Notify module, this won't be a problem.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Also splitting PVE-specific context into its own file.
Suggested-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
Logging behaviour can be overridden by the {PMG,PVE}_LOG environment
variable.
This commit also disables styled output and timestamps in log messages,
since we usually log to the journal anyway. The log output is configured
to match with other log messages in task logs.
Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
- Add a 'common' symlink inside pve-rs/pmg-rs
- Have the `build/` target replace it with a dir and copy
`common/src` into it.
- Depend on perlmod-bin to generate the perl package files.
now pve-rs and pmg-rs can be built directly from within via
dpkg-buildpackage
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
This commit sets up logging by hooking into module loading/bootstraping
process to call a new `init` function exported by the `Proxmox::Lib::{PVE,PMG}`
module, which initializes `env_logger` with its default settings.
This allows us to use `log::*` macros from Rust code.
Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
while introducing a 'product' parameter to the relevant functions and
adding wrappers for backwards-compatibility.
Suggested-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
libproxmox-rs-perl ships /usr/share/perl5/PVE/RS/CalendarEvent.pm,
which was also present in libpve-rs-perl until version 0.5.1
This can lead to a (racy) issue while upgrading - depending
on which of libproxmox-rs-perl or libpve-rs-perl gets unpacked first
we potentially run into:
```
dpkg: error processing archive \
/tmp/apt-dpkg-install-lNBzMn/48-libproxmox-rs-perl_0.1.0_amd64.deb (--unpack):
trying to overwrite '/usr/share/perl5/PVE/RS/CalendarEvent.pm', \
which is also in package libpve-rs-perl 0.5.1
```
This patch follows the debian policy manual for these situations:
https://www.debian.org/doc/debian-policy/ch-relationships.html#s-breaks
Signed-off-by: Stoiko Ivanov <s.ivanov@proxmox.com>
Reviewed-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Acked-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
just install all files, `make gen` at the top level is
responsible for generating the correct files
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
This simply uses the new one as a base in order to help
getting the packages setup initially.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>