버전 정보에 따라 빌드 넘버 가져오도록 수정

This commit is contained in:
leedongmyung 2025-08-12 13:40:28 +09:00
parent 622a0465d1
commit 97a2025209
3 changed files with 12 additions and 5 deletions

View file

@ -40,11 +40,16 @@ class BuildiOS extends Command {
if (appID == null) {
throw Exception('Can not find App Identifier.');
}
var teamID = data.teamID;
if(teamID == null) {
throw Exception('Can not find Apple Store Team ID');
}
if (data.apiKeyPath == null) {
throw Exception(
'If autoVersionNumber = true then must set apiKeyPath.');
}
var fastFile = await initializeFastlane(data.workspace!, data.apiKeyPath!, appID);
var apiKeyPath = data.apiKeyPath!;
var fastFile = await initializeFastlane(data.workspace!, apiKeyPath, appID);
var fastlaneContent = fastFile.readAsStringSync();
//Find PREPARE_FOR_SUBMISSION state Version
@ -82,14 +87,13 @@ class BuildiOS extends Command {
fastFile.writeAsStringSync(fastlaneContent, flush: true);
shell = StringBuffer();
shell.write('cd ${data.workspace}/fastlane');
shell.write(' && fastlane latest_build_number');
shell.write(' && fastlane run latest_testflight_build_number app_identifier:$appID version:$version platform:ios api_key_path:"$apiKeyPath" team_id:"$teamID"');
process = await ProcessExecutor.run(shell);
arr = process.stdout.toString().split('\n');
for (var item in arr) {
if (item.contains(result)) {
var json =
jsonDecode(item.substring(item.indexOf(result) + result.length));
targetBuildNumber = json['latest_build_number'];
targetBuildNumber = item.substring(item.indexOf(result) + result.length).trim();
print('Build Number: $targetBuildNumber');
break;
}
}

View file

@ -226,6 +226,7 @@ class DataBuildiOS extends DataParam {
late String? version; // autoBuildNumber = false
late String? buildNumber; // autoBuildNumber = false
late bool? autoBuildNumber = false;
late String? teamID; //Apple store team ID
late String? apiKeyPath; //autoVersionNumber
//set

View file

@ -402,6 +402,7 @@ DataBuildiOS _$DataBuildiOSFromJson(Map<String, dynamic> json) => DataBuildiOS()
..version = json['version'] as String?
..buildNumber = json['buildNumber'] as String?
..autoBuildNumber = json['autoBuildNumber'] as bool?
..teamID = json['teamID'] as String?
..apiKeyPath = json['apiKeyPath'] as String?
..setVersion = json['setVersion'] as String?
..setBuildNumber = json['setBuildNumber'] as String?
@ -427,6 +428,7 @@ Map<String, dynamic> _$DataBuildiOSToJson(DataBuildiOS instance) =>
'version': instance.version,
'buildNumber': instance.buildNumber,
'autoBuildNumber': instance.autoBuildNumber,
'teamID': instance.teamID,
'apiKeyPath': instance.apiKeyPath,
'setVersion': instance.setVersion,
'setBuildNumber': instance.setBuildNumber,