{"action":"created","issue":{"url":"https://api.github.com/repos/fastlane/spaceship/issues/156","labels_url":"https://api.github.com/repos/fastlane/spaceship/issues/156/labels{/name}","comments_url":"https://api.github.com/repos/fastlane/spaceship/issues/156/comments","events_url":"https://api.github.com/repos/fastlane/spaceship/issues/156/events","html_url":"https://github.com/fastlane/spaceship/pull/156","id":114781881,"number":156,"title":"Adds support for Mac Developer Portal","user":{"login":"radex","id":183747,"avatar_url":"https://avatars.githubusercontent.com/u/183747?v=3","gravatar_id":"","url":"https://api.github.com/users/radex","html_url":"https://github.com/radex","followers_url":"https://api.github.com/users/radex/followers","following_url":"https://api.github.com/users/radex/following{/other_user}","gists_url":"https://api.github.com/users/radex/gists{/gist_id}","starred_url":"https://api.github.com/users/radex/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/radex/subscriptions","organizations_url":"https://api.github.com/users/radex/orgs","repos_url":"https://api.github.com/users/radex/repos","events_url":"https://api.github.com/users/radex/events{/privacy}","received_events_url":"https://api.github.com/users/radex/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2015-11-03T10:10:29Z","updated_at":"2015-12-06T22:46:13Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/fastlane/spaceship/pulls/156","html_url":"https://github.com/fastlane/spaceship/pull/156","diff_url":"https://github.com/fastlane/spaceship/pull/156.diff","patch_url":"https://github.com/fastlane/spaceship/pull/156.patch"},"body":"This adds support for managing Mac App IDs, provisioning profiles, certificates and devices.\r\n\r\nFor the most part, I'm doing this by adding a bunch of `mac:` (Bool) parameters to App, Device, ProvisioningProfile, Certificate, and the underlying PortalClient. They default to false, and so everything is backwards compatible, but you can pass `mac: true` to access the Mac portal.\r\n\r\nI was originally thinking of making classes like MacApp, or App::Mac to avoid this, but figured it's a waste of time and not very useful either, since the Mac portal behaves almost exactly like the iOS portal — no major surprises there.\r\n\r\nI also considered making the parameters `:mac` and `:ios` instead of an ugly boolean, but I decided not to, because I don't want people to pass `:watchos` and `:tvos` — they're all \"iOS\" as far as Apple Developer Portal is concerned — only Mac is the odd one out.\r\n\r\nMissing features/differences:\r\n\r\n- `App.associate_groups`, `AppGroup` — not available for Mac apps\r\n- `App.update_service`, `AppService`, `Certificate.create!` — shouldn't be too hard to add in the future, I just don't need it personally and I didn't want to check out all the Mac app service IDs or mess with my certificates...\r\n- `Device.all_for_profile_type` — as far as I can tell, this is only useful for tvOS\r\n- `PortalClient.devices_by_class` — all Mac devices are the same type/class, so it's redundant\r\n\r\nWhat do you think?"},"comment":{"url":"https://api.github.com/repos/fastlane/spaceship/issues/comments/162357297","html_url":"https://github.com/fastlane/spaceship/pull/156#issuecomment-162357297","issue_url":"https://api.github.com/repos/fastlane/spaceship/issues/156","id":162357297,"user":{"login":"KrauseFx","id":869950,"avatar_url":"https://avatars.githubusercontent.com/u/869950?v=3","gravatar_id":"","url":"https://api.github.com/users/KrauseFx","html_url":"https://github.com/KrauseFx","followers_url":"https://api.github.com/users/KrauseFx/followers","following_url":"https://api.github.com/users/KrauseFx/following{/other_user}","gists_url":"https://api.github.com/users/KrauseFx/gists{/gist_id}","starred_url":"https://api.github.com/users/KrauseFx/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KrauseFx/subscriptions","organizations_url":"https://api.github.com/users/KrauseFx/orgs","repos_url":"https://api.github.com/users/KrauseFx/repos","events_url":"https://api.github.com/users/KrauseFx/events{/privacy}","received_events_url":"https://api.github.com/users/KrauseFx/received_events","type":"User","site_admin":false},"created_at":"2015-12-06T22:46:13Z","updated_at":"2015-12-06T22:46:13Z","body":"@radex Sorry again for taking so long - I lost track of this pull request. \r\n\r\nThis looks great, and I agree, having boolean parameter is a good solution for now. If you could rebase and make sure the tests pass it's ready to merge :+1: \r\n\r\nThanks for your awesome contribution to `spaceship` :rock"}}