mirror of
https://github.com/genuinetools/reg.git
synced 2024-05-20 03:58:32 -04:00
add more debugging information (#65)
- makes debugging configuration issues easier by adding more context instead of misleading "missing signature key" and similar
This commit is contained in:
parent
706e96ba44
commit
f29941a2ba
|
@ -65,8 +65,10 @@ func (c *Clair) getJSON(url string, response interface{}) (http.Header, error) {
|
|||
return nil, err
|
||||
}
|
||||
defer resp.Body.Close()
|
||||
c.Logf("clair.clair resp.Status=%s", resp.Status)
|
||||
|
||||
if err := json.NewDecoder(resp.Body).Decode(response); err != nil {
|
||||
c.Logf("clair.clair resp.Status=%s, body=%s", resp.Status, response)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
|
|
|
@ -39,6 +39,7 @@ func (c *Clair) PostLayer(layer *Layer) (*Layer, error) {
|
|||
return nil, err
|
||||
}
|
||||
defer resp.Body.Close()
|
||||
c.Logf("clair.clair resp.Status=%s", resp.Status)
|
||||
|
||||
var respLayer layerEnvelope
|
||||
if err := json.NewDecoder(resp.Body).Decode(&respLayer); err != nil {
|
||||
|
@ -67,6 +68,7 @@ func (c *Clair) DeleteLayer(name string) error {
|
|||
return err
|
||||
}
|
||||
defer resp.Body.Close()
|
||||
c.Logf("clair.clair resp.Status=%s", resp.Status)
|
||||
|
||||
if resp.StatusCode == http.StatusOK || resp.StatusCode == http.StatusAccepted || resp.StatusCode == http.StatusNotFound {
|
||||
return nil
|
||||
|
|
|
@ -110,6 +110,7 @@ func (c *Clair) NewClairLayer(r *registry.Registry, image string, fsLayers []sch
|
|||
}
|
||||
|
||||
if token == "" || useBasicAuth {
|
||||
c.Logf("clair.vulns using basic auth")
|
||||
h = map[string]string{
|
||||
"Authorization": fmt.Sprintf("Basic %s", base64.StdEncoding.EncodeToString([]byte(r.Username+":"+r.Password))),
|
||||
}
|
||||
|
|
6
main.go
6
main.go
|
@ -300,9 +300,12 @@ func main() {
|
|||
|
||||
// filter out the empty layers
|
||||
var filteredLayers []schema1.FSLayer
|
||||
for _, layer := range m.FSLayers {
|
||||
for i, layer := range m.FSLayers {
|
||||
if !clair.IsEmptyLayer(layer.BlobSum) {
|
||||
filteredLayers = append(filteredLayers, layer)
|
||||
logrus.Debugf("%d: layer=%s <-- append", i, layer)
|
||||
} else {
|
||||
logrus.Debugf("%d: layer=%s", i, layer)
|
||||
}
|
||||
}
|
||||
m.FSLayers = filteredLayers
|
||||
|
@ -310,6 +313,7 @@ func main() {
|
|||
fmt.Printf("No need to analyse image %s:%s as there is no non-emtpy layer", repo, ref)
|
||||
return nil
|
||||
}
|
||||
fmt.Printf("Analysing %d layers\n", len(m.FSLayers))
|
||||
|
||||
// initialize clair
|
||||
cr, err := clair.New(c.String("clair"), c.GlobalBool("debug"))
|
||||
|
|
|
@ -33,6 +33,7 @@ func (r *Registry) Manifest(repository, ref string) (distribution.Manifest, erro
|
|||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
r.Logf("registry.manifests resp.Status=%s, body=%s", resp.Status, body)
|
||||
|
||||
m, _, err := distribution.UnmarshalManifest(resp.Header.Get("Content-Type"), body)
|
||||
if err != nil {
|
||||
|
@ -49,6 +50,7 @@ func (r *Registry) ManifestList(repository, ref string) (manifestlist.ManifestLi
|
|||
|
||||
var m manifestlist.ManifestList
|
||||
if _, err := r.getJSON(uri, &m, true); err != nil {
|
||||
r.Logf("registry.manifests response=%v", m)
|
||||
return m, err
|
||||
}
|
||||
|
||||
|
@ -62,6 +64,7 @@ func (r *Registry) ManifestV2(repository, ref string) (schema2.Manifest, error)
|
|||
|
||||
var m schema2.Manifest
|
||||
if _, err := r.getJSON(uri, &m, true); err != nil {
|
||||
r.Logf("registry.manifests response=%v", m)
|
||||
return m, err
|
||||
}
|
||||
|
||||
|
@ -75,6 +78,7 @@ func (r *Registry) ManifestV1(repository, ref string) (schema1.SignedManifest, e
|
|||
|
||||
var m schema1.SignedManifest
|
||||
if _, err := r.getJSON(uri, &m, false); err != nil {
|
||||
r.Logf("registry.manifests response=%v", m)
|
||||
return m, err
|
||||
}
|
||||
|
||||
|
|
|
@ -123,6 +123,7 @@ func (r *Registry) getJSON(url string, response interface{}, addV2Header bool) (
|
|||
return nil, err
|
||||
}
|
||||
defer resp.Body.Close()
|
||||
r.Logf("registry.registry resp.Status=%s", resp.Status)
|
||||
|
||||
if err := json.NewDecoder(resp.Body).Decode(response); err != nil {
|
||||
return nil, err
|
||||
|
|
Loading…
Reference in a new issue