Go to file
Thomas Lamprecht b4b14dc16e do_verification_job: fix "never-reverify" and refactor/comment
commit a4915dfc2b made a wrong fix, as
it did not observed that the last expressions was done under the
invariant that we had a last verification result, because if none
could be loaded we already returned true (include).

It thus broke the case for "never re-verify", which is important when
using multiple schedules, a more high frequent one for new,
unverified snapshots, and a low frequency to re-verify older snapshots,
e.g., monthly.

Fix this case again, rework the code to avoid this easy to oversee
invariant. Use a nested match to better express the implication of
each setting, and add some comments.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-10-28 16:12:09 +01:00
.cargo cargo: switch to use packaged crates by default 2020-01-03 09:40:33 +01:00
debian postinst: correct invalid old datastore configs 2020-10-21 12:51:35 +02:00
docs introduction: fix title formatting 2020-10-27 12:33:17 +01:00
etc ship pbstest repo as sources.list.d file for beta 2020-07-08 19:09:31 +02:00
examples examples: fix HttpClient::new usage 2020-09-30 10:49:20 +02:00
src do_verification_job: fix "never-reverify" and refactor/comment 2020-10-28 16:12:09 +01:00
tests introduce Username, Realm and Userid api types 2020-08-10 12:05:01 +02:00
www ui: datastore summary: clarify that it's a deduplication factor 2020-10-27 17:43:45 +01:00
zsh-completions Add zsh completion scripts 2020-02-27 06:50:14 +01:00
.gitignore .gitignore: add build directory 2020-07-22 09:19:29 +02:00
Cargo.toml bump proxmox dependency to 0.5.0 for nix 0.19 2020-10-19 12:35:03 +02:00
defines.mk Add zsh completion scripts 2020-02-27 06:50:14 +01:00
Makefile buildsys: upload client packages also to PMG repo 2020-09-08 16:48:31 +02:00
README.rst readme: allow to directly copy+paste+execute commands 2020-10-12 13:36:34 +02:00
rustfmt.toml import rustfmt.toml 2019-08-22 13:44:57 +02:00
TODO.rst [chore] bump to using pxar 0.2.0 2020-06-25 09:46:56 +02:00

``rustup`` Toolchain
====================

We normally want to build with the ``rustc`` Debian package. To do that
you can set the following ``rustup`` configuration:

    # rustup toolchain link system /usr
    # rustup default system


Versioning of proxmox helper crates
===================================

To use current git master code of the proxmox* helper crates, add::

   git = "git://git.proxmox.com/git/proxmox"

or::

   path = "../proxmox/proxmox"

to the proxmox dependency, and update the version to reflect the current,
pre-release version number (e.g., "0.1.1-dev.1" instead of "0.1.0").


Local cargo config
==================

This repository ships with a ``.cargo/config`` that replaces the crates.io
registry with packaged crates located in ``/usr/share/cargo/registry``.

A similar config is also applied building with dh_cargo. Cargo.lock needs to be
deleted when switching between packaged crates and crates.io, since the
checksums are not compatible.

To reference new dependencies (or updated versions) that are not yet packaged,
the dependency needs to point directly to a path or git source (e.g., see
example for proxmox crate above).


Build
=====
on Debian Buster

Setup:
  1. # echo 'deb http://download.proxmox.com/debian/devel/ buster main' >> /etc/apt/sources.list.d/proxmox-devel.list
  2. # sudo wget http://download.proxmox.com/debian/proxmox-ve-release-6.x.gpg -O /etc/apt/trusted.gpg.d/proxmox-ve-release-6.x.gpg
  3. # sudo apt update
  4. # sudo apt install devscripts debcargo clang
  5. # git clone git://git.proxmox.com/git/proxmox-backup.git
  6. # sudo mk-build-deps -ir

Note: 2. may be skipped if you already added the PVE or PBS package repository

You are now able to build using the Makefile or cargo itself.