use xml encoder (#165)

Signed-off-by: Alex Goodman <alex.goodman@anchore.com>
This commit is contained in:
Alex Goodman 2020-08-31 08:06:56 -04:00 committed by GitHub
parent 8a4886ec0e
commit df7c83c9b0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 73 additions and 74 deletions

View File

@ -66,16 +66,15 @@ func (pres *Presenter) Present(output io.Writer) error {
return fmt.Errorf("unsupported source: %T", src) return fmt.Errorf("unsupported source: %T", src)
} }
xmlOut, err := xml.MarshalIndent(bom, " ", " ") encoder := xml.NewEncoder(output)
encoder.Indent("", " ")
_, err := output.Write([]byte(xml.Header))
if err != nil { if err != nil {
return err return err
} }
_, err = output.Write([]byte(xml.Header)) err = encoder.Encode(bom)
if err != nil {
return err
}
_, err = output.Write(xmlOut)
if err != nil { if err != nil {
return err return err
} }

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<bom xmlns="http://cyclonedx.org/schema/bom/1.2" xmlns:bd="http://cyclonedx.org/schema/ext/bom-descriptor/1.0" version="1" serialNumber="urn:uuid:88c9a559-fb74-45a1-9dbb-a3d8bcbcacc8"> <bom xmlns="http://cyclonedx.org/schema/bom/1.2" xmlns:bd="http://cyclonedx.org/schema/ext/bom-descriptor/1.0" version="1" serialNumber="urn:uuid:b3b1786a-2de3-4501-b902-58b701b8ad0e">
<components> <components>
<component type="library"> <component type="library">
<name>package1</name> <name>package1</name>
@ -21,7 +21,7 @@
</component> </component>
</components> </components>
<bd:metadata> <bd:metadata>
<bd:timestamp>2020-08-29T20:17:49-04:00</bd:timestamp> <bd:timestamp>2020-08-30T21:50:50-04:00</bd:timestamp>
<bd:tool> <bd:tool>
<bd:vendor>anchore</bd:vendor> <bd:vendor>anchore</bd:vendor>
<bd:name>syft</bd:name> <bd:name>syft</bd:name>
@ -32,4 +32,4 @@
<version></version> <version></version>
</bd:component> </bd:component>
</bd:metadata> </bd:metadata>
</bom> </bom>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<bom xmlns="http://cyclonedx.org/schema/bom/1.2" xmlns:bd="http://cyclonedx.org/schema/ext/bom-descriptor/1.0" version="1" serialNumber="urn:uuid:6da957f1-3337-4128-870c-fe271aa195d1"> <bom xmlns="http://cyclonedx.org/schema/bom/1.2" xmlns:bd="http://cyclonedx.org/schema/ext/bom-descriptor/1.0" version="1" serialNumber="urn:uuid:ab970429-e6a2-44a1-810c-f9ed2b7c3147">
<components> <components>
<component type="library"> <component type="library">
<name>package1</name> <name>package1</name>
@ -21,7 +21,7 @@
</component> </component>
</components> </components>
<bd:metadata> <bd:metadata>
<bd:timestamp>2020-08-29T20:17:49-04:00</bd:timestamp> <bd:timestamp>2020-08-30T21:50:50-04:00</bd:timestamp>
<bd:tool> <bd:tool>
<bd:vendor>anchore</bd:vendor> <bd:vendor>anchore</bd:vendor>
<bd:name>syft</bd:name> <bd:name>syft</bd:name>
@ -32,4 +32,4 @@
<version>04e16e44161c8888a1a963720fd0443cbf7eef8101434c431de8725cd98cc9f7</version> <version>04e16e44161c8888a1a963720fd0443cbf7eef8101434c431de8725cd98cc9f7</version>
</bd:component> </bd:component>
</bd:metadata> </bd:metadata>
</bom> </bom>