Commit Graph

36 Commits

Author SHA1 Message Date
Sida Chen
bffa6499b7 added support for detect multiple namespaces in a layer
created table layer_namespace to store the many to many unique mapping of layers and namespaces
changed v1 api to provide a list of namespaces for each layer
changed namespace detector to use all registered detectors to detect namespaces
updated tests for multiple namespaces

Fixes #150
2017-05-24 17:01:51 -04:00
Sida Chen
9306e99368 converted to structured logging by using logrus
changed from capnslog to logrus for logging JSON structured message.

finished issue #383
2017-05-04 13:59:57 -04:00
Jimmy Zelinskie
9c63a63944 clair: mv updater clair and mv severity to db 2017-01-22 23:20:56 -05:00
Jimmy Zelinskie
343e24eb7e clair: remove types package
This removes the `types` package instead moving the contents to the
top-level clair package.
This change also renames the `Priority` type to `Severity` in order to
reduce confusion.
This change also removes the IsValid method and replaces it with a safe
constructor to avoid the creation of invalid values.
Many docstrings were tweaked in the making of this commit.
2017-01-22 23:02:51 -05:00
Jimmy Zelinskie
ebd0170f5b api/v1: fix JSON struct tag misnomer 2017-01-03 15:59:51 -05:00
Jimmy Zelinskie
033709eaea add registerable version formats
Since we only ever used dpkg, this change shims everything into using
dpkg.
2016-12-30 12:51:24 -05:00
Jimmy Zelinskie
d4522e9c6e api/v1: indexed layers for notifications
This change deprecates the old LayersIntroducingVulnerability for a new
one that orders output and contains an Index. This index is not
guaranteed to be consistent across multiple notifications, despite the
current Postgres implementation using the primary key of Layer table.
2016-12-06 19:23:33 -05:00
Jimmy Zelinskie
53e62577bc api/worker: s/Authorization/Headers (#167)
This allows clients to specify any HTTP headers that need to be used in
order to allow Clair to download a layer, rather than just the
Authorization header.
2016-05-05 13:48:10 -04:00
Jimmy Zelinskie
9b5afc79ca api/worker: introduce optional authorization
This allows clients to specify the contents of the HTTP Authorization
header so that Clair can access protected resources.
2016-05-04 15:47:14 -04:00
Jimmy Zelinskie
68250f392b api/v1: create namespace type
This change creates a struct type for namespaces rather than using a
string. This enables us to extend namespaces in the future to contain
metadata. This change also required renaming other field references of
namespaces to "NamespaceName".

Fixes #99
2016-03-16 15:28:59 -04:00
liangchenye
1a863a06cf remove the useless pointer of NextPage field; check namespace notfound error
Signed-off-by: liangchenye <liangchenye@huawei.com>
2016-03-08 11:48:52 +08:00
liangchenye
27e5e42340 use tokenMarshal/unmarshal in page encoding
Signed-off-by: liangchenye <liangchenye@huawei.com>
2016-03-07 14:59:26 +08:00
liangchenye
48ffb2687a use encrypt page in listVuln api
Signed-off-by: liangchenye <liangchenye@huawei.com>
2016-03-07 14:07:07 +08:00
liangchenye
a541e964e0 New API: list vulnerabilities by namespace
Signed-off-by: liangchenye <liangchenye@huawei.com>
2016-03-07 14:07:07 +08:00
Jimmy Zelinskie
1557a27a8c Revert "v1: pagination now deterministic"
This reverts commit 24f329fea674e04c76f5e87c22eea1800e6bc413.

This was unnecessary.
2016-02-24 16:40:40 -05:00
Quentin Machu
3563cf9061 api: fix pagination token that's returned to match what has been passed 2016-02-24 16:40:40 -05:00
Jimmy Zelinskie
452c32d7d7 v1: pagination now deterministic
The standard JSON encoding has no guarantee of the order of keys, thus
token values could differ, but still be equivalent.
2016-02-24 16:40:40 -05:00
Quentin Machu
f40f6a5ab6 api: add missing link field in vulnerability in getLayer 2016-02-24 16:39:25 -05:00
Quentin Machu
6d2eedf121 api/database: add the layer name that add each feature in getLayer 2016-02-24 16:39:25 -05:00
Jimmy Zelinskie
d19a4348df api: implement fernet encryption of pagination tokens 2016-02-24 16:36:45 -05:00
Quentin Machu
c2061dc69e api: fix negative timestamps in notifications 2016-02-24 16:36:45 -05:00
Quentin Machu
f68012de00 api: fix 404->500 and NPE issues 2016-02-24 16:36:45 -05:00
Jimmy Zelinskie
c504d2ed0e api: add FeatureFromDatabaseModel
This also handles replacing the DB identifier for a maximum version with
the string "None".
2016-02-24 16:36:45 -05:00
Jimmy Zelinskie
2d8d9ca401 api: finish initial work on v1 API 2016-02-24 16:36:45 -05:00
Quentin Machu
94ece7bf2b database: fix notification design and add vulnerability history 2016-02-24 16:36:45 -05:00
Jimmy Zelinskie
96e96d948d api: handle last page for notifications 2016-02-24 16:36:45 -05:00
Jimmy Zelinskie
3eaae478f9 api: implement get notification 2016-02-24 16:36:45 -05:00
Quentin Machu
5fdd9d1a07 *: add metadata support along with NVD CVSS 2016-02-24 16:36:45 -05:00
Jimmy Zelinskie
dc99d45f47 api: refactor endpoints and implement get vulnerability 2016-02-24 16:36:45 -05:00
Jimmy Zelinskie
9a8d4aa591 api: implement post vulnerability 2016-02-24 16:36:45 -05:00
Jimmy Zelinskie
38aeed4f2c api: implement get namespaces route 2016-02-24 16:36:45 -05:00
Jimmy Zelinskie
04c7351911 api: use pointers in models to get proper omitempty semantics 2016-02-24 16:36:45 -05:00
Jimmy Zelinskie
fa45d516df api: add JSON tags to API models 2016-02-24 16:36:45 -05:00
Jimmy Zelinskie
d130d2fab4 api: implement getLayer 2016-02-24 16:36:45 -05:00
Jimmy Zelinskie
be9423b489 api: add request / response types and rename some fields 2016-02-24 16:34:54 -05:00
Jimmy Zelinskie
822ac7ab4c api: add initial work on the new API 2016-02-24 16:34:54 -05:00