9
9
# See https://aboutcode.org for more information about nexB OSS projects.
10
10
#
11
11
12
- from typing import Dict
12
+ from pathlib import Path
13
+ from typing import Dict , Optional
13
14
14
15
import click
15
16
@@ -187,6 +188,9 @@ def print_version(ctx, param, value):
187
188
help = "Use generic or truncated paths in the JSON output header and files sections. "
188
189
"Used only for testing to avoid absolute paths and paths changing at each run." ,
189
190
)
191
+ @click .option (
192
+ "--log-file" , type = click .Path (path_type = Path ), help = "Write logs to a file."
193
+ )
190
194
def resolve_dependencies (
191
195
ctx ,
192
196
requirement_files ,
@@ -200,6 +204,7 @@ def resolve_dependencies(
200
204
netrc_file ,
201
205
max_rounds ,
202
206
verbose ,
207
+ log_file : Optional [Path ],
203
208
use_cached_index = False ,
204
209
use_pypi_json_api = False ,
205
210
analyze_setup_py_insecurely = False ,
@@ -240,15 +245,15 @@ def resolve_dependencies(
240
245
241
246
# Setup verbose level
242
247
if verbose >= 4 :
243
- logging .setup_logger ("DEEP" )
248
+ logging .setup_logger ("DEEP" , log_file = log_file )
244
249
elif verbose == 3 :
245
- logging .setup_logger ("TRACE" )
250
+ logging .setup_logger ("TRACE" , log_file = log_file )
246
251
elif verbose == 2 :
247
- logging .setup_logger ("DEBUG" )
252
+ logging .setup_logger ("DEBUG" , log_file = log_file )
248
253
elif verbose == 1 :
249
- logging .setup_logger ("INFO" )
254
+ logging .setup_logger ("INFO" , log_file = log_file )
250
255
else :
251
- logging .setup_logger ()
256
+ logging .setup_logger (log_file = log_file )
252
257
253
258
options = get_pretty_options (ctx , generic_paths = generic_paths )
254
259
0 commit comments