Skip to content

Commit 8f8d079

Browse files
authored
Merge pull request #16 from SocketDev/eric/true-up-action-inputs
added the rest of the documented inputs to the action.yaml
2 parents 07a41f2 + 3742e05 commit 8f8d079

File tree

2 files changed

+81
-23
lines changed

2 files changed

+81
-23
lines changed

action.yml

Lines changed: 70 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,53 @@ author: "Douglas Coburn"
44
runs:
55
using: "docker"
66
image: "Dockerfile"
7-
7+
88
inputs:
99
github_token:
1010
description: "GitHub token to post comments on PRs"
1111
required: true
1212

13+
# Enable Settings
14+
python_sast_enabled:
15+
description: "Enable Python SAST analysis"
16+
required: false
17+
default: "false"
18+
19+
golang_sast_enabled:
20+
description: "Enable Golang SAST analysis"
21+
required: false
22+
default: "false"
23+
24+
javascript_sast_enabled:
25+
description: "Enable JavaScript SAST analysis"
26+
required: false
27+
default: "false"
28+
29+
dockerfile_enabled:
30+
description: "Enable Dockerfile analysis"
31+
required: false
32+
default: "false"
33+
34+
image_enabled:
35+
description: "Enable image scanning"
36+
required: false
37+
default: "false"
38+
39+
secret_scanning_enabled:
40+
description: "Enable secret scanning"
41+
required: false
42+
default: "false"
43+
44+
# Docker Configuration
45+
docker_images:
46+
description: "Comma-separated list of Docker images to scan"
47+
required: false
48+
default: ""
49+
dockerfiles:
50+
description: "Comma-separated list of Dockerfiles to scan"
51+
required: false
52+
default: ""
53+
1354
# Trufflehog Configuration
1455
trufflehog_exclude_dir:
1556
description: "Comma-separated list of directories to exclude in Trufflehog"
@@ -19,6 +60,10 @@ inputs:
1960
description: "Rules to enable in Trufflehog"
2061
required: false
2162
default: ""
63+
trufflehog_show_unverified:
64+
description: "Show unverified secrets in Trufflehog results"
65+
required: false
66+
default: "false"
2267

2368
# Bandit Configuration
2469
bandit_exclude_dir:
@@ -60,7 +105,30 @@ inputs:
60105
required: false
61106
default: ""
62107

108+
# Log Forwarding Configuration
109+
sumo_logic_enabled:
110+
description: "Enable Sumo Logic log forwarding"
111+
required: false
112+
default: "false"
113+
sumo_logic_http_source_url:
114+
description: "HTTP source URL for Sumo Logic"
115+
required: false
116+
default: ""
117+
118+
# Microsoft Sentinel Configuration
119+
ms_sentinel_enabled:
120+
description: "Enable Microsoft Sentinel log forwarding"
121+
required: false
122+
default: "false"
123+
ms_sentinel_workspace_id:
124+
description: "Workspace ID for Microsoft Sentinel"
125+
required: false
126+
default: "REPLACE_ME"
127+
ms_sentinel_shared_key:
128+
description: "Shared key for Microsoft Sentinel"
129+
required: false
130+
default: "REPLACE_ME"
131+
63132
branding:
64133
icon: "shield"
65134
color: "blue"
66-

src/core/__init__.py

Lines changed: 11 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -7,19 +7,13 @@
77
log = logging.getLogger("socket-external-tool")
88
log.addHandler(logging.NullHandler())
99

10-
__all__ = [
11-
"marker",
12-
"__version__",
13-
"__author__",
14-
"log",
15-
"base_github"
16-
]
17-
18-
__version__ = "1.0.15"
10+
__all__ = ["marker", "__version__", "__author__", "log", "base_github"]
11+
12+
__version__ = "1.0.16"
1913
__author__ = "socket.dev"
2014
base_github = "https://github.com"
2115

22-
marker = f"<!--Socket External Tool Runner: REPLACE_ME -->"
16+
marker = "<!--Socket External Tool Runner: REPLACE_ME -->"
2317

2418

2519
class BaseTool:
@@ -29,12 +23,7 @@ class BaseTool:
2923
@classmethod
3024
def process_output(cls, data: dict, cwd: str, plugin_name: str = "") -> dict:
3125
results = data.get(cls.result_key, [])
32-
metrics = {
33-
"tests": {},
34-
"severities": {},
35-
"output": [],
36-
"events": []
37-
}
26+
metrics = {"tests": {}, "severities": {}, "output": [], "events": []}
3827

3928
for test in results:
4029
test_result = cls.result_class(**test, cwd=cwd)
@@ -67,8 +56,9 @@ def get_test_name(test_result):
6756
return "test_result"
6857

6958
@classmethod
70-
def create_output(cls, data: dict, marker: str, repo: str, commit: str, cwd: str, show_unverified=None) -> (
71-
Union[str, None], dict):
59+
def create_output(
60+
cls, data: dict, marker: str, repo: str, commit: str, cwd: str, show_unverified=None
61+
) -> (Union[str, None], dict):
7262
"""Formats output as properly structured Markdown."""
7363

7464
# Determine if the connector supports the show_verified argument
@@ -93,7 +83,8 @@ def create_output(cls, data: dict, marker: str, repo: str, commit: str, cwd: str
9383
for output in result["output"]:
9484
file_link = (
9585
f"[{output.file}]({output.url.replace('REPO_REPLACE', repo).replace('COMMIT_REPLACE', commit)})"
96-
if hasattr(output, "url") else f"`{output.file}`"
86+
if hasattr(output, "url")
87+
else f"`{output.file}`"
9788
)
9889
has_first_line = output.__dict__.get("has_first_line", False)
9990
if has_first_line and not set_first_line:
@@ -105,7 +96,7 @@ def create_output(cls, data: dict, marker: str, repo: str, commit: str, cwd: str
10596
md.new_line(f"**Severity**: `{output.__dict__.get('severity', 'N/A')}`")
10697
md.new_line(f"**Filename:** {file_link}")
10798
else:
108-
source = output.__dict__.get('issue_text', '').replace('REPLACE_FILE_LINK', file_link)
99+
source = output.__dict__.get("issue_text", "").replace("REPLACE_FILE_LINK", file_link)
109100
issue_text = f"{source.replace('REPO_REPLACE', repo).replace('COMMIT_REPLACE', commit)}"
110101
md.new_line(issue_text)
111102

@@ -120,4 +111,3 @@ def create_output(cls, data: dict, marker: str, repo: str, commit: str, cwd: str
120111
output_str = md.file_data_text.lstrip()
121112

122113
return result, output_str
123-

0 commit comments

Comments
 (0)