Module continuous_delivery_scripts.detect_secrets
Check tracked files against the project's recorded secret registry.
Functions
def detect_secrets(baseline_file: pathlib.Path | None = None) ‑> None-
Expand source code
def detect_secrets(baseline_file: Optional[Path] = None) -> None: """Check tracked files so new secrets are not introduced.""" git = ProjectGitWrapper() project_root = Path(str(git.root)) resolved_baseline = _get_secrets_baseline_file(baseline_file) tracked_files = _filter_tracked_files(git.list_tracked_files(), project_root, resolved_baseline) if not tracked_files: logger.info("No tracked files found for detect-secrets.") return subprocess.check_call( _generate_detect_secrets_hook_command_list(resolved_baseline, _determine_exclude_files(), tracked_files), cwd=str(project_root), )Check tracked files so new secrets are not introduced.
def main() ‑> int-
Expand source code
def main() -> int: """Script CLI.""" parser = argparse.ArgumentParser( description=( "Check tracked files against the recorded secret registry so new secrets are not committed. " "This uses Yelp detect-secrets (https://github.com/Yelp/detect-secrets)." ) ) parser.add_argument( "-r", "--registry-file", default=Path(_get_secrets_baseline_filename()), help="Secret registry file to use.", type=Path, ) parser.add_argument( "-v", "--verbose", action="count", default=0, help="Verbosity, by default errors are reported.", ) args = parser.parse_args() set_log_level(args.verbose) try: detect_secrets(args.registry_file) return 0 except Exception as e: log_exception(logger, e) return 1Script CLI.