Skip to content

Commit 3ab4da1

Browse files
committed
Add basic SPDX RDF output
1 parent 312404b commit 3ab4da1

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

src/scancode/cli.py

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -245,7 +245,7 @@ class ScanCommand(utils.BaseCommand):
245245
Try 'scancode --help' for help on options and arguments.'''
246246

247247

248-
formats = ('json', 'html', 'html-app', 'spdx-tv')
248+
formats = ('json', 'html', 'html-app', 'spdx-tv', 'spdx-rdf')
249249

250250
def validate_formats(ctx, param, value):
251251
value_lower = value.lower()
@@ -648,15 +648,14 @@ def save_results(files_count, scanned_files, format, input, output_file):
648648
output_file.write(unicode(json.dumps(meta, indent=2 * ' ', iterable_as_array=True, encoding='utf-8')))
649649
output_file.write('\n')
650650

651-
elif format == 'spdx-tv':
651+
elif format == 'spdx-tv' or format == 'spdx-rdf':
652652
from spdx.checksum import Algorithm
653653
from spdx.creationinfo import Tool
654654
from spdx.document import Document, License
655655
from spdx.file import File
656656
from spdx.package import Package
657657
from spdx.utils import NoAssert
658658
from spdx.version import Version
659-
from spdx.writers.tagvalue import write_document
660659

661660
doc = Document(Version(2, 1), License.from_identifier('CC0-1.0'))
662661

@@ -690,6 +689,12 @@ def save_results(files_count, scanned_files, format, input, output_file):
690689
doc.package.license_declared = NoAssert()
691690
doc.package.conc_lics = NoAssert()
692691

693-
write_document(doc, output_file)
692+
if format == 'spdx-tv':
693+
from spdx.writers.tagvalue import write_document
694+
write_document(doc, output_file)
695+
else:
696+
from spdx.writers.rdf import write_document
697+
write_document(doc, output_file)
698+
694699
else:
695700
raise Exception('Unknown format')

0 commit comments

Comments
 (0)