Skip to content

Commit 09fd615

Browse files
committed
refactor: replace some remaining click.echo() calls with ui.display_*()
1 parent 56f53ee commit 09fd615

File tree

7 files changed

+29
-58
lines changed

7 files changed

+29
-58
lines changed

ggshield/cmd/iac/scan/ci.py

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
from ggshield.cmd.utils.common_decorators import display_beta_warning, exception_wrapper
1414
from ggshield.cmd.utils.common_options import directory_argument
1515
from ggshield.cmd.utils.context_obj import ContextObj
16+
from ggshield.core import ui
1617
from ggshield.core.git_hooks.ci.get_scan_ci_parameters import (
1718
NotAMergeRequestError,
1819
get_scan_ci_parameters,
@@ -58,10 +59,7 @@ def scan_ci_cmd(
5859
ci_mode, wd=directory, verbose=config.user_config.verbose
5960
)
6061
if params is None:
61-
click.echo(
62-
"No commit found in merge request, skipping scan.",
63-
err=True,
64-
)
62+
ui.display_info("No commit found in merge request, skipping scan.")
6563
return 0
6664

6765
current_commit, reference_commit = params
@@ -78,13 +76,10 @@ def scan_ci_cmd(
7876
augment_unignored_issues(config.user_config, result)
7977
return display_iac_scan_diff_result(ctx, directory, result)
8078
except NotAMergeRequestError:
81-
click.echo(
82-
(
83-
"WARNING: scan ci expects to be run in a merge-request pipeline.\n"
84-
"No target branch could be identified, will perform a scan all instead.\n"
85-
"This is a fallback behaviour, that will be removed in a future version."
86-
),
87-
err=True,
79+
ui.display_warning(
80+
"scan ci expects to be run in a merge-request pipeline.\n"
81+
"No target branch could be identified, will perform a scan all instead.\n"
82+
"This is a fallback behaviour, that will be removed in a future version."
8883
)
8984
result = iac_scan_all(
9085
ctx, directory, scan_mode=ScanMode.CI_ALL, ci_mode=ci_mode

ggshield/cmd/sca/scan/ci.py

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
from ggshield.cmd.utils.common_decorators import exception_wrapper
1616
from ggshield.cmd.utils.common_options import directory_argument
1717
from ggshield.cmd.utils.context_obj import ContextObj
18+
from ggshield.core import ui
1819
from ggshield.core.git_hooks.ci.get_scan_ci_parameters import (
1920
NotAMergeRequestError,
2021
get_scan_ci_parameters,
@@ -75,10 +76,7 @@ def scan_ci_cmd(
7576
ci_mode, wd=directory, verbose=config.user_config.verbose
7677
)
7778
if params is None:
78-
click.echo(
79-
"No commit found in merge request, skipping scan.",
80-
err=True,
81-
)
79+
ui.display_info("No commit found in merge request, skipping scan.")
8280
return 0
8381

8482
current_commit, reference_commit = params
@@ -94,13 +92,10 @@ def scan_ci_cmd(
9492
scan = SCAScanDiffVulnerabilityCollection(id=str(directory), result=result)
9593
return output_handler.process_scan_diff_result(scan)
9694
except NotAMergeRequestError:
97-
click.echo(
98-
(
99-
"WARNING: scan ci expects to be run in a merge-request pipeline.\n"
100-
"No target branch could be identified, will perform a scan all instead.\n"
101-
"This is a fallback behaviour, that will be removed in a future version."
102-
),
103-
err=True,
95+
ui.display_warning(
96+
"scan ci expects to be run in a merge-request pipeline.\n"
97+
"No target branch could be identified, will perform a scan all instead.\n"
98+
"This is a fallback behaviour, that will be removed in a future version."
10499
)
105100
result = sca_scan_all(ctx, directory=directory, scan_mode=ScanMode.CI_ALL)
106101
scan = SCAScanAllVulnerabilityCollection(id=str(directory), result=result)

ggshield/cmd/secret/scan/precommit.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -104,8 +104,5 @@ def precommit_cmd(
104104
SecretScanCollection(id="cached", type="pre-commit", results=results)
105105
)
106106
if return_code:
107-
click.echo(
108-
ctx_obj.client.remediation_messages.pre_commit,
109-
err=True,
110-
)
107+
ui.display_info(ctx_obj.client.remediation_messages.pre_commit)
111108
return return_code

ggshield/cmd/secret/scan/prepush.py

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -44,13 +44,12 @@ def prepush_cmd(ctx: click.Context, prepush_args: List[str], **kwargs: Any) -> i
4444
logger.debug("refs=(%s, %s)", local_commit, remote_commit)
4545

4646
if local_commit == EMPTY_SHA:
47-
click.echo("Deletion event or nothing to scan.", err=True)
47+
ui.display_info("Deletion event or nothing to scan.")
4848
return 0
4949

5050
if remote_commit == EMPTY_SHA:
51-
click.echo(
52-
f"New tree event. Scanning last {config.user_config.max_commits_for_hook} commits.",
53-
err=True,
51+
ui.display_info(
52+
f"New tree event. Scanning last {config.user_config.max_commits_for_hook} commits."
5453
)
5554
before = EMPTY_TREE
5655
after = local_commit
@@ -65,19 +64,17 @@ def prepush_cmd(ctx: click.Context, prepush_args: List[str], **kwargs: Any) -> i
6564
)
6665

6766
if not commit_list:
68-
click.echo(
67+
ui.display_warning(
6968
"Unable to get commit range.\n"
7069
f" before: {before}\n"
7170
f" after: {after}\n"
7271
"Skipping pre-push hook\n",
73-
err=True,
7472
)
7573
return 0
7674

7775
if len(commit_list) > config.user_config.max_commits_for_hook:
78-
click.echo(
79-
f"Too many commits. Scanning last {config.user_config.max_commits_for_hook} commits\n",
80-
err=True,
76+
ui.display_info(
77+
f"Too many commits. Scanning last {config.user_config.max_commits_for_hook} commits\n"
8178
)
8279
commit_list = commit_list[-config.user_config.max_commits_for_hook :]
8380

@@ -103,8 +100,5 @@ def prepush_cmd(ctx: click.Context, prepush_args: List[str], **kwargs: Any) -> i
103100
ignored_detectors=config.user_config.secret.ignored_detectors,
104101
)
105102
if return_code:
106-
click.echo(
107-
ctx_obj.client.remediation_messages.pre_push,
108-
err=True,
109-
)
103+
ui.display_info(ctx_obj.client.remediation_messages.pre_push)
110104
return return_code

ggshield/cmd/secret/scan/prereceive.py

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -60,12 +60,9 @@ def _execute_prereceive(
6060
ignored_detectors=config.user_config.secret.ignored_detectors,
6161
)
6262
if return_code:
63-
click.echo(
64-
(
65-
config.user_config.secret.prereceive_remediation_message
66-
or client.remediation_messages.pre_receive
67-
),
68-
err=True,
63+
ui.display_info(
64+
config.user_config.secret.prereceive_remediation_message
65+
or client.remediation_messages.pre_receive
6966
)
7067
sys.exit(return_code)
7168
except Exception as error:
@@ -115,9 +112,8 @@ def prereceive_cmd(
115112
assert commit_list, "Commit list should not be empty at this point"
116113

117114
if len(commit_list) > config.user_config.max_commits_for_hook:
118-
click.echo(
115+
ui.display_info(
119116
f"Too many commits. Scanning last {config.user_config.max_commits_for_hook} commits\n",
120-
err=True,
121117
)
122118
commit_list = commit_list[-config.user_config.max_commits_for_hook :]
123119

ggshield/core/git_hooks/prereceive.py

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@
33
import sys
44
from typing import Optional, Tuple
55

6-
import click
7-
86
from ggshield.core import ui
97
from ggshield.core.errors import UnexpectedError
108
from ggshield.utils.git_shell import EMPTY_SHA, git
@@ -36,9 +34,8 @@ def get_breakglass_option() -> bool:
3634
if option_count is not None:
3735
for option in range(option_count):
3836
if os.getenv(f"GIT_PUSH_OPTION_{option}", "") == "breakglass":
39-
click.echo(
40-
"SKIP: breakglass detected. Skipping GitGuardian pre-receive hook.",
41-
err=True,
37+
ui.display_info(
38+
"SKIP: breakglass detected. Skipping GitGuardian pre-receive hook."
4239
)
4340
return True
4441

@@ -78,7 +75,7 @@ def parse_stdin() -> Optional[Tuple[str, str]]:
7875

7976
if new_commit == EMPTY_SHA:
8077
# Deletion event, nothing to do
81-
click.echo("Deletion event or nothing to scan.", err=True)
78+
ui.display_info("Deletion event or nothing to scan.")
8279
return None
8380

8481
# ignore _old_commit because in case of a force-push, it is going to be overwritten
@@ -93,10 +90,7 @@ def parse_stdin() -> Optional[Tuple[str, str]]:
9390
assert old_commit != EMPTY_SHA
9491
assert new_commit != EMPTY_SHA
9592
if old_commit == new_commit:
96-
click.echo(
97-
"Pushed branch does not contain any new commit.",
98-
err=True,
99-
)
93+
ui.display_info("Pushed branch does not contain any new commit.")
10094
return None
10195

10296
return (old_commit, new_commit)

tests/unit/cmd/sca/test_ci.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,4 +80,4 @@ def test_sca_scan_ci_non_mr_env(
8080
sca_scan_all_mock.call_args.kwargs.items()
8181
)
8282
assert result.exit_code == ExitCode.SUCCESS
83-
assert "WARNING: " in result.stderr
83+
assert "Warning: " in result.stderr

0 commit comments

Comments
 (0)