Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ineligible devices are returned by Device.all() with include_disabled: false #20999

Open
4 tasks done
tobyjsullivan opened this issue Jan 18, 2023 · 2 comments
Open
4 tasks done

Comments

@tobyjsullivan
Copy link

New Issue Checklist

Issue Description

We've encountered an Apple Device state which I haven't seen before. The Devices dashboard on the Apple Developer Portal reports "Ineligible for 14 days".

Screenshot 2023-01-18 at 10 58 16 AM

Querying the device status with Spaceship::Device.find_by_udid returns a status of n.

device = Spaceship::Device.find_by_udid '<DEVICE_ID_REDACTED>'
[{"deviceId"=>"<REDACTED>",
   "name"=>"<REDACTED>",
   "deviceNumber"=>"<REDACTED>",
   "devicePlatform"=>"ios",
   "status"=>"n",
   "deviceClass"=>"iphone"
   "model"=>"iPhone X",
   "dateAdded"=>"2023-01-08T18:27:43Z",
   "dateCreated"=>"2023-01-08T18:27:43Z",
   "serialNumber"=>"<REDACTED>"}]

It looks like only two statuses are currently considered: c for enabled or r for disabled.

def enabled?
return self.status == "c"
end
def disabled?
return self.status == "r"
end

I have no idea why a device is ineligible. We do weird things so I could speculate but I haven't found any docs or forums discussing this state.

In any case, the emergent problem is that match is trying to create provisioning profiles for this device and it fails. Additionally, we cannot disable the device while it is in this state. At this point, we're unable to run match at all.

Command executed
devices = Spaceship::Device.all
Complete output when running fastlane, including the stack trace and command used

This is spaceship problem so I can only include the result of the Spaceship request.

device = Spaceship::Device.find_by_udid '<DEVICE_ID_REDACTED>'
[{"deviceId"=>"<REDACTED>",
   "name"=>"<REDACTED>",
   "deviceNumber"=>"<REDACTED>",
   "devicePlatform"=>"ios",
   "status"=>"n",
   "deviceClass"=>"iphone"
   "model"=>"iPhone X",
   "dateAdded"=>"2023-01-08T18:27:43Z",
   "dateCreated"=>"2023-01-08T18:27:43Z",
   "serialNumber"=>"<REDACTED>"}]

Environment

I can gather this if it is helpful but it seems unrelated (and I don't have it readily available).

@fastlane-bot
Copy link

It seems like you have not included the output of fastlane env
To make it easier for us help you resolve this issue, please update the issue to include the output of fastlane env 👍

@QuixThe2nd
Copy link

QuixThe2nd commented Jan 31, 2023

Facing a (kinda) similar issue. Is it possible to check if a device is ineligible using fastlane (preferably through cli)?

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

No branches or pull requests

3 participants