@@ -2106,6 +2106,143 @@ workflows:
21062106 --org mozilla --project klar-ios "$BITRISE_DSYM_DIR_PATH"
21072107
21082108# RelPro workflows
2109+ release_promotion_promote_focus :
2110+ before_run :
2111+ - focus-clone-and-build-dependencies
2112+ - focus-set-project-version
2113+ - focus-set-default-browser-entitlement
2114+ - focus-configure-nimbus
2115+ - focus-configure-sentry
2116+ steps :
2117+ 2118+ title : Override default bitrise scheme
2119+ inputs :
2120+ - content : |-
2121+ #!/usr/bin/env bash
2122+ set -ex
2123+
2124+ if [[ "$BITRISE_APP_TITLE" == "staging-firefox-ios" ]]; then
2125+ BUILD_TYPE="Debug"
2126+ else
2127+ BUILD_TYPE="Release"
2128+ fi
2129+
2130+ if [[ ! -z "${API_BITRISE_SCHEME}" ]]; then
2131+ envman add --key BITRISE_SCHEME --value "${API_BITRISE_SCHEME}"
2132+ envman add --key BITRISE_CONFIG --value "${API_BITRISE_SCHEME}${BUILD_TYPE}"
2133+ else
2134+ envman add --key BITRISE_SCHEME --value "Focus"
2135+ envman add --key BITRISE_CONFIG --value "Focus${BUILD_TYPE}"
2136+ fi
2137+ 2138+ # If the current bitrise application is `staging-firefox-ios`, then
2139+ # this is a test release made from the staging repository.
2140+ # Ignore the value passed by release promotion for `BITRISE_SCHEME` and
2141+ # force it to `FirefoxStaging`, which makes it use non production
2142+ # certs/profiles. Also override the export method since the scheme is
2143+ # using a developer ID, not a distribution one
2144+ title : Set staging environment variables
2145+ inputs :
2146+ - content : |-
2147+ #!/usr/bin/env bash
2148+ set -ex
2149+ envman add --key EXPORT_METHOD --value development
2150+ run_if : |-
2151+ {{enveq "BITRISE_APP_TITLE" "staging-firefox-ios"}}
2152+ - certificate-and-profile-installer@1 : {}
2153+ - xcode-archive@5 :
2154+ inputs :
2155+ - project_path : focus-ios/Blockzilla.xcodeproj
2156+ - compile_bitcode : ' no'
2157+ - upload_bitcode : ' no'
2158+ - team_id : 43AQ936H96
2159+ - export_method : " $EXPORT_METHOD"
2160+ - output_tool : xcodebuild
2161+ - distribution_method : " $EXPORT_METHOD"
2162+ - export_development_team : 43AQ936H96
2163+ - configuration : ${BITRISE_CONFIG}
2164+ - platform : " iOS"
2165+ - scheme : ${BITRISE_SCHEME}
2166+ title : Build Focus
2167+ 2168+ envs :
2169+ - opts :
2170+ is_expand : false
2171+ EXPORT_METHOD : app-store
2172+ description : This step is used during release promotion to build a focus release
2173+
2174+ release_promotion_push_focus :
2175+ before_run :
2176+ - SPM_Common_Steps
2177+ envs :
2178+ - IPA_PATH : /tmp/Client.ipa
2179+ - DSYM_PATH : /tmp/symbols.zip
2180+ steps :
2181+ 2182+ title : Override default bitrise scheme
2183+ inputs :
2184+ - content : |-
2185+ #!/usr/bin/env bash
2186+ set -ex
2187+
2188+ if [[ ! -z "${API_BITRISE_SCHEME}" ]]; then
2189+ envman add --key BITRISE_SCHEME --value "${API_BITRISE_SCHEME}"
2190+ else
2191+ envman add --key BITRISE_SCHEME --value "Focus"
2192+ fi
2193+
2194+ if [[ "${API_BITRISE_SCHEME}" == "Focus" ]]; then
2195+ envman add --key SENTRY_PROJECT --value "focus-ios"
2196+ else
2197+ envman add --key SENTRY_PROJECT --value "klar-ios"
2198+ fi
2199+ - file-downloader@1 :
2200+ title : Download Artifact
2201+ inputs :
2202+ - destination : $IPA_PATH
2203+ - source : https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/$BUILD_TASK_ID/artifacts/public%2Frelease_promotion_promote_focus%2FFirefox%20${BITRISE_SCHEME}.ipa
2204+ - file-downloader@1 :
2205+ title : Download symbols
2206+ inputs :
2207+ - destination : $DSYM_PATH
2208+ - source : https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/$BUILD_TASK_ID/artifacts/public%2Frelease_promotion_promote_focus%2FFirefox%20${BITRISE_SCHEME}.dSYM.zip
2209+ 2210+ title : Check if IPA was downloaded
2211+ inputs :
2212+ - content : |-
2213+ #!/usr/bin/env bash
2214+ set -xe
2215+ echo "$IPA_PATH"
2216+ file "$IPA_PATH"
2217+ 2218+ title : Check if symbols were downloaded
2219+ inputs :
2220+ - content : |-
2221+ #!/usr/bin/env bash
2222+ set -xe
2223+ echo "$DSYM_PATH"
2224+ file "$DSYM_PATH"
2225+ 2226+ title : Upload Firefox Focus Symbols
2227+ run_if : |-
2228+ {{enveq "BITRISE_APP_TITLE" "firefox-ios"}}
2229+ inputs :
2230+ - content : |-
2231+ #!/usr/bin/env bash
2232+ set -xe
2233+ firefox-ios/ThirdParty/sentry-cli --auth-token "$SENTRY_AUTH_TOKEN" upload-dif \
2234+ --org mozilla --project ${SENTRY_PROJECT} "$DSYM_PATH"
2235+ - deploy-to-itunesconnect-application-loader@1 :
2236+ title : Deploy to AppStoreConnect
2237+ run_if : |-
2238+ {{enveq "BITRISE_APP_TITLE" "firefox-ios"}}
2239+ inputs :
2240+ - connection : ' off'
2241+ - app_password : " $APPLE_ACCOUNT_PW"
2242+ - itunescon_user : " $APPLE_ACCOUNT_ID"
2243+ - ipa_path : $IPA_PATH
2244+ - retries : 5
2245+
21092246 release_promotion_promote :
21102247 before_run :
21112248 - SPM_Common_Steps
@@ -2296,19 +2433,19 @@ app:
22962433 TEST_FLIGHT_EXTERNAL_GROUP_NAME : Nightly
22972434
22982435
2299- trigger_map :
2300- - push_branch : main
2301- pipeline : pipeline_build_and_test
2302- - push_branch : epic-branch/*
2303- pipeline : pipeline_build_and_test
2304- - push_branch : release/*
2305- pipeline : pipeline_build_and_test
2306- - pull_request_target_branch : main
2307- pipeline : pipeline_build_and_test
2308- - pull_request_target_branch : epic-branch/*
2309- pipeline : pipeline_build_and_test
2310- - pull_request_target_branch : release/v*
2311- pipeline : pipeline_build_and_test
2436+ # trigger_map:
2437+ # - push_branch: main
2438+ # pipeline: pipeline_build_and_test
2439+ # - push_branch: epic-branch/*
2440+ # pipeline: pipeline_build_and_test
2441+ # - push_branch: release/*
2442+ # pipeline: pipeline_build_and_test
2443+ # - pull_request_target_branch: main
2444+ # pipeline: pipeline_build_and_test
2445+ # - pull_request_target_branch: epic-branch/*
2446+ # pipeline: pipeline_build_and_test
2447+ # - pull_request_target_branch: release/v*
2448+ # pipeline: pipeline_build_and_test
23122449
23132450meta :
23142451 bitrise.io :
0 commit comments