@@ -13,8 +13,10 @@ import {
1313 submitSnapshot
1414} from '@github/dependency-submission-toolkit'
1515
16+ import CondaParser from './condaParser' ;
17+
1618async function run ( ) {
17- let manifests = getManifestsFromEnvironmentFiles ( searchFiles ( ) ) ;
19+ let manifests = CondaParser . getManifestsFromEnvironmentFiles ( CondaParser . searchFiles ( ) ) ;
1820
1921 let snapshot = new Snapshot ( {
2022 name : "conda-dependency-submission-action" ,
@@ -34,66 +36,4 @@ async function run() {
3436 submitSnapshot ( snapshot ) ;
3537}
3638
37- function getManifestFromEnvironmentFile ( document , fileName ) {
38- core . debug ( `getManifestFromEnvironmentFile processing ${ fileName } ` ) ;
39-
40- let manifest = new Manifest ( "Environment" , fileName ) ;
41-
42-
43- /**
44- let manifest = new Manifest(document.name, fileName);
45-
46- core.debug(`Processing ${document.packages?.length} packages`);
47-
48- document.packages?.forEach(pkg => {
49- let packageName = pkg.name;
50- let packageVersion = pkg.packageVersion;
51- let referenceLocator = pkg.externalRefs?.find(ref => ref.referenceCategory === "PACKAGE-MANAGER" && ref.referenceType === "purl")?.referenceLocator;
52- let genericPurl = `pkg:generic/${packageName}@${packageVersion}`;
53- // SPDX 2.3 defines a purl field
54- let purl;
55- if (pkg.purl != undefined) {
56- purl = pkg.purl;
57- } else if (referenceLocator != undefined) {
58- purl = referenceLocator;
59- } else {
60- purl = genericPurl;
61- }
62-
63- // Working around weird encoding issues from an SBOM generator
64- // Find the last instance of %40 and replace it with @
65- purl = replaceVersionEscape(purl);
66-
67- let relationships = document.relationships?.find(rel => rel.relatedSpdxElement == pkg.SPDXID && rel.relationshipType == "DEPENDS_ON" && rel.spdxElementId != "SPDXRef-RootPackage");
68- if (relationships != null && relationships.length > 0) {
69- manifest.addIndirectDependency(new Package(purl));
70- } else {
71- manifest.addDirectDependency(new Package(purl));
72- }
73- });
74- return manifest;
75- */
76- }
77-
78- function getManifestsFromEnvironmentFiles ( files ) {
79- core . debug ( `Processing ${ files . length } files` ) ;
80- let manifests = [ ] ;
81- files ?. forEach ( file => {
82- core . debug ( `Processing ${ file } ` ) ;
83- manifests . push ( getManifestFromEnvironmentFile ( yaml . parse ( file ) ) ) ;
84- } ) ;
85- return manifests ;
86- }
87-
88- function searchFiles ( filePath = false , filePattern = false ) {
89- if ( ! filePath ) {
90- let filePath = core . getInput ( 'filePath' ) ;
91- }
92- if ( ! filePattern ) {
93- let filePattern = core . getInput ( 'filePattern' ) ;
94- }
95-
96- return glob . sync ( `${ filePath } /${ filePattern } ` , { } ) ;
97- }
98-
9939run ( ) ;
0 commit comments