Skip to content

Releases: bitrise-steplib/steps-xcode-build-for-test

1.1.0

07 Dec 10:51
b252209
Compare
Choose a tag to compare

Added support for automatically managing code signing

Will choose automatically between xcodebuild-managed and Bitrise-managed signing.
Requirements for using xcodebuild-managed code signing assets:

  • The Xcode project has the Automatically manage signing option turned on.
  • The The minimum days the Provisioning Profile should be valid (min_profile_validity) Input is left on the default (0) value
  • Xcode version in use is at least 13.
  • API key is used for authentication, not Apple ID.

If the above conditions are not met, will use Bitrise-managed signing.

xcodebuild for managing code signing assets with API key

Uses the CI integration support introduced in Xcode 13 to manage app IDs and profiles. (https://developer.apple.com/videos/play/wwdc2021/10204/)

Bitrise-managed code signing assets

Integrates the functionality of the iOS Auto Provision with App Store Connect API and iOS Auto Provision with Apple ID Step.

Migration

Preserving the valid certificates to the Bitrise Code Signing tab is still a requirement.

  1. First, set the new Automatic code signing (automatic_code_signing) input to api_key or apple_id.
  2. Configure the Register test devices and The minimum days the Provisioning Profile should be valid inputs, if they were set to a custom value previously.
  3. Remove iOS Auto Provision and Certificate and profile installer Steps from the workflow. This is possible after all Xcode Steps that require code signing are migrated. Having multiple Steps managing code signing is not an issue.

Step specific migration notes:

  • iOS Auto Provision with Apple ID Step
    • For more reliable code signing, move to API key authentication. (Unless using Enterprise distribution method).
  • Certificate and profile installer Step
    • This is possible if migrating to automatically managed code signing assets (Manually installing Provisioning Profiles is unsupported)
    • After removal of Certificate and profile installer, only profiles can be removed from the Code signing tab.

(#23)

Full Changelog: 1.0.1...1.1.0

1.0.1

08 Oct 11:03
874e944
Compare
Choose a tag to compare

Updated dependencies (including go-xcode).

1.0.0

04 Oct 11:53
2a1187c
Compare
Choose a tag to compare

[#17 ] Clean up and standardize step inputs.

Changes

  • New input introduced for overriding the Xcode project's Build Settings: 'Build settings (xcconfig)' (xcconfig_content).
  • The raw xcodebuild log output env key is aligned with the source code: BITRISE_XCODE_RAW_RESULT_TEXT_PATH
  • Step input titles, summaries, descriptions, and categories are updated.

Breaking changes to step inputs

  • disable_index_while_building input has been removed, the Xcode Build Setting configured by the input (COMPILER_INDEX_STORE_ENABLE = NO) is the default value for the new xcconfig_content input.
  • output_tool input has been renamed to log_formatter.

0.4.1

22 Jul 09:40
1cdbc50
Compare
Choose a tag to compare

Step description updates (#13)

0.4.0

30 Oct 12:16
Compare
Choose a tag to compare

Added new input: Enable caching of Swift Package Manager packages (cache_level). It is enabled by default.

0.3.0

18 Apr 10:22
a05b325
Compare
Choose a tag to compare

New input:
disable_index_while_building: If it is set to yes it will add the COMPILER_INDEX_STORE_ENABLE=NO flag to the xcodebuild command which will disable the indexing during the build.

This could make the build faster by skipping the indexing during the build run.

Indexing is needed for

 - Autocomplete
 - Ability to quickly jump to definition
 - Get class and method help by alt clicking.
 - Which are not needed in CI environment.

Disable it locally:

In Xcode you can turn off the Index-WhileBuilding feature
by disabling the `Enable Index-WhileBuilding Functionality` in the `Build Settings`.

Disable it via xcodebuild:

In CI environment you can disable it by adding `COMPILER_INDEX_STORE_ENABLE=NO` flag
to the `xcodebuild` command.

0.2.3

21 Feb 12:37
f7cb45f
Compare
Choose a tag to compare

Issue fix:
If the user provided custom derived data path for the xcodebuild the step doesn't used it for the xcodebuild -showBuildSettings command which caused an issue later when the step searched for the generated . xctestrun in a wrong path.

0.2.2

21 Dec 13:30
13e675b
Compare
Choose a tag to compare

Fix the "Failed to parse build settings, error: unknown build settings" error which happened if the xcodebuild -showBuildSettings output contained a line without a = (no key-value pair)

0.2.1

16 Nov 16:55
Compare
Choose a tag to compare

Fixed a bug related to the xctestrun file path. The step now correctly assumes that the path is generated based on the scheme name, not the project name.

Related error message:

No xctestrun file found with pattern: [...]*.xctestrun

0.2.0

09 Oct 10:57
c8d0d90
Compare
Choose a tag to compare
  • [c8d0d90] export BITRISE_TEST_DIR_PATH and BITRISE_XCTESTRUN_FILE_PATH (#3)