Skip to content

Commit

Permalink
Updated logic so we don't build a nonsensical command line
Browse files Browse the repository at this point in the history
  • Loading branch information
reynoldsa committed Nov 7, 2024
1 parent a782547 commit 8467ba9
Show file tree
Hide file tree
Showing 2 changed files with 95 additions and 92 deletions.
90 changes: 45 additions & 45 deletions lib/msdo.js
Original file line number Diff line number Diff line change
Expand Up @@ -59,59 +59,59 @@ class MicrosoftSecurityDevOps {
}
else {
args = ['run'];
}
let config = core.getInput('config');
if (!common.isNullOrWhiteSpace(config)) {
args.push('-c');
args.push(config);
}
let policy = core.getInput('policy');
if (common.isNullOrWhiteSpace(policy)) {
policy = "GitHub";
}
args.push('-p');
args.push(policy);
let categoriesString = core.getInput('categories');
if (!common.isNullOrWhiteSpace(categoriesString)) {
args.push('--categories');
let categories = categoriesString.split(',');
for (let i = 0; i < categories.length; i++) {
let category = categories[i];
if (!common.isNullOrWhiteSpace(category)) {
args.push(category.trim());
let config = core.getInput('config');
if (!common.isNullOrWhiteSpace(config)) {
args.push('-c');
args.push(config);
}
let policy = core.getInput('policy');
if (common.isNullOrWhiteSpace(policy)) {
policy = "GitHub";
}
args.push('-p');
args.push(policy);
let categoriesString = core.getInput('categories');
if (!common.isNullOrWhiteSpace(categoriesString)) {
args.push('--categories');
let categories = categoriesString.split(',');
for (let i = 0; i < categories.length; i++) {
let category = categories[i];
if (!common.isNullOrWhiteSpace(category)) {
args.push(category.trim());
}
}
}
}
let languagesString = core.getInput('languages');
if (!common.isNullOrWhiteSpace(languagesString)) {
args.push('--languages');
let languages = languagesString.split(',');
for (let i = 0; i < languages.length; i++) {
let language = languages[i];
if (!common.isNullOrWhiteSpace(language)) {
args.push(language.trim());
let languagesString = core.getInput('languages');
if (!common.isNullOrWhiteSpace(languagesString)) {
args.push('--languages');
let languages = languagesString.split(',');
for (let i = 0; i < languages.length; i++) {
let language = languages[i];
if (!common.isNullOrWhiteSpace(language)) {
args.push(language.trim());
}
}
}
}
let toolsString = core.getInput('tools');
let includedTools = [];
if (!common.isNullOrWhiteSpace(toolsString)) {
let tools = toolsString.split(',');
for (let i = 0; i < tools.length; i++) {
let tool = tools[i];
let toolTrimmed = tool.trim();
if (!common.isNullOrWhiteSpace(tool)
&& tool != msdo_helpers_1.Tools.ContainerMapping
&& includedTools.indexOf(toolTrimmed) == -1) {
if (includedTools.length == 0) {
args.push('--tool');
let toolsString = core.getInput('tools');
let includedTools = [];
if (!common.isNullOrWhiteSpace(toolsString)) {
let tools = toolsString.split(',');
for (let i = 0; i < tools.length; i++) {
let tool = tools[i];
let toolTrimmed = tool.trim();
if (!common.isNullOrWhiteSpace(tool)
&& tool != msdo_helpers_1.Tools.ContainerMapping
&& includedTools.indexOf(toolTrimmed) == -1) {
if (includedTools.length == 0) {
args.push('--tool');
}
args.push(toolTrimmed);
includedTools.push(toolTrimmed);
}
args.push(toolTrimmed);
includedTools.push(toolTrimmed);
}
}
args.push('--github');
}
args.push('--github');
yield client.run(args, 'microsoft/security-devops-action');
});
}
Expand Down
97 changes: 50 additions & 47 deletions src/msdo.ts
Original file line number Diff line number Diff line change
Expand Up @@ -24,75 +24,78 @@ export class MicrosoftSecurityDevOps implements IMicrosoftSecurityDevOps {

public async runMain() {
core.debug('MicrosoftSecurityDevOps.runMain - Running MSDO...');

let args: string[] = undefined;

// Check job type - might be existing file
let existingFilename = core.getInput('existingFilename');
if (!common.isNullOrWhiteSpace(existingFilename)) {
args = ['upload', '--file', existingFilename];
}

// Nope, run the tool as intended
else {
args = ['run'];
}

let config: string = core.getInput('config');
if (!common.isNullOrWhiteSpace(config)) {
args.push('-c');
args.push(config);
}
let config: string = core.getInput('config');
if (!common.isNullOrWhiteSpace(config)) {
args.push('-c');
args.push(config);
}

let policy: string = core.getInput('policy');
if (common.isNullOrWhiteSpace(policy)) {
policy = "GitHub";
}
let policy: string = core.getInput('policy');
if (common.isNullOrWhiteSpace(policy)) {
policy = "GitHub";
}

args.push('-p');
args.push(policy);

let categoriesString: string = core.getInput('categories');
if (!common.isNullOrWhiteSpace(categoriesString)) {
args.push('--categories');
let categories = categoriesString.split(',');
for (let i = 0; i < categories.length; i++) {
let category = categories[i];
if (!common.isNullOrWhiteSpace(category)) {
args.push(category.trim());
args.push('-p');
args.push(policy);

let categoriesString: string = core.getInput('categories');
if (!common.isNullOrWhiteSpace(categoriesString)) {
args.push('--categories');
let categories = categoriesString.split(',');
for (let i = 0; i < categories.length; i++) {
let category = categories[i];
if (!common.isNullOrWhiteSpace(category)) {
args.push(category.trim());
}
}
}
}

let languagesString: string = core.getInput('languages');
if (!common.isNullOrWhiteSpace(languagesString)) {
args.push('--languages');
let languages = languagesString.split(',');
for (let i = 0; i < languages.length; i++) {
let language = languages[i];
if (!common.isNullOrWhiteSpace(language)) {
args.push(language.trim());
let languagesString: string = core.getInput('languages');
if (!common.isNullOrWhiteSpace(languagesString)) {
args.push('--languages');
let languages = languagesString.split(',');
for (let i = 0; i < languages.length; i++) {
let language = languages[i];
if (!common.isNullOrWhiteSpace(language)) {
args.push(language.trim());
}
}
}
}

let toolsString: string = core.getInput('tools');
let includedTools = [];
if (!common.isNullOrWhiteSpace(toolsString)) {
let tools = toolsString.split(',');
for (let i = 0; i < tools.length; i++) {
let tool = tools[i];
let toolTrimmed = tool.trim();
if (!common.isNullOrWhiteSpace(tool)
&& tool != Tools.ContainerMapping // This tool is not handled by this executor
&& includedTools.indexOf(toolTrimmed) == -1) {
if (includedTools.length == 0) {
args.push('--tool');
let toolsString: string = core.getInput('tools');
let includedTools = [];
if (!common.isNullOrWhiteSpace(toolsString)) {
let tools = toolsString.split(',');
for (let i = 0; i < tools.length; i++) {
let tool = tools[i];
let toolTrimmed = tool.trim();
if (!common.isNullOrWhiteSpace(tool)
&& tool != Tools.ContainerMapping // This tool is not handled by this executor
&& includedTools.indexOf(toolTrimmed) == -1) {
if (includedTools.length == 0) {
args.push('--tool');
}
args.push(toolTrimmed);
includedTools.push(toolTrimmed);
}
args.push(toolTrimmed);
includedTools.push(toolTrimmed);
}
}
}

args.push('--github');
args.push('--github');
}

await client.run(args, 'microsoft/security-devops-action');
}
Expand Down

0 comments on commit 8467ba9

Please sign in to comment.