Feature Request: Develop with personal team
lfxu opened this issue · 8 comments
Question as title. I imagine it is not possible to generate a project with personal team already selected. I wonder if there is a way to generate a xcode project, then manually select Personal Team. I've tried various combinations of settings but couldn't get it work:
- If I set
target_environment
ofxcodeproj
rule to simulator, the build target won't show any signing options and runs cannot target physical devices. - If I set
target_environment
to simulator,bazel run
requires settingprovisioning_profile
onios_application
rule. - I have tried to create either a dummy
local_provisioning_profile
orxcode_provisioning_profile
.bazel run
will work. However, after I open project and manually enable "Automatically manage signing" and select "personal team", the build process still throws error "no provisioning profile was found named <dummy_profile_name>", even when the dummy_profile_name matches "Name (Personal Team)" displayed on settings.
Is there actually a way to achieve this? I'm very surprised this is not even discussed or asked at all.
If you use xcode_provisioning_profile
and set managed_by_xcode = True
, you shouldn't need to manually select Automatically manage signing
, as that is what that attribute does.
What do you mean by Personal team
for Development team
? I don't see that option.
From https://developer.apple.com/support/compare-memberships/
If you’re signing in to Xcode with an Apple ID that’s not affiliated with the Apple Developer Program, you'll be able to perform on-device testing for personal use (Xcode refers to this as a Personal Team). However, there are some limitations ...
I guess you won't see it if an account have Apple Developer Program. Of course, in a work environment you will have a certificate to start with, but for personal use it's kind of a high bar at project setup stage.
Can you send me a project that is setup to use a personal team? I can look at it and see if there is anything we can do on the rules_xcodeproj side.
Thanks. Here is an empty project created using Xcode with personal team.
So it looks like it just has your specific Team ID set. So you can use team_id
on xcode_provisioning_profile
to support this use case.
I've tried that.
- It does show a team id once you select the personal team in Xcode. However, setting it in bazel and generate project, you will only see "No account for team " in Xcode.
- The personal team is a temporary thing that last only a few days, and is overall quite different from a normal team. For instance, it is impossible to generate a mobileprovision file with a personal team. "local_provisioning_file_finder" will always fail.
I recall when I had a personal account it worked just fine. I believe the team id was stable the whole time as well. It seems that Xcode translates the team id to a display of "Personal team", just like it does to my normal account name.
And yes, there is no provisioning profile to start, but once you open Xcode it will create the Xcode managed profile with a 7 day expiration date (see the Update Signing
logs that it produces). Once Xcode creates that file, then local_provisioning_file
is able to find it.
Going to close for now, because I believe this is WAI. If you have a specific repro that you want us to look at, comment here and I'll re-open.