From 4bf15a6c198a35c33af7c5b22d35d207d2487a23 Mon Sep 17 00:00:00 2001 From: Ruben Date: Sat, 3 Jul 2021 23:25:15 +0200 Subject: [PATCH 1/6] update version --- .circleci/config.yml | 2 +- README.md | 6 +++--- package.json | 2 +- src/commands/scan/flows.ts | 9 +++++++++ src/libs/FindFlows.ts | 1 - src/libs/FindIgnoreFile.ts | 27 +++++++++++++++++++++++++++ 6 files changed, 41 insertions(+), 6 deletions(-) create mode 100644 src/libs/FindIgnoreFile.ts diff --git a/.circleci/config.yml b/.circleci/config.yml index ae89466..f5d7a4d 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -49,7 +49,7 @@ jobs: workflows: version: 2 - "flowhealthcheck-cli": + "lightningflowscan-cli": jobs: - node-latest - node-8 diff --git a/README.md b/README.md index c52368d..843b58c 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -flowhealthcheck-cli +lightningflowscan-cli =================== @@ -8,7 +8,7 @@ $ npm install -g lightningflowscan-cli $ sfdx COMMAND running command... $ sfdx (-v|--version|version) -lightningflowscan-cli/0.0.5 darwin-x64 node-v14.16.1 +lightningflowscan-cli/0.0.7 darwin-x64 node-v14.16.1 $ sfdx --help [COMMAND] USAGE $ sfdx COMMAND @@ -20,7 +20,7 @@ $ npm install -g lightningflowscan-cli $ sfdx hello:lint running command... $ sfdx (-v|--version|version) -flowhealthcheck-cli/0.0.0 darwin-x64 node-v16.1.0 +lightningflowscan-cli/0.0.0 darwin-x64 node-v16.1.0 $ sfdx --help [COMMAND] USAGE $ sfdx scan:flowscan diff --git a/package.json b/package.json index b3be205..6498c27 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "lightningflowscan-cli", - "version": "0.0.6", + "version": "0.0.7", "author": "Ruben", "bugs": "https://github.com/Force-Config-Control/lightningflowscan-cli/issues", "dependencies": { diff --git a/src/commands/scan/flows.ts b/src/commands/scan/flows.ts index 9cdda66..00a3a7d 100644 --- a/src/commands/scan/flows.ts +++ b/src/commands/scan/flows.ts @@ -7,6 +7,7 @@ import {ScanResult} from 'lightningflowscan-core/out/main/models/ScanResult'; import {Violation} from '../../models/Violation'; import {FindFlows} from "../../libs/FindFlows"; import {ParseFlows} from "../../libs/ParseFlows"; +import {FindIgnoreFile} from "../../libs/FindIgnoreFile"; Messages.importMessagesDirectory(__dirname); @@ -24,12 +25,20 @@ export default class flows extends SfdxCommand { const path = await SfdxProject.resolveProjectPath(); const flowFiles = FindFlows(path); + const ignoreFiles = FindIgnoreFile(path); + if(ignoreFiles && ignoreFiles.length > 0){ + + } + + // todo get ignore file const parsedFlows: Flow[] = await ParseFlows(flowFiles); const scanResults: ScanResult[] = core.scan(parsedFlows); const lintResults: Violation[] = []; for (const scanResult of scanResults) { for (const ruleResult of scanResult.ruleResults) { if (ruleResult.results.length > 0) { + + lintResults.push( new Violation( scanResult.flow.label, diff --git a/src/libs/FindFlows.ts b/src/libs/FindFlows.ts index 9d9a03a..23c4f24 100644 --- a/src/libs/FindFlows.ts +++ b/src/libs/FindFlows.ts @@ -25,4 +25,3 @@ export function FindFlows(dir: string) { }; return allFiles(dir, '.flow-meta.xml'); } - diff --git a/src/libs/FindIgnoreFile.ts b/src/libs/FindIgnoreFile.ts new file mode 100644 index 0000000..d46a900 --- /dev/null +++ b/src/libs/FindIgnoreFile.ts @@ -0,0 +1,27 @@ +import {readdirSync, statSync} from 'fs'; +import * as path from 'path'; + +export function FindIgnoreFile(dir: string) { + const allFiles = (dir, ext, files?, result?, regex?) => { + files = files || readdirSync(dir); + result = result || []; + regex = regex || new RegExp(`\\${ext}$`); + + for (let i = 0; i < files.length; i++) { + let file = path.join(dir, files[i]); + if (statSync(file).isDirectory() && !path.extname(file)) { + try { + result = allFiles(file, ext, readdirSync(file), result, regex); + } catch (error) { + continue; + } + } else { + if (regex.test(file)) { + result.push(file); + } + } + } + return result; + }; + return allFiles(dir, '.flowscanignore'); +} From f7c5a6ca067bf3b4b5ecc8890e1fbcf18a249d8f Mon Sep 17 00:00:00 2001 From: Ruben Date: Sun, 4 Jul 2021 03:27:35 +0200 Subject: [PATCH 2/6] exclude flows by name --- src/commands/scan/flows.ts | 53 +++++++++++++++++++---------- src/libs/FindIgnoreFile.ts | 2 +- src/libs/ParseFlows.ts | 2 +- src/models/IgnoredFlowViolations.ts | 8 +++++ src/models/IgnoredViolation.ts | 12 +++++++ src/models/Violation.ts | 6 ++-- 6 files changed, 60 insertions(+), 23 deletions(-) create mode 100644 src/models/IgnoredFlowViolations.ts create mode 100644 src/models/IgnoredViolation.ts diff --git a/src/commands/scan/flows.ts b/src/commands/scan/flows.ts index 00a3a7d..232659d 100644 --- a/src/commands/scan/flows.ts +++ b/src/commands/scan/flows.ts @@ -1,5 +1,5 @@ import {SfdxCommand} from '@salesforce/command'; -import {Messages, SfdxError, SfdxProject} from '@salesforce/core'; +import {fs, Messages, SfdxError, SfdxProject} from '@salesforce/core'; import {AnyJson} from '@salesforce/ts-types'; import * as core from 'lightningflowscan-core/out'; import {Flow} from 'lightningflowscan-core/out/main/models/Flow'; @@ -7,7 +7,8 @@ import {ScanResult} from 'lightningflowscan-core/out/main/models/ScanResult'; import {Violation} from '../../models/Violation'; import {FindFlows} from "../../libs/FindFlows"; import {ParseFlows} from "../../libs/ParseFlows"; -import {FindIgnoreFile} from "../../libs/FindIgnoreFile"; +import * as path from 'path'; +import {IgnoredFlowViolations} from "../../models/IgnoredFlowViolations"; Messages.importMessagesDirectory(__dirname); @@ -23,37 +24,53 @@ export default class flows extends SfdxCommand { public async run(): Promise { - const path = await SfdxProject.resolveProjectPath(); - const flowFiles = FindFlows(path); - const ignoreFiles = FindIgnoreFile(path); - if(ignoreFiles && ignoreFiles.length > 0){ + const aPath = await SfdxProject.resolveProjectPath(); + const flowFiles = FindFlows(aPath); + // const ignoreFiles = FindIgnoreFile(aPath); + const pathToIgnoreFile = path.join(aPath, 'flows.scanignore.json'); + let foundPath; + if(fs.existsSync(pathToIgnoreFile)){ + foundPath = fs.readJsonSync(pathToIgnoreFile); } + let ignoredFlowViolations; + if(foundPath){ + let ignoredFlows = foundPath['ignoredFlows']; + if(Array.isArray(ignoredFlows)){ + ignoredFlowViolations = new IgnoredFlowViolations(ignoredFlows); + } else { + ignoredFlowViolations = new IgnoredFlowViolations([ignoredFlows]); + } + } + // this.ux.log("ignoredFlowViolations: " + ignoredFlowViolations.flowlabels.length); - // todo get ignore file const parsedFlows: Flow[] = await ParseFlows(flowFiles); const scanResults: ScanResult[] = core.scan(parsedFlows); const lintResults: Violation[] = []; for (const scanResult of scanResults) { for (const ruleResult of scanResult.ruleResults) { if (ruleResult.results.length > 0) { - - - lintResults.push( - new Violation( - scanResult.flow.label, - ruleResult.ruleLabel, - ruleResult.ruleDescription, - ruleResult.results.length - ) - ); + if(ignoredFlowViolations && ignoredFlowViolations.flowlabels.length > 0 && ignoredFlowViolations.flowlabels.find(violation => { + return (violation == scanResult.flow.label); + })){ + continue; + } else { + lintResults.push( + new Violation( + scanResult.flow.label, + ruleResult.ruleLabel, + ruleResult.ruleDescription, + ruleResult.results.length + ) + ); + } } } } if (lintResults.length > 0) { const warnings: string[] = []; for (const lintResult of lintResults) { - warnings.push('in Flow \'' + lintResult.label + '\', Rule:\'' + lintResult.ruleLabel + '\' is violated ' + lintResult.numberOfViolations + ' times'); + warnings.push('in Flow \'' + lintResult.flowlabel + '\', Rule:\'' + lintResult.ruleLabel + '\' is violated ' + lintResult.numberOfViolations + ' times'); } throw new SfdxError(messages.getMessage('commandDescription'), 'results', warnings, 1); } diff --git a/src/libs/FindIgnoreFile.ts b/src/libs/FindIgnoreFile.ts index d46a900..d7cedef 100644 --- a/src/libs/FindIgnoreFile.ts +++ b/src/libs/FindIgnoreFile.ts @@ -23,5 +23,5 @@ export function FindIgnoreFile(dir: string) { } return result; }; - return allFiles(dir, '.flowscanignore'); + return allFiles(dir, '.flowscanignore.json'); } diff --git a/src/libs/ParseFlows.ts b/src/libs/ParseFlows.ts index 2104096..145ba16 100644 --- a/src/libs/ParseFlows.ts +++ b/src/libs/ParseFlows.ts @@ -1,4 +1,4 @@ -import path = require('path'); +import * as path from 'path'; import {Flow} from 'lightningflowscan-core/out/main/models/Flow'; import {XMLParser} from './XMLParser'; import { fs } from '@salesforce/core/lib/util/fs'; diff --git a/src/models/IgnoredFlowViolations.ts b/src/models/IgnoredFlowViolations.ts new file mode 100644 index 0000000..c454052 --- /dev/null +++ b/src/models/IgnoredFlowViolations.ts @@ -0,0 +1,8 @@ +export class IgnoredFlowViolations { + + public flowlabels: string[]; + + constructor(flowlabels: string[]) { + this.flowlabels = flowlabels; + } +} diff --git a/src/models/IgnoredViolation.ts b/src/models/IgnoredViolation.ts new file mode 100644 index 0000000..df8ee99 --- /dev/null +++ b/src/models/IgnoredViolation.ts @@ -0,0 +1,12 @@ +export class IgnoredViolation { + + public flowlabel: string; + public ruleLabel?: string; + + constructor(label: string, ruleLabel?: string) { + this.flowlabel = label; + if(ruleLabel){ + this.ruleLabel = ruleLabel; + } + } +} diff --git a/src/models/Violation.ts b/src/models/Violation.ts index 19861f1..a826e8e 100644 --- a/src/models/Violation.ts +++ b/src/models/Violation.ts @@ -1,11 +1,11 @@ export class Violation { - public label: string; + public flowlabel: string; public ruleLabel: string; public ruleDescription: string; public numberOfViolations: number; - constructor(label: string, ruleLabel: string, ruleDescription: string, numberOfViolatinos: number){ - this.label = label; + constructor(flowlabel: string, ruleLabel: string, ruleDescription: string, numberOfViolatinos: number){ + this.flowlabel = flowlabel; this.ruleLabel = ruleLabel; this.ruleDescription = ruleDescription; this.numberOfViolations = numberOfViolatinos; From 148eb3e419a32ae8a8eac3f95932ed2763618b2e Mon Sep 17 00:00:00 2001 From: Ruben Date: Sun, 4 Jul 2021 04:21:03 +0200 Subject: [PATCH 3/6] exclude flows by name --- src/commands/scan/flows.ts | 34 +++++++++++++++++------------ src/models/IgnoredFlowViolations.ts | 8 +++++-- src/models/IgnoredViolation.ts | 12 +++++----- 3 files changed, 32 insertions(+), 22 deletions(-) diff --git a/src/commands/scan/flows.ts b/src/commands/scan/flows.ts index 232659d..e734460 100644 --- a/src/commands/scan/flows.ts +++ b/src/commands/scan/flows.ts @@ -9,6 +9,7 @@ import {FindFlows} from "../../libs/FindFlows"; import {ParseFlows} from "../../libs/ParseFlows"; import * as path from 'path'; import {IgnoredFlowViolations} from "../../models/IgnoredFlowViolations"; +import {IgnoredViolation} from "../../models/IgnoredViolation"; Messages.importMessagesDirectory(__dirname); @@ -26,35 +27,40 @@ export default class flows extends SfdxCommand { const aPath = await SfdxProject.resolveProjectPath(); const flowFiles = FindFlows(aPath); - // const ignoreFiles = FindIgnoreFile(aPath); const pathToIgnoreFile = path.join(aPath, 'flows.scanignore.json'); let foundPath; - if(fs.existsSync(pathToIgnoreFile)){ + if (fs.existsSync(pathToIgnoreFile)) { foundPath = fs.readJsonSync(pathToIgnoreFile); } let ignoredFlowViolations; - if(foundPath){ - let ignoredFlows = foundPath['ignoredFlows']; - if(Array.isArray(ignoredFlows)){ - ignoredFlowViolations = new IgnoredFlowViolations(ignoredFlows); - } else { - ignoredFlowViolations = new IgnoredFlowViolations([ignoredFlows]); - } + let ignoredViolations; + if (foundPath) { + let ignoredFlows = foundPath['flowsToBeIgnored']; + ignoredFlowViolations = new IgnoredFlowViolations(ignoredFlows); + let ignoredRulesInFlows = foundPath['rulesToBeIgnoredInFlows']; + ignoredViolations = new IgnoredViolation(ignoredRulesInFlows); } - // this.ux.log("ignoredFlowViolations: " + ignoredFlowViolations.flowlabels.length); - const parsedFlows: Flow[] = await ParseFlows(flowFiles); const scanResults: ScanResult[] = core.scan(parsedFlows); const lintResults: Violation[] = []; for (const scanResult of scanResults) { for (const ruleResult of scanResult.ruleResults) { if (ruleResult.results.length > 0) { - if(ignoredFlowViolations && ignoredFlowViolations.flowlabels.length > 0 && ignoredFlowViolations.flowlabels.find(violation => { + + + if (ignoredFlowViolations && ignoredFlowViolations.flowlabels.length > 0 && ignoredFlowViolations.flowlabels.find(violation => { return (violation == scanResult.flow.label); - })){ + })) { continue; - } else { + } + // todo per rule + // else if (ignoredViolations && ignoredViolations.ignoredViolations.length > 0 && ignoredViolations.ignoredViolations.find(violation => { + // return (violation.flowname == scanResult.flow.label && violation.rulename == ruleResult.ruleLabel); + // })) { + // continue; + // } + else { lintResults.push( new Violation( scanResult.flow.label, diff --git a/src/models/IgnoredFlowViolations.ts b/src/models/IgnoredFlowViolations.ts index c454052..08018a7 100644 --- a/src/models/IgnoredFlowViolations.ts +++ b/src/models/IgnoredFlowViolations.ts @@ -2,7 +2,11 @@ export class IgnoredFlowViolations { public flowlabels: string[]; - constructor(flowlabels: string[]) { - this.flowlabels = flowlabels; + constructor(flowlabels: string[] | string) { + if (Array.isArray(flowlabels)) { + this.flowlabels = flowlabels; + } else { + this.flowlabels = [flowlabels]; + } } } diff --git a/src/models/IgnoredViolation.ts b/src/models/IgnoredViolation.ts index df8ee99..9f09bce 100644 --- a/src/models/IgnoredViolation.ts +++ b/src/models/IgnoredViolation.ts @@ -1,12 +1,12 @@ export class IgnoredViolation { - public flowlabel: string; - public ruleLabel?: string; + public ignoredRulesInFlows; - constructor(label: string, ruleLabel?: string) { - this.flowlabel = label; - if(ruleLabel){ - this.ruleLabel = ruleLabel; + constructor(ignoredRulesInFlows: any) { + if (Array.isArray(ignoredRulesInFlows)) { + this.ignoredRulesInFlows = ignoredRulesInFlows; + } else { + this.ignoredRulesInFlows = [ignoredRulesInFlows]; } } } From b88cd5b10af4eb70e0fa84d58714a375f02e9ec4 Mon Sep 17 00:00:00 2001 From: Ruben Date: Sun, 4 Jul 2021 12:13:17 +0200 Subject: [PATCH 4/6] ignore specific rule violatons in a flow --- src/commands/scan/flows.ts | 19 ++++++++----------- src/models/IgnoredRuleViolationsInFlows.ts | 12 ++++++++++++ src/models/IgnoredViolation.ts | 12 ------------ 3 files changed, 20 insertions(+), 23 deletions(-) create mode 100644 src/models/IgnoredRuleViolationsInFlows.ts delete mode 100644 src/models/IgnoredViolation.ts diff --git a/src/commands/scan/flows.ts b/src/commands/scan/flows.ts index e734460..1a66816 100644 --- a/src/commands/scan/flows.ts +++ b/src/commands/scan/flows.ts @@ -9,7 +9,7 @@ import {FindFlows} from "../../libs/FindFlows"; import {ParseFlows} from "../../libs/ParseFlows"; import * as path from 'path'; import {IgnoredFlowViolations} from "../../models/IgnoredFlowViolations"; -import {IgnoredViolation} from "../../models/IgnoredViolation"; +import {IgnoredRuleViolationsInFlows} from "../../models/IgnoredRuleViolationsInFlows"; Messages.importMessagesDirectory(__dirname); @@ -34,12 +34,12 @@ export default class flows extends SfdxCommand { foundPath = fs.readJsonSync(pathToIgnoreFile); } let ignoredFlowViolations; - let ignoredViolations; + let ignoredRuleViolationsInFlows; if (foundPath) { let ignoredFlows = foundPath['flowsToBeIgnored']; ignoredFlowViolations = new IgnoredFlowViolations(ignoredFlows); let ignoredRulesInFlows = foundPath['rulesToBeIgnoredInFlows']; - ignoredViolations = new IgnoredViolation(ignoredRulesInFlows); + ignoredRuleViolationsInFlows = new IgnoredRuleViolationsInFlows(ignoredRulesInFlows); } const parsedFlows: Flow[] = await ParseFlows(flowFiles); const scanResults: ScanResult[] = core.scan(parsedFlows); @@ -47,19 +47,16 @@ export default class flows extends SfdxCommand { for (const scanResult of scanResults) { for (const ruleResult of scanResult.ruleResults) { if (ruleResult.results.length > 0) { - - if (ignoredFlowViolations && ignoredFlowViolations.flowlabels.length > 0 && ignoredFlowViolations.flowlabels.find(violation => { return (violation == scanResult.flow.label); })) { continue; } - // todo per rule - // else if (ignoredViolations && ignoredViolations.ignoredViolations.length > 0 && ignoredViolations.ignoredViolations.find(violation => { - // return (violation.flowname == scanResult.flow.label && violation.rulename == ruleResult.ruleLabel); - // })) { - // continue; - // } + else if (ignoredRuleViolationsInFlows && ignoredRuleViolationsInFlows.ignoredRuleViolationsInFlows.length > 0 && ignoredRuleViolationsInFlows.ignoredRuleViolationsInFlows.find(violation => { + return (violation.flowname == scanResult.flow.label && violation.rulename == ruleResult.ruleLabel); + })) { + continue; + } else { lintResults.push( new Violation( diff --git a/src/models/IgnoredRuleViolationsInFlows.ts b/src/models/IgnoredRuleViolationsInFlows.ts new file mode 100644 index 0000000..dc3f2bd --- /dev/null +++ b/src/models/IgnoredRuleViolationsInFlows.ts @@ -0,0 +1,12 @@ +export class IgnoredRuleViolationsInFlows { + + public ignoredRuleViolationsInFlows; + + constructor(ignoredRuleViolationsInFlows: any) { + if (Array.isArray(ignoredRuleViolationsInFlows)) { + this.ignoredRuleViolationsInFlows = ignoredRuleViolationsInFlows; + } else { + this.ignoredRuleViolationsInFlows = [ignoredRuleViolationsInFlows]; + } + } +} diff --git a/src/models/IgnoredViolation.ts b/src/models/IgnoredViolation.ts deleted file mode 100644 index 9f09bce..0000000 --- a/src/models/IgnoredViolation.ts +++ /dev/null @@ -1,12 +0,0 @@ -export class IgnoredViolation { - - public ignoredRulesInFlows; - - constructor(ignoredRulesInFlows: any) { - if (Array.isArray(ignoredRulesInFlows)) { - this.ignoredRulesInFlows = ignoredRulesInFlows; - } else { - this.ignoredRulesInFlows = [ignoredRulesInFlows]; - } - } -} From 4e057515292a94ebdfb30023afd20bcfcc916dca Mon Sep 17 00:00:00 2001 From: Ruben Date: Sun, 4 Jul 2021 12:55:12 +0200 Subject: [PATCH 5/6] ignore specific rule violatons in a flow --- src/commands/scan/flows.ts | 50 +++++++++++++++++++++++++------------- 1 file changed, 33 insertions(+), 17 deletions(-) diff --git a/src/commands/scan/flows.ts b/src/commands/scan/flows.ts index 1a66816..a0f24e6 100644 --- a/src/commands/scan/flows.ts +++ b/src/commands/scan/flows.ts @@ -23,41 +23,38 @@ export default class flows extends SfdxCommand { protected static supportsDevhubUsername = false; protected static requiresProject = true; + public ignoredFlowViolations: IgnoredFlowViolations; + public ignoredRuleViolationsInFlows: IgnoredRuleViolationsInFlows; + public async run(): Promise { const aPath = await SfdxProject.resolveProjectPath(); const flowFiles = FindFlows(aPath); + // todo ugly code + // if ignore file found, populate this.ignoredFlowViolations & this.ignoredRuleViolationsInFlows const pathToIgnoreFile = path.join(aPath, 'flows.scanignore.json'); - let foundPath; - if (fs.existsSync(pathToIgnoreFile)) { - foundPath = fs.readJsonSync(pathToIgnoreFile); - } - let ignoredFlowViolations; - let ignoredRuleViolationsInFlows; - if (foundPath) { - let ignoredFlows = foundPath['flowsToBeIgnored']; - ignoredFlowViolations = new IgnoredFlowViolations(ignoredFlows); - let ignoredRulesInFlows = foundPath['rulesToBeIgnoredInFlows']; - ignoredRuleViolationsInFlows = new IgnoredRuleViolationsInFlows(ignoredRulesInFlows); + if(pathToIgnoreFile){ + this.createIgnoreViolations(pathToIgnoreFile); } + const parsedFlows: Flow[] = await ParseFlows(flowFiles); const scanResults: ScanResult[] = core.scan(parsedFlows); const lintResults: Violation[] = []; for (const scanResult of scanResults) { for (const ruleResult of scanResult.ruleResults) { if (ruleResult.results.length > 0) { - if (ignoredFlowViolations && ignoredFlowViolations.flowlabels.length > 0 && ignoredFlowViolations.flowlabels.find(violation => { + if (this.ignoredFlowViolations && this.ignoredFlowViolations.flowlabels.length > 0 && this.ignoredFlowViolations.flowlabels.find(violation => { return (violation == scanResult.flow.label); })) { continue; - } - else if (ignoredRuleViolationsInFlows && ignoredRuleViolationsInFlows.ignoredRuleViolationsInFlows.length > 0 && ignoredRuleViolationsInFlows.ignoredRuleViolationsInFlows.find(violation => { - return (violation.flowname == scanResult.flow.label && violation.rulename == ruleResult.ruleLabel); + } else if (this.ignoredRuleViolationsInFlows && this.ignoredRuleViolationsInFlows.ignoredRuleViolationsInFlows.length > 0 && this.ignoredRuleViolationsInFlows.ignoredRuleViolationsInFlows.find(violation => { + if (violation && violation.flowname && violation.rulename) { + return (violation.flowname == scanResult.flow.label && violation.rulename == ruleResult.ruleLabel); + } })) { continue; - } - else { + } else { lintResults.push( new Violation( scanResult.flow.label, @@ -80,4 +77,23 @@ export default class flows extends SfdxCommand { // If there are no lintresults return 0; } + + private createIgnoreViolations(pathToIgnoreFile) { + + let foundPath; + if (fs.existsSync(pathToIgnoreFile)) { + foundPath = fs.readJsonSync(pathToIgnoreFile); + } + try { + let ignoredFlows = foundPath['flowsToBeIgnored']; + this.ignoredFlowViolations = new IgnoredFlowViolations(ignoredFlows); + let ignoredRulesInFlows = foundPath['rulesToBeIgnoredInFlows']; + this.ignoredRuleViolationsInFlows = new IgnoredRuleViolationsInFlows(ignoredRulesInFlows); + } catch (e) { + + } + + return + } + } From 0d6cb9003aeab765f0361b7b60ba29de0eb20e59 Mon Sep 17 00:00:00 2001 From: Ruben Date: Sun, 4 Jul 2021 12:56:18 +0200 Subject: [PATCH 6/6] update version --- README.md | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 843b58c..c6c996e 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ $ npm install -g lightningflowscan-cli $ sfdx COMMAND running command... $ sfdx (-v|--version|version) -lightningflowscan-cli/0.0.7 darwin-x64 node-v14.16.1 +lightningflowscan-cli/0.0.8 darwin-x64 node-v14.16.1 $ sfdx --help [COMMAND] USAGE $ sfdx COMMAND diff --git a/package.json b/package.json index 6498c27..8a91f61 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "lightningflowscan-cli", - "version": "0.0.7", + "version": "0.0.8", "author": "Ruben", "bugs": "https://github.com/Force-Config-Control/lightningflowscan-cli/issues", "dependencies": {