lib/spaceship/tunes/tunes_client.rb in spaceship-0.36.2 vs lib/spaceship/tunes/tunes_client.rb in spaceship-0.37.0
- old
+ new
@@ -85,11 +85,14 @@
raise ITunesConnectError.new, "Could not set team ID to '#{team_id}', only found the following available teams: #{available_teams.join(', ')}"
end
response = request(:post) do |req|
req.url "ra/v1/session/webSession"
- req.body = { contentProviderId: team_id, dsId: user_detail_data.ds_id }.to_json
+ req.body = {
+ contentProviderId: team_id,
+ dsId: user_detail_data.ds_id # https://github.com/fastlane/fastlane/issues/6711
+ }.to_json
req.headers['Content-Type'] = 'application/json'
end
handle_itc_response(response.body)
@@ -536,11 +539,11 @@
# @return [UserDetail] the response
def user_detail_data
return @cached if @cached
r = request(:get, '/WebObjects/iTunesConnect.woa/ra/user/detail')
data = parse_response(r, 'data')
- @cached ||= Spaceship::Tunes::UserDetail.factory(data)
+ @cached = Spaceship::Tunes::UserDetail.factory(data)
end
#####################################################
# @!group CandiateBuilds
#####################################################
@@ -783,11 +786,17 @@
url = tester.url(app_id)[:index_by_app]
r = request(:get, url)
parse_response(r, 'data')['users']
end
- def create_tester!(tester: nil, email: nil, first_name: nil, last_name: nil)
+ def groups
+ return @cached_groups if @cached_groups
+ r = request(:get, '/WebObjects/iTunesConnect.woa/ra/users/pre/ext')
+ @cached_groups = parse_response(r, 'data')['groups']
+ end
+
+ def create_tester!(tester: nil, email: nil, first_name: nil, last_name: nil, groups: nil)
url = tester.url[:create]
raise "Action not provided for this tester type." unless url
tester_data = {
emailAddress: {
@@ -801,9 +810,12 @@
},
testing: {
value: true
}
}
+ if groups
+ tester_data[:groups] = groups.map { |x| { "id" => x } }
+ end
data = { testers: [tester_data] }
r = request(:post) do |req|
req.url url