decdn-common 0.2.0

Shared types for deCDN binaries: config schema, identity, CLI args
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
//! Arguments for the `decdn self-update` subcommand.

use clap::Args;

/// Replace the running `decdn` binary with the latest signed release.
///
/// The release's `SHA256SUMS.minisig` must verify against a minisign key this
/// build embeds, and the archive must match the signed manifest, before any
/// byte of the running binary changes. Only a binary the user can write and
/// that `cargo install` did not place is replaced; the command names the path
/// and the reason otherwise.
#[derive(Args, Debug)]
pub struct SelfUpdateArgs {
    /// Report whether a newer signed release exists and whether this install
    /// can be replaced; download no archive and change nothing.
    #[arg(long)]
    pub check: bool,
}