|
|
@@ -28,35 +28,40 @@ const (
|
|
|
|
|
|
// Options stores values of command line options
|
|
|
type Options struct {
|
|
|
- Verbose bool `short:"v" long:"verbose" description:"Show verbose output from scan"`
|
|
|
- Repo string `short:"r" long:"repo" description:"Target repository"`
|
|
|
- Config string `long:"config" description:"config path"`
|
|
|
- Disk bool `long:"disk" description:"Clones repo(s) to disk"`
|
|
|
- Version bool `long:"version" description:"version number"`
|
|
|
- Username string `long:"username" description:"Username for git repo"`
|
|
|
- Password string `long:"password" description:"Password for git repo"`
|
|
|
- AccessToken string `long:"access-token" description:"Access token for git repo"`
|
|
|
- Commit string `long:"commit" description:"sha of commit to scan or \"latest\" to scan the last commit of the repository"`
|
|
|
- FilesAtCommit string `long:"files-at-commit" description:"sha of commit to scan all files at commit"`
|
|
|
- Threads int `long:"threads" description:"Maximum number of threads gitleaks spawns"`
|
|
|
- SSH string `long:"ssh-key" description:"path to ssh key used for auth"`
|
|
|
- Uncommited bool `long:"uncommitted" description:"run gitleaks on uncommitted code"`
|
|
|
- RepoPath string `long:"repo-path" description:"Path to repo"`
|
|
|
- OwnerPath string `long:"owner-path" description:"Path to owner directory (repos discovered)"`
|
|
|
- Branch string `long:"branch" description:"Branch to scan"`
|
|
|
- Report string `long:"report" description:"path to write json leaks file"`
|
|
|
- ReportFormat string `long:"report-format" default:"json" description:"json, csv, sarif"`
|
|
|
- Redact bool `long:"redact" description:"redact secrets from log messages and leaks"`
|
|
|
- Debug bool `long:"debug" description:"log debug messages"`
|
|
|
- RepoConfig bool `long:"repo-config" description:"Load config from target repo. Config file must be \".gitleaks.toml\" or \"gitleaks.toml\""`
|
|
|
- PrettyPrint bool `long:"pretty" description:"Pretty print json if leaks are present"`
|
|
|
- CommitFrom string `long:"commit-from" description:"Commit to start scan from"`
|
|
|
- CommitTo string `long:"commit-to" description:"Commit to stop scan"`
|
|
|
- CommitSince string `long:"commit-since" description:"Scan commits more recent than a specific date. Ex: '2006-01-02' or '2006-01-02T15:04:05-0700' format."`
|
|
|
- CommitUntil string `long:"commit-until" description:"Scan commits older than a specific date. Ex: '2006-01-02' or '2006-01-02T15:04:05-0700' format."`
|
|
|
- Timeout string `long:"timeout" description:"Time allowed per scan. Ex: 10us, 30s, 1m, 1h10m1s"`
|
|
|
- Depth int `long:"depth" description:"Number of commits to scan"`
|
|
|
- Deletion bool `long:"include-deletion" description:"Scan for patch deletions in addition to patch additions"`
|
|
|
+ Verbose bool `short:"v" long:"verbose" description:"Show verbose output from scan"`
|
|
|
+ Repo string `short:"r" long:"repo" description:"Target repository"`
|
|
|
+ Config string `long:"config" description:"config path"`
|
|
|
+ Disk bool `long:"disk" description:"Clones repo(s) to disk"`
|
|
|
+ Version bool `long:"version" description:"version number"`
|
|
|
+ Username string `long:"username" description:"Username for git repo"`
|
|
|
+ Password string `long:"password" description:"Password for git repo"`
|
|
|
+ AccessToken string `long:"access-token" description:"Access token for git repo"`
|
|
|
+ FilesAtCommit string `long:"files-at-commit" description:"sha of commit to scan all files at commit"`
|
|
|
+ Threads int `long:"threads" description:"Maximum number of threads gitleaks spawns"`
|
|
|
+ SSH string `long:"ssh-key" description:"path to ssh key used for auth"`
|
|
|
+ Uncommited bool `long:"uncommitted" description:"run gitleaks on uncommitted code"`
|
|
|
+ RepoPath string `long:"repo-path" description:"Path to repo"`
|
|
|
+ OwnerPath string `long:"owner-path" description:"Path to owner directory (repos discovered)"`
|
|
|
+ Branch string `long:"branch" description:"Branch to scan"`
|
|
|
+ Report string `long:"report" description:"path to write json leaks file"`
|
|
|
+ ReportFormat string `long:"report-format" default:"json" description:"json, csv, sarif"`
|
|
|
+ Redact bool `long:"redact" description:"redact secrets from log messages and leaks"`
|
|
|
+ Debug bool `long:"debug" description:"log debug messages"`
|
|
|
+ RepoConfig bool `long:"repo-config" description:"Load config from target repo. Config file must be \".gitleaks.toml\" or \"gitleaks.toml\""`
|
|
|
+ PrettyPrint bool `long:"pretty" description:"Pretty print json if leaks are present"`
|
|
|
+
|
|
|
+ // Commit Options
|
|
|
+ Commit string `long:"commit" description:"sha of commit to scan or \"latest\" to scan the last commit of the repository"`
|
|
|
+ Commits string `long:"commits" description:"comma separated list of a commits to scan"`
|
|
|
+ CommitsFile string `long:"commits-file" description:"file of new line separated list of a commits to scan"`
|
|
|
+ CommitFrom string `long:"commit-from" description:"Commit to start scan from"`
|
|
|
+ CommitTo string `long:"commit-to" description:"Commit to stop scan"`
|
|
|
+ CommitSince string `long:"commit-since" description:"Scan commits more recent than a specific date. Ex: '2006-01-02' or '2006-01-02T15:04:05-0700' format."`
|
|
|
+ CommitUntil string `long:"commit-until" description:"Scan commits older than a specific date. Ex: '2006-01-02' or '2006-01-02T15:04:05-0700' format."`
|
|
|
+
|
|
|
+ Timeout string `long:"timeout" description:"Time allowed per scan. Ex: 10us, 30s, 1m, 1h10m1s"`
|
|
|
+ Depth int `long:"depth" description:"Number of commits to scan"`
|
|
|
+ Deletion bool `long:"include-deletion" description:"Scan for patch deletions in addition to patch additions"`
|
|
|
|
|
|
// Hosts
|
|
|
Host string `long:"host" description:"git hosting service like gitlab or github. Supported hosts include: Github, Gitlab"`
|