15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
|
# File 'lib/produce/itunes_connect.rb', line 15
def create_new_app
application = fetch_application
if application
UI.success "[iTC] App '#{Produce.config[:app_identifier]}' already exists (#{application.apple_id}), nothing to do on iTunes Connect"
else
UI.success "Creating new app '#{Produce.config[:app_name]}' on iTunes Connect"
Produce.config[:bundle_identifier_suffix] = '' unless wildcard_bundle?
generated_app = Spaceship::Tunes::Application.create!(name: Produce.config[:app_name],
primary_language: language,
version: Produce.config[:app_version] || "1.0",
sku: Produce.config[:sku].to_s,
bundle_id: app_identifier,
bundle_id_suffix: Produce.config[:bundle_identifier_suffix],
company_name: Produce.config[:company_name],
platform: Produce.config[:platform])
UI.crash!("Something went wrong when creating the new app on iTC") if generated_app["adamId"].to_s.empty?
application = fetch_application
counter = 0
while application.nil?
counter += 1
UI.crash!("Couldn't find newly created app on iTunes Connect - please check the website for more information") if counter == 200
UI.message("Waiting for the newly created application to be available on iTunes Connect...")
sleep 15
application = fetch_application
end
UI.crash!("Something went wrong when creating the new app - it's not listed in the App's list") unless application
UI.success "Successfully created new app '#{Produce.config[:app_name]}' on iTunes Connect with ID #{application.apple_id}"
end
return Spaceship::Application.find(@full_bundle_identifier, mac: Produce.config[:platform] == "osx").apple_id
end
|