diff --git a/.gitignore b/.gitignore index 0f0de01b..a6ef976e 100644 --- a/.gitignore +++ b/.gitignore @@ -65,3 +65,6 @@ fastlane/test_output *.xcconfig AIProject/AIProject/App/Resource/GoogleService-Info.plist AIProject/iCo/App/Resource/GoogleService-Info.plist +AIProject/fastlane/.env +AIProject/fastlane/.env +AIProject/fastlane/report.xml diff --git a/AIProject/fastlane/Appfile b/AIProject/fastlane/Appfile index bd474f85..943f7e44 100644 --- a/AIProject/fastlane/Appfile +++ b/AIProject/fastlane/Appfile @@ -1,8 +1,8 @@ -app_identifier("com.est.ai.aico") # The bundle identifier of your app -apple_id("ibcylon@naver.com") # Your Apple Developer Portal username +app_identifier("com.est.ico") # The bundle identifier of your app +apple_id("guswlsrlacl@naver.com") # Your Apple Developer Portal username -itc_team_id("123752326") # App Store Connect Team ID -team_id("SJDR485DTV") # Developer Portal Team ID +itc_team_id("123481744") # App Store Connect Team ID +team_id("7HK4Z95VZD") # Developer Portal Team ID # For more information about the Appfile, see: # https://docs.fastlane.tools/advanced/#appfile diff --git a/AIProject/fastlane/Fastfile b/AIProject/fastlane/Fastfile index 0f39ea63..4467fd94 100644 --- a/AIProject/fastlane/Fastfile +++ b/AIProject/fastlane/Fastfile @@ -1,23 +1,55 @@ -# This file contains the fastlane.tools configuration -# You can find the documentation at https://docs.fastlane.tools -# -# For a list of all available actions, check out -# -# https://docs.fastlane.tools/actions -# -# For a list of all available plugins, check out -# -# https://docs.fastlane.tools/plugins/available-plugins -# - -# Uncomment the line if you want fastlane to automatically update itself -# update_fastlane - default_platform(:ios) platform :ios do - desc "Description of what the lane does" - lane :custom_lane do - # add actions here: https://docs.fastlane.tools/actions + desc "빌드하고 TestFlight에 업로드" + lane :testflight do + + api_key = + app_store_connect_api_key( + key_id: ENV["APP_STORE_CONNECT_KEY_ID"], + is_key_content_base64: true, + issuer_id: ENV["APP_STORE_CONNECT_ISSUER_ID"], + key_content: ENV["APP_STORE_CONNECT_KEY_CONTENT"], + in_house: false + ) + + create_keychain( + name: ENV["KEYCHAIN_NAME"], + password: ENV["KEYCHAIN_PASSWORD"], + timeout: 1800, + default_keychain: true, + unlock: true, + lock_when_sleeps: false + ) + + increment_build_number + + match( + type: "appstore", + keychain_name: ENV["KEYCHAIN_NAME"], + keychain_password: ENV["KEYCHAIN_PASSWORD"], + readonly: true + ) + + build_app( + scheme: "iCo", + clean: true, + export_method: "app-store", + export_options: { + signingStyle: "manual", + provisioningProfiles: { + "com.est.ico" => "match AppStore com.est.ico", + "com.est.ico.widget" => "match AppStore com.est.ico.widget" + } + } + ) + + upload_to_testflight( + api_key: api_key, + skip_waiting_for_build_processing: false, + submit_beta_review: false, + distribute_external: false, + changelog: "새로운 기능 및 버그 수정" + ) end -end +end \ No newline at end of file diff --git a/AIProject/fastlane/Matchfile b/AIProject/fastlane/Matchfile index e9cb4435..ffa042dd 100644 --- a/AIProject/fastlane/Matchfile +++ b/AIProject/fastlane/Matchfile @@ -7,7 +7,4 @@ type("development") # The default type, can be: appstore, adhoc, enterprise or d app_identifier(["com.est.ico", "com.est.ico.widget"]) username("guswlsrlacl@naver.com") # Your Apple Developer Portal username -# For all available options run `fastlane match --help` -# Remove the # in the beginning of the line to enable the other options - -# The docs are available on https://docs.fastlane.tools/actions/match +team_id("7HK4Z95VZD") # Developer Portal Team ID diff --git a/AIProject/fastlane/README.md b/AIProject/fastlane/README.md new file mode 100644 index 00000000..3c5ea202 --- /dev/null +++ b/AIProject/fastlane/README.md @@ -0,0 +1,32 @@ +fastlane documentation +---- + +# Installation + +Make sure you have the latest version of the Xcode command line tools installed: + +```sh +xcode-select --install +``` + +For _fastlane_ installation instructions, see [Installing _fastlane_](https://docs.fastlane.tools/#installing-fastlane) + +# Available Actions + +## iOS + +### ios testflight + +```sh +[bundle exec] fastlane ios testflight +``` + +빌드하고 TestFlight에 업로드 + +---- + +This README.md is auto-generated and will be re-generated every time [_fastlane_](https://fastlane.tools) is run. + +More information about _fastlane_ can be found on [fastlane.tools](https://fastlane.tools). + +The documentation of _fastlane_ can be found on [docs.fastlane.tools](https://docs.fastlane.tools). diff --git a/AIProject/iCo.xcodeproj/project.pbxproj b/AIProject/iCo.xcodeproj/project.pbxproj index 0a0d0bff..b29b2655 100644 --- a/AIProject/iCo.xcodeproj/project.pbxproj +++ b/AIProject/iCo.xcodeproj/project.pbxproj @@ -542,9 +542,9 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CODE_SIGN_ENTITLEMENTS = iCo/iCo.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 2; + CURRENT_PROJECT_VERSION = 7; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = 7HK4Z95VZD; @@ -563,12 +563,12 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 1.1; + MARKETING_VERSION = 1.1.1; OTHER_LDFLAGS = "-ObjC"; PRODUCT_BUNDLE_IDENTIFIER = com.est.ico; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; - "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = "match Development com.est.ico"; + "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = "match AppStore com.est.ico"; SWIFT_EMIT_LOC_STRINGS = YES; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; @@ -584,9 +584,9 @@ ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; CODE_SIGN_ENTITLEMENTS = iCo/iCo.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 2; + CURRENT_PROJECT_VERSION = 7; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = 7HK4Z95VZD; ENABLE_PREVIEWS = YES; @@ -604,12 +604,12 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 1.1; + MARKETING_VERSION = 1.1.1; OTHER_LDFLAGS = "-ObjC"; PRODUCT_BUNDLE_IDENTIFIER = com.est.ico; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; - "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = "match Development com.est.ico"; + "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = "match AppStore com.est.ico"; SWIFT_EMIT_LOC_STRINGS = YES; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; @@ -623,7 +623,7 @@ buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; + CURRENT_PROJECT_VERSION = 7; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = SJDR485DTV; GENERATE_INFOPLIST_FILE = YES; @@ -650,7 +650,7 @@ buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 1; + CURRENT_PROJECT_VERSION = 7; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = SJDR485DTV; GENERATE_INFOPLIST_FILE = YES; @@ -677,9 +677,9 @@ ASSETCATALOG_COMPILER_WIDGET_BACKGROUND_COLOR_NAME = WidgetBackground; CODE_SIGN_ENTITLEMENTS = iCOWidgetExtension.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 2; + CURRENT_PROJECT_VERSION = 7; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = 7HK4Z95VZD; GENERATE_INFOPLIST_FILE = YES; @@ -692,11 +692,11 @@ "@executable_path/Frameworks", "@executable_path/../../Frameworks", ); - MARKETING_VERSION = 1.1; + MARKETING_VERSION = 1.3.2; PRODUCT_BUNDLE_IDENTIFIER = com.est.ico.widget; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; - "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = "match Development com.est.ico.widget"; + "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = "match AppStore com.est.ico.widget"; SKIP_INSTALL = YES; SWIFT_EMIT_LOC_STRINGS = YES; SWIFT_VERSION = 5.0; @@ -711,9 +711,9 @@ ASSETCATALOG_COMPILER_WIDGET_BACKGROUND_COLOR_NAME = WidgetBackground; CODE_SIGN_ENTITLEMENTS = iCOWidgetExtension.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = 2; + CURRENT_PROJECT_VERSION = 7; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = 7HK4Z95VZD; GENERATE_INFOPLIST_FILE = YES; @@ -726,11 +726,11 @@ "@executable_path/Frameworks", "@executable_path/../../Frameworks", ); - MARKETING_VERSION = 1.1; + MARKETING_VERSION = 1.3.2; PRODUCT_BUNDLE_IDENTIFIER = com.est.ico.widget; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; - "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = "match Development com.est.ico.widget"; + "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = "match AppStore com.est.ico.widget"; SKIP_INSTALL = YES; SWIFT_EMIT_LOC_STRINGS = YES; SWIFT_VERSION = 5.0;