Skip to content

Conversation

Camji55
Copy link
Contributor

@Camji55 Camji55 commented Sep 16, 2025

This change allows building and distributing with Xcode Cloud which I have been doing on my personal branch for some time now. The intent is that existing workflows for browser builds with GitHub Actions and all Continuous Integration actions should still work as-is since Fastlane should override these code-signing settings. This will need some testing before it gets adopted but having the option to build and deploy within Xcode itself would be beneficial for users who'd like to take advantage of it especially if other options still remain available.

I'm also working on a write up on how to setup Xcode Cloud as an alternative to GitHub Actions for browser builds.

Please let me know what I can do to help verify all Fastlane and GitHub Actions remain working!

@Camji55 Camji55 changed the title [WIP] Enable automatic code signing in Xcode [Testing Needed] Enable automatic code signing in Xcode Sep 16, 2025
Copy link
Contributor

@marionbarker marionbarker left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In all other places in this file, where the syntax

DEVELOPMENT_TEAM = "$(LOOP_DEVELOPMENT_TEAM)";

is used, you see this syntax:

				CODE_SIGN_IDENTITY = "$(LOOP_CODE_SIGN_IDENTITY_DEBUG)";
				CODE_SIGN_STYLE = "$(LOOP_CODE_SIGN_STYLE)";
				DEVELOPMENT_TEAM = "$(LOOP_DEVELOPMENT_TEAM)";
--
				CODE_SIGN_IDENTITY = "$(LOOP_CODE_SIGN_IDENTITY_RELEASE)";
				CODE_SIGN_STYLE = "$(LOOP_CODE_SIGN_STYLE)";
				DEVELOPMENT_TEAM = "$(LOOP_DEVELOPMENT_TEAM)";

Where those environment variables are configured in Loop.xcconfig

// Code signing and provisioning [DEFAULT]
LOOP_CODE_SIGN_IDENTITY_DEBUG = Apple Development
LOOP_CODE_SIGN_IDENTITY_RELEASE = Apple Development
LOOP_CODE_SIGN_STYLE = Automatic

I expect @ps2 will request that you follow that model, so I am requesting changes. If he says it is not important, then I will withdraw my request for changes.

@marionbarker marionbarker requested a review from ps2 September 21, 2025 21:23
@marionbarker
Copy link
Contributor

Test

The functional behavior is independent of whether "Apple Development" is entered directly for the CODE_SIGN_IDENTITY, so these tests are valid and successful.

✅ Mac-Xcode build: no issues building with this change.
✅ Browser Build: Successful Build

@marionbarker
Copy link
Contributor

Having a write up for how to use Xcode Cloud will be excellent. Thank you for doing this.

@Camji55
Copy link
Contributor Author

Camji55 commented Sep 21, 2025

@marionbarker thank you for testing! Yes, with this change there can be some variables removed from the xcconfig in the LoopWorkspace repo including:

LOOP_CODE_SIGN_IDENTITY_DEBUG
LOOP_CODE_SIGN_IDENTITY_RELEASE
LOOP_CODE_SIGN_STYLE

Let’s definitely let @ps2 chime in!

@Camji55 Camji55 changed the title [Testing Needed] Enable automatic code signing in Xcode Enable automatic code signing in Xcode Sep 22, 2025
Copy link
Collaborator

@ps2 ps2 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! LGMT. Removing those other unused settings would be nice too.

@marionbarker
Copy link
Contributor

marionbarker commented Sep 29, 2025

@ps2 said: Removing those other unused settings would be nice too.

I want to be clear which settings should be removed.

Loop.xcconfig has these 3 lines:

LOOP_CODE_SIGN_IDENTITY_DEBUG = Apple Development
LOOP_CODE_SIGN_IDENTITY_RELEASE = Apple Development
LOOP_CODE_SIGN_STYLE = Automatic

I was suggesting that those variables be used in Loop.xcodeproj/project.pbxproj instead of hardcoding them as is done in this PR.

@Camji55 refers to those being in the LoopWorkspace: LoopConfigOverride.xcconfig file.
But they are not included in the DIY LoopWorkspace file at this time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants