Skip to content

Commit

Permalink
scan: ability to override repository
Browse files Browse the repository at this point in the history
Signed-off-by: Dentrax <[email protected]>
  • Loading branch information
Dentrax committed Jul 13, 2024
1 parent f10bd62 commit bae53cb
Show file tree
Hide file tree
Showing 25 changed files with 1,360 additions and 6 deletions.
41 changes: 41 additions & 0 deletions docs/cmd/wolfictl_advisory_copy.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
## wolfictl advisory copy

Copy a package's advisories into a new package.

***Aliases**: cp*

### Usage

```
wolfictl advisory copy <source-package-name> <destination-package-name>
```

### Synopsis

Copy a package's advisories into a new package.

This command will copy most advisories for the given package into a new package.

The command will copy the latest event for each advisory, and will update the timestamp
of the event to now. The command will not copy events of type "detection", "fixed",
"analysis_not_planned", or "fix_not_planned".


### Options

```
-d, --dir string directory containing the advisories to copy (default ".")
-h, --help help for copy
```

### Options inherited from parent commands

```
--log-level string log level (e.g. debug, info, warn, error) (default "info")
--log-policy strings log policy (e.g. builtin:stderr, /tmp/log/foo) (default [builtin:stderr])
```

### SEE ALSO

* [wolfictl advisory](wolfictl_advisory.md) - Commands for consuming and maintaining security advisory data

33 changes: 33 additions & 0 deletions docs/cmd/wolfictl_advisory_guide.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
## wolfictl advisory guide

Launch an interactive guide to help you enter advisory data for a package

### Usage

```
wolfictl advisory guide
```

### Synopsis

Launch an interactive guide to help you enter advisory data for a package

### Options

```
-h, --help help for guide
-s, --speedy Skip explanations and unnecessary time delays
```

### Options inherited from parent commands

```
--log-level string log level (e.g. debug, info, warn, error) (default "info")
--log-policy strings log policy (e.g. builtin:stderr, /tmp/log/foo) (default [builtin:stderr])
```

### SEE ALSO

* [wolfictl advisory](wolfictl_advisory.md) - Commands for consuming and maintaining security advisory data
* [wolfictl advisory guide graph](wolfictl_advisory_guide_graph.md) - Generate a DOT graph of the advisory guide interview questions

31 changes: 31 additions & 0 deletions docs/cmd/wolfictl_advisory_guide_graph.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
## wolfictl advisory guide graph

Generate a DOT graph of the advisory guide interview questions

### Usage

```
wolfictl advisory guide graph
```

### Synopsis

Generate a DOT graph of the advisory guide interview questions

### Options

```
-h, --help help for graph
```

### Options inherited from parent commands

```
--log-level string log level (e.g. debug, info, warn, error) (default "info")
--log-policy strings log policy (e.g. builtin:stderr, /tmp/log/foo) (default [builtin:stderr])
```

### SEE ALSO

* [wolfictl advisory guide](wolfictl_advisory_guide.md) - Launch an interactive guide to help you enter advisory data for a package

52 changes: 52 additions & 0 deletions docs/cmd/wolfictl_advisory_osv.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
## wolfictl advisory osv

Build an OSV dataset from Chainguard advisory data

### Usage

```
wolfictl advisory osv
```

### Synopsis

Build an OSV dataset from Chainguard advisory data.

This command reads advisory data from one or more directories containing Chainguard
advisory documents, and writes an OSV dataset to a local directory.

Specify directories for advisory repositories using the --advisories-repo-dir flag.

IMPORTANT: For now, the command assumes that the first listed advisory repository is the
"Wolfi" repository, and that the rest are not. In the future, we might unify all advisory
repositories into a single collection of all advisory documents, and remove the need for
multiple advisory repositories.

The user must also specify directories for all package repositories associated with the
given advisory data. This is used to make sure the OSV data includes all relevant packages
and subpackages.

The output directory for the OSV dataset is specified using the --output flag. This
directory must already exist before running the command.


### Options

```
-a, --advisories-repo-dir strings path to the directory(ies) containing Chainguard advisory data
-h, --help help for osv
-o, --output string path to a local directory in which the OSV dataset will be written
-p, --packages-repo-dir strings path to the directory(ies) containing Chainguard package data
```

### Options inherited from parent commands

```
--log-level string log level (e.g. debug, info, warn, error) (default "info")
--log-policy strings log policy (e.g. builtin:stderr, /tmp/log/foo) (default [builtin:stderr])
```

### SEE ALSO

* [wolfictl advisory](wolfictl_advisory.md) - Commands for consuming and maintaining security advisory data

35 changes: 35 additions & 0 deletions docs/cmd/wolfictl_advisory_validate_fixes.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
## wolfictl advisory validate fixes

Validate fixes recorded in advisories

### Usage

```
wolfictl advisory validate fixes
```

### Synopsis

Validate fixes recorded in advisories

### Options

```
-a, --advisories-repo-dir string directory containing the advisories repository
-b, --built-packages-dir string directory containing built packages
--distro string distro to use during vulnerability matching (default "wolfi")
-h, --help help for fixes
-v, --verbose count logging verbosity (v = info, vv = debug, default is none)
```

### Options inherited from parent commands

```
--log-level string log level (e.g. debug, info, warn, error) (default "info")
--log-policy strings log policy (e.g. builtin:stderr, /tmp/log/foo) (default [builtin:stderr])
```

### SEE ALSO

* [wolfictl advisory validate](wolfictl_advisory_validate.md) - Validate the state of advisory data

37 changes: 37 additions & 0 deletions docs/cmd/wolfictl_apk_cp.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
## wolfictl apk cp



***Aliases**: copy*

### Usage

```
wolfictl apk cp
```

### Synopsis



### Options

```
--gcs string copy objects from a GCS bucket
-h, --help help for cp
-i, --index string APKINDEX.tar.gz URL (default "https://packages.wolfi.dev/os/x86_64/APKINDEX.tar.gz")
--latest copy only the latest version of each package (default true)
-o, --out-dir string directory to copy packages to (default "./packages")
```

### Options inherited from parent commands

```
--log-level string log level (e.g. debug, info, warn, error) (default "info")
--log-policy strings log policy (e.g. builtin:stderr, /tmp/log/foo) (default [builtin:stderr])
```

### SEE ALSO

* [wolfictl apk](wolfictl_apk.md) -

40 changes: 40 additions & 0 deletions docs/cmd/wolfictl_apk_ls.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
## wolfictl apk ls



### Usage

```
wolfictl apk ls
```

### Synopsis



### Examples

wolfictl apk ls https://packages.wolfi.dev/os/x86_64/APKINDEX.tar.gz

### Options

```
--full print the full url or path
-h, --help help for ls
--json print each package as json
--latest print only the latest version of each package
--newer-than duration print only packages newer than this duration ago
-P, --package string print only packages with the given name
```

### Options inherited from parent commands

```
--log-level string log level (e.g. debug, info, warn, error) (default "info")
--log-policy strings log policy (e.g. builtin:stderr, /tmp/log/foo) (default [builtin:stderr])
```

### SEE ALSO

* [wolfictl apk](wolfictl_apk.md) -

49 changes: 49 additions & 0 deletions docs/cmd/wolfictl_bundle.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
## wolfictl bundle



### Usage

```
wolfictl bundle
```

### Synopsis



### Options

```
-a, --annotation stringToString New annotations to add (default [])
--arch strings arch of package to build (default [x86_64,aarch64])
--bundle-base string base image used for melange build bundles
--bundle-repo string where to push the bundles
--cache-dir string directory used for cached inputs (default "./melange-cache/")
--cache-source string directory or bucket used for preloading the cache
--destination-repository string repo where packages will eventually be uploaded, used to skip existing packages (currently only supports http)
-d, --dir string directory to search for melange configs (default ".")
--dry-run print commands instead of executing them
--gcsfuse strings list of gcsfuse mounts to make available to the build environment (e.g. gs://my-bucket/subdir:/mnt/my-bucket)
--generate-index whether to generate APKINDEX.tar.gz (default true)
-h, --help help for bundle
-k, --keyring-append strings path to extra keys to include in the build environment keyring (default [https://packages.wolfi.dev/os/wolfi-signing.rsa.pub])
--namespace string namespace to use in package URLs in SBOM (eg wolfi, alpine) (default "wolfi")
--out-dir string directory where packages will be output
--pipeline-dir string directory used to extend defined built-in pipelines
-r, --repository-append strings path to extra repositories to include in the build environment (default [https://packages.wolfi.dev/os])
--runner string which runner to use to enable running commands, default is based on your platform. (default "docker")
--signing-key string key to use for signing
```

### Options inherited from parent commands

```
--log-level string log level (e.g. debug, info, warn, error) (default "info")
--log-policy strings log policy (e.g. builtin:stderr, /tmp/log/foo) (default [builtin:stderr])
```

### SEE ALSO

* [wolfictl](wolfictl.md) - A CLI helper for developing Wolfi

55 changes: 55 additions & 0 deletions docs/cmd/wolfictl_ruby.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
## wolfictl ruby

Work with ruby packages

### Usage

```
wolfictl ruby
```

### Synopsis

Work with ruby packages

The ruby subcommand is intended to work with all ruby packages inside the wolfi
repo. The main uses right now are to check if the ruby version can be upgraded,
and run Github code searches for Github repos pulled from melange yaml files.

This command takes a path to the wolfi-dev/os repository as an argument. The
path can either be the directory itself to discover all files using ruby-* or
a specific melange yaml to work with.

NOTE: This is currently restricted to ruby code housed on Github as that is the
majority. There are some on Gitlab and adding Gitlab API support is TODO.


### Examples


# Run a search query over all ruby-3.2 package in the current directory
wolfictl ruby code-search . --ruby-version 3.2 --search-term 'language:ruby racc'

# Check if all ruby-3.2 packages in the current directory can be upgraded to ruby-3.3
wolfictl ruby check-upgrade . --ruby-version 3.2 --ruby-upgrade-version 3.3


### Options

```
-h, --help help for ruby
```

### Options inherited from parent commands

```
--log-level string log level (e.g. debug, info, warn, error) (default "info")
--log-policy strings log policy (e.g. builtin:stderr, /tmp/log/foo) (default [builtin:stderr])
```

### SEE ALSO

* [wolfictl](wolfictl.md) - A CLI helper for developing Wolfi
* [wolfictl ruby check-upgrade](wolfictl_ruby_check-upgrade.md) - Check if gemspec for restricts a gem from upgrading to a specified ruby version.
* [wolfictl ruby code-search](wolfictl_ruby_code-search.md) - Run Github search queries for ruby packages.

Loading

0 comments on commit bae53cb

Please sign in to comment.