GCC Code Coverage Report
Directory: cvmfs/ Exec Total Coverage
File: cvmfs/swissknife_sign.h Lines: 0 22 0.0 %
Date: 2019-02-03 02:48:13 Branches: 0 2 0.0 %

Line Branch Exec Source
1
/**
2
 * This file is part of the CernVM File System.
3
 */
4
5
#ifndef CVMFS_SWISSKNIFE_SIGN_H_
6
#define CVMFS_SWISSKNIFE_SIGN_H_
7
8
#include <string>
9
10
#include "swissknife.h"
11
12
namespace upload {
13
struct SpoolerResult;
14
}
15
16
namespace swissknife {
17
18
class CommandSign : public Command {
19
 public:
20
  ~CommandSign() {}
21
  virtual std::string GetName() const { return "sign"; }
22
  virtual std::string GetDescription() const {
23
    return "Adds a signature to the repository manifest.";
24
  }
25
  virtual ParameterList GetParams() const {
26
    ParameterList r;
27
    r.push_back(Parameter::Mandatory('m', "manifest file"));
28
    r.push_back(Parameter::Mandatory('u', "repository URL"));
29
    r.push_back(Parameter::Mandatory('r', "spooler definition"));
30
    r.push_back(Parameter::Mandatory('t', "directory for temporary files"));
31
    r.push_back(Parameter::Optional('R', "path to reflog.chksum file"));
32
    r.push_back(Parameter::Optional('c', "x509 certificate"));
33
    r.push_back(Parameter::Optional('k', "private key of the certificate"));
34
    r.push_back(Parameter::Optional('s', "password for the private key"));
35
    r.push_back(Parameter::Optional('n', "repository name"));
36
    r.push_back(Parameter::Optional('M', "repository meta info file"));
37
    r.push_back(Parameter::Switch('b',
38
                                  "generate symlinks for VOMS-secured "
39
                                  "repo backends"));
40
    r.push_back(Parameter::Switch('g', "repository is garbage collectible"));
41
    r.push_back(Parameter::Switch('A', "repository has bootstrap shortcuts"));
42
    r.push_back(Parameter::Switch('e',
43
                                  "return early, don't upload signed "
44
                                  "manifest"));
45
    return r;
46
  }
47
  int Main(const ArgumentList &args);
48
};
49
50
}  // namespace swissknife
51
52
#endif  // CVMFS_SWISSKNIFE_SIGN_H_