Alex Goodman and Christopher Angelo Phillips
bb0f35bac4
Introduce a single SBOM document ( #606 )
...
* [wip] single sbom doc
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* fix tests
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* fix more tests
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* fix linting
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* update cli tests
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* remove scope in import path
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* swap SPDX tag-value formatter to single sbom document
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* bust CLI cache
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* update fixture to byte diff
Signed-off-by: Christopher Angelo Phillips <christopher.phillips@anchore.com >
* byte for byte
Signed-off-by: Christopher Angelo Phillips <christopher.phillips@anchore.com >
* bust the cache
Signed-off-by: Christopher Angelo Phillips <christopher.phillips@anchore.com >
* who needs cache
Signed-off-by: Christopher Angelo Phillips <christopher.phillips@anchore.com >
* add jar for testing
Signed-off-by: Christopher Angelo Phillips <christopher.phillips@anchore.com >
* no more bit flips
Signed-off-by: Christopher Angelo Phillips <christopher.phillips@anchore.com >
* update apk with the delta for image and directory cases
Signed-off-by: Christopher Angelo Phillips <christopher.phillips@anchore.com >
* restore cache workflow
Signed-off-by: Christopher Angelo Phillips <christopher.phillips@anchore.com >
Co-authored-by: Christopher Angelo Phillips <christopher.phillips@anchore.com >
2021-11-05 10:05:49 -04:00
Alex Goodman
ecab44bba1
Add SPDX tag-value format object ( #605 )
...
* add new spdx tag-value format
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* remove public presenter package
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-11-02 13:45:34 -04:00
Alex Goodman
358b3a2cf8
port text presenter to a format object ( #604 )
...
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-10-29 11:31:15 -04:00
Alex Goodman
9aca23f766
Add SPDX JSON format object ( #584 )
...
* remove existing spdxjson presenter + helpers
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add new spdx22json format
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add common sdpxhelpers (migrated)
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* use new common spdx helpers
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* wire up new spdx22json format object
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* remove lossless syft-specific property bags
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* remove spdxjson decoder and validator
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add nil checks in spdx test helpers
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* remove empty default case
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* use explicit golden snapshot
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-10-29 14:55:20 +00:00
Alex Goodman
4a2d1d7225
Port cyclonedx presenter to format object ( #589 )
...
* add new cyclonedx format object
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* remove cyclonedx presenter
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* remove cyclonedx presenter call
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* remove dependence on golden images for format tests
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* wire up new formt + rename all-presenters ref
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add CLI test to ensure that all formats can be expressed as report output
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add cyclonedx version and encoding format to package name
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* optionally preserve format snapshot images
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* fix linting + text unit tests
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-10-29 10:17:03 -04:00
Alex Goodman
fb588ff500
replace table presenter with format object ( #586 )
...
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-10-24 08:09:27 -04:00
Alex Goodman
560b05c2c9
Introduce new format pattern + port json processing ( #550 )
...
* add new format pattern
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add syftjson format
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add internal formats helper
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add SBOM encode/decode to lib API
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* remove json presenter + update presenter tests to use common utils
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* remove presenter format enum type + add formats shim in presenter helper
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add MustCPE helper for tests
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* update usage of format enum
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add test fixtures for encode/decode tests
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* fix integration test
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* migrate format detection to use reader
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* address review comments
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-10-20 21:36:34 +00:00
Alex Goodman
a000a2926b
update linter + fix whitespace ( #536 )
...
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-10-06 13:46:55 +00:00
Alex Goodman
9189ed68df
Add query by MIME type to source.FileResolver ( #529 )
...
* add query by MIME type to source.FileResolver
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* pull in stereoscope MIME type feature
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* fix tests
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-10-05 20:50:53 -04:00
Alex Goodman
1b23a94015
Add option to output SBOM report to a file ( #530 )
...
* add output to file option
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* log errors on close of the report destination
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* remove file option from persistent args
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* update file option comments and logging
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* allow for multiple UI fallback options
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* update UI select signatures + tests
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-10-05 14:47:24 -04:00
Christopher Angelo Phillips
f47a6a88b1
( #495 ) Update documentNamespace uniqueness for spdx-json output ( #528 )
...
* add unique namespace identifier
Signed-off-by: Christopher Angelo Phillips <christopher.phillips@anchore.com >
2021-10-05 13:10:49 -04:00
Christopher Angelo Phillips
75aed5f3ec
( #460 ) Extend license mapping for common SPDX license names ( #509 )
...
Fixes #460
Signed-off-by: Christopher Angelo Phillips <christopher.phillips@anchore.com >
2021-09-30 16:54:36 -04:00
Christopher Angelo Phillips
93d00dc340
Populate Files and Relationship fields for spdx-json output ( #507 )
...
* update spdx22 Document model to include relationships field
Signed-off-by: Christopher Angelo Phillips <christopher.phillips@anchore.com >
* update document and relationship to match current JSON spec
https://github.com/spdx/spdx-spec/blob/development/v2.2.1/schemas/spdx-schema.json
https://github.com/spdx/spdx-spec/pull/528
https://github.com/spdx/spdx-spec/pull/528#issuecomment-904180177
Signed-off-by: Christopher Angelo Phillips <christopher.phillips@anchore.com >
* update File struct based on SPDX schema
Required fields:
[ "SPDXID", "fileName", "copyrightText", "licenseConcluded" ]
Signed-off-by: Christopher Angelo Phillips <christopher.phillips@anchore.com >
2021-09-17 09:06:12 -04:00
Keith Zantow
93b4bf9379
Add option to enable http registry connections ( #482 )
...
Signed-off-by: Keith Zantow <kzantow@gmail.com >
2021-08-17 12:52:51 -04:00
Alex Goodman
3a5168917e
Update SPDX license list from 3.13 to 3.14 ( #474 )
...
* update SPDX license list from 3.13 to 3.14
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* remove license list version from spdx snapshot unit tests
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-08-09 19:47:33 +00:00
Alex Goodman
706322f826
Add SPDX support ( #445 )
...
* add initial spdx support
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* expose FileOwner and use in SPDX presenter
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add initial json support for SPDX
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add remaining package fields
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add spdx license list generation + tests
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* keep fileOwner unexported from pkg
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* restore cli test util
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add external refs to spdx tag-value format
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add golang support to CPE generation
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* use tag-value format as default "spdx" format flavor
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add tests around spdx presenters + refactor presenter tests
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add bouncer exception for spdx tools-golang repo
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* remove spdx model questions
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-06-25 16:30:41 -04:00
Samuel Dacanay
5a2e2eb679
Export the presenter interface so it may be used by external projects
...
Signed-off-by: Samuel Dacanay <sam.dacanay@anchore.com >
2021-06-09 10:21:55 -07:00
Dan Luhring
80e23bdb50
Add config option for import timeout ( #421 )
...
Signed-off-by: Dan Luhring <dan.luhring@anchore.com >
2021-05-25 15:01:02 -04:00
Alex Goodman
c363b2b532
Add ability to pull images directly from a registry ( #378 )
...
* add registry image source
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* use explicit source for fetching image + add scheme and registry tests
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* adjust test variable name and add credential helper function
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-04-13 13:30:57 +00:00
Alex Goodman
51b13f8221
rename Contents to FileContents in app config and documentation
...
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-04-12 17:34:54 -04:00
Alex Goodman
d451a5ad30
update the json schema and tests with file contents section
...
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-04-12 17:33:20 -04:00
Alex Goodman
c1551a03c5
add file contents cataloger
...
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-04-12 17:30:57 -04:00
Alex Goodman
46fffe5c6f
update json schema + presenter snapshots with file classification section
...
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-04-12 17:11:40 -04:00
Alex Goodman
080057b217
add file classifications to power-user json presenter
...
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-04-12 17:08:50 -04:00
Alex Goodman
ba3407a767
add dpkg conffile update to json schema + json test snapshots
...
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-04-09 08:37:28 -04:00
Alex Goodman
9ec09add67
Add secrets search capability ( #367 )
...
* add initial secrets cataloger
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* update ETUI elements with new catalogers (file metadata, digests, and secrets)
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* update secrets cataloger to read full contents into memory for searching
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* quick prototype of parallelization secret regex search
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* quick prototype with single aggregated regex
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* quick prototype for secret search line-by-line
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* quick prototype hybrid secrets search
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* add secrets cataloger with line strategy
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* adjust verbiage towards SearchResults instead of Secrets + add tests
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* update json schema with secrets cataloger results
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* address PR comments
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* update readme with secrets config options
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
* ensure file catalogers call AllLocations once
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-04-01 21:34:15 +00:00
Zach Hill
c332ba0867
Use cataloger Sorted() output instead of Enumerate() for stable result sorting in presenters. Fixes #331
...
Also adds artifact location to sort key for Sorted() to ensure
consistent sorts when artifacts of same name, version, and type are
found in different locations in the image. Location should be sufficient
since we assume only one package of a given name and version can exist
in one location, even if that location is an package-db like rpmdb.
Signed-off-by: Zach Hill <zach@anchore.com >
2021-04-01 01:40:41 -07:00
Alex Goodman
cd925e5664
account for repoDigests data in power-user json testing
...
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-03-30 08:46:42 -04:00
Alex Goodman
db35186c7d
allow file metadata digests to be optional + add link destination
...
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-03-29 12:07:42 -04:00
Haim Helman
13a066ea18
Add repo digests if available from Stereoscope to the image metadata
...
Signed-off-by: Haim Helman <hhelman@vmware.com >
2021-03-25 05:57:23 -07:00
Alex Goodman
3ef30f99be
pull in stereoscope cache fix + add test cache makefile target helpers
...
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-03-23 14:31:59 -04:00
Alex Goodman
929b78efbf
remove prealloc nolint rule in catalogers
...
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-03-23 12:56:00 -04:00
Alex Goodman
40199096e9
stabilize json file metadata presenter order
...
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-03-23 11:00:36 -04:00
Alex Goodman
36e4af1953
adjust jsom schema version + adopt java pom properies test fixtures
...
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-03-22 11:27:01 -04:00
Alex Goodman
f180d1c537
improve config parsing + fix command deprecation warning
...
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-03-22 10:58:09 -04:00
Alex Goodman
ff4ed40d50
migrate syft/presenter to internal/presenter
...
Signed-off-by: Alex Goodman <alex.goodman@anchore.com >
2021-03-22 10:52:33 -04:00