@@ -4,32 +4,24 @@ import org.apache.commons.io.FileUtils
44import org .cyclonedx .model .Bom
55import org .cyclonedx .{BomGeneratorFactory , CycloneDxSchema }
66import sbt .Keys .{sLog , target }
7- import sbt .{Def , File , Setting , _ }
7+ import sbt .{Compile , Def , File , Setting , _ }
88import sbtBom .BomSbtPlugin .autoImport ._
99
1010import java .nio .charset .Charset
1111
1212object BomSbtSettings {
1313 val schemaVersion : CycloneDxSchema .Version = CycloneDxSchema .Version .VERSION_10
1414
15- def projectSettings : Seq [Setting [_]] = {
16- // val configs = Seq(Compile, Test, IntegrationTest, Runtime, Provided, Optional)
17- Seq (
18- targetBomFile := target.value / " bom.xml" ,
19- makeBom := Def .taskDyn(makeBomTask(Classpaths .updateTask.value)).value,
20- listBom := Def .taskDyn(listBomTask(Classpaths .updateTask.value)).value,
21- )
22- }
23-
24- private def makeBomTask (report : UpdateReport ): Def .Initialize [Task [sbt.File ]] = Def .task[File ] {
15+ def makeBomTask (report : UpdateReport ): Def .Initialize [Task [sbt.File ]] = Def .task[File ] {
2516 val log : Logger = sLog.value
2617 val bomFile = targetBomFile.value
2718
2819 log.info(s " Creating bom file ${bomFile.getAbsolutePath}" )
2920
30- val bom : Bom = new BomExtractor (schemaVersion, report, log).bom
21+ val params = extractorParams
22+ val bom : Bom = new BomExtractor (params, report, log).bom
3123 val bomText : String = getXmlText(bom, schemaVersion)
32- logBomInfo(log, bom)
24+ logBomInfo(log, params, bom)
3325
3426 FileUtils .write(bomFile, bomText, Charset .forName(" UTF-8" ), false )
3527
@@ -38,24 +30,29 @@ object BomSbtSettings {
3830 bomFile
3931 }
4032
41- private def listBomTask (report : UpdateReport ): Def .Initialize [Task [String ]] =
33+ def listBomTask (report : UpdateReport ): Def .Initialize [Task [String ]] =
4234 Def .task[String ] {
4335 val log : Logger = sLog.value
4436
4537 log.info(" Creating bom" )
4638
47- val bom : Bom = new BomExtractor (schemaVersion, report, log).bom
39+ val params = extractorParams
40+ val bom : Bom = new BomExtractor (params, report, log).bom
4841 val bomText : String = getXmlText(bom, schemaVersion)
49- logBomInfo(log, bom)
42+ logBomInfo(log, params, bom)
5043
5144 log.info(" Bom created" )
5245
5346 bomText
5447 }
5548
56- private def logBomInfo (log : Logger , bom : Bom ): Unit = {
49+ private def extractorParams : BomExtractorParams =
50+ BomExtractorParams (schemaVersion, Compile )
51+
52+ private def logBomInfo (log : Logger , params : BomExtractorParams , bom : Bom ): Unit = {
5753 log.info(s " Schema version: ${schemaVersion.getVersionString}" )
5854 log.info(s " Serial number : ${bom.getSerialNumber}" )
55+ log.info(s " Scope : ${params.configuration.id}" )
5956 }
6057
6158 private def getXmlText (bom : Bom , schemaVersion : CycloneDxSchema .Version ) = {
0 commit comments