@@ -155,6 +155,7 @@ class ParsedFlags:
155155
156156 def parse (self ) -> ParsedFlags :
157157 self ._load_defaults_file ()
158+ self ._load_flag_values ()
158159 return self ._to_parsed_flags ()
159160
160161 def _to_parsed_flags (self ) -> ParsedFlags :
@@ -194,6 +195,33 @@ def _load_defaults_file(self) -> None:
194195 raise self .DefaultsFileParseError (
195196 f"line { line_number } : expected line after this line: { line } " )
196197
198+ def _load_flag_values (self ) -> None :
199+ if FLAG_GIT_REPO_DIR .value :
200+ self ._log_using_flag_from_command_line (FLAG_GIT_REPO_DIR )
201+ self .git_repo_dir = pathlib .Path (FLAG_GIT_REPO_DIR .value )
202+ if FLAG_DEST_DIR_2017 .value :
203+ self ._log_using_flag_from_command_line (FLAG_DEST_DIR_2017 )
204+ self .dest_dir_2017 = pathlib .Path (FLAG_DEST_DIR_2017 .value )
205+ if FLAG_DEST_DIR_2020 .value :
206+ self ._log_using_flag_from_command_line (FLAG_DEST_DIR_2020 )
207+ self .dest_dir_2020 = pathlib .Path (FLAG_DEST_DIR_2020 .value )
208+ if FLAG_GOOGLE_SERVICES_JSON_FILE .value :
209+ self ._log_using_flag_from_command_line (FLAG_GOOGLE_SERVICES_JSON_FILE )
210+ self .google_services_json_file = pathlib .Path (FLAG_GOOGLE_SERVICES_JSON_FILE .value )
211+ if FLAG_GOOGLE_SERVICE_INFO_PLIST_FILE .value :
212+ self ._log_using_flag_from_command_line (FLAG_GOOGLE_SERVICE_INFO_PLIST_FILE )
213+ self .google_service_info_plist_file = pathlib .Path (FLAG_GOOGLE_SERVICE_INFO_PLIST_FILE .value )
214+ if FLAG_ANDROID_PACKAGE_NAME .value :
215+ self ._log_using_flag_from_command_line (FLAG_ANDROID_PACKAGE_NAME )
216+ self .android_package_name = FLAG_ANDROID_PACKAGE_NAME .value
217+ if FLAG_APPLE_DEVELOPER_TEAM_ID .value :
218+ self ._log_using_flag_from_command_line (FLAG_APPLE_DEVELOPER_TEAM_ID )
219+ self .apple_developer_team_id = FLAG_APPLE_DEVELOPER_TEAM_ID .value
220+
221+ @classmethod
222+ def _log_using_flag_from_command_line (cls , flag : flags .Flag ) -> None :
223+ logging .info ("Using flag from command line: --%s=%s" , flag .name , flag .value )
224+
197225 @classmethod
198226 def _flag_from_flag_name (cls , flag_name : str ) -> Optional [flags .Flag ]:
199227 known_flags = (
@@ -363,7 +391,11 @@ def _load_android_package_name(self, file_path: pathlib.Path) -> str:
363391 if self .android_package_name is None :
364392 package_name = package_names [0 ]
365393 elif self .android_package_name not in package_names :
366- raise self .Error (f"Android package name { self .android_package_name } not found in { file_path } " )
394+ raise self .Error (
395+ f"Android package name { self .android_package_name } not found in { file_path } ; "
396+ f"consider instead using one of the following { len (package_names )} package "
397+ f"names that were found: "
398+ + ", " .join (sorted (package_names )))
367399 else :
368400 package_name = self .android_package_name
369401
0 commit comments