deliver 0.2.1 → 0.2.2.beta2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f92de0bae33cdea7b6f44232da67c4e6af9d2f18
4
- data.tar.gz: 1855f8aa29510d2c1a15ee8fc4968facc4478005
3
+ metadata.gz: 6851d0bd1ba4409283b0ec568a435e109a155e98
4
+ data.tar.gz: 0917ace9608ee1e9d27c7f1c3e94ff2737c7f90d
5
5
  SHA512:
6
- metadata.gz: 161c96261d3ef2beda35bc843b455f82922d3652f55b199f9264bb465ee4f955131df7b878145b3c80aec68e5df21a166ec0fe8d3f616b39c5166f3a57667f04
7
- data.tar.gz: 1e2b83c8a66fb9bf5899f2c398b755ff0b991b9d89249dde3336a1127ae642067913ba76a31e67876d511b041f10fcef201d8310157b1ed6194118160a629f3d
6
+ metadata.gz: 2010df40ce90004c825e0a1dbfab48d06530fbc824176cd2288be06624222bce48580b96de49d8120cd7fb3d2d3fa9b5d036f17d883a8a2df49288935f4067da
7
+ data.tar.gz: c8982f7386ddcb50e74d1f78793ed2025861c63631b83333755ef7f371e8c9624c0651e230d62165883ace0ab1f841ca5bdad4018551bd36b9ddeb8dacfac4d8
data/README.md CHANGED
@@ -39,6 +39,7 @@ Follow the developer on Twitter: [@KrauseFx](https://twitter.com/KrauseFx)
39
39
  - Easily implement a real Continuous Deployment process
40
40
  - Store the configuration in git to easily deploy from **any** computer, including your Continuous Integration server (e.g. Jenkins)
41
41
  - Get a PDF preview of the fetched metadata before uploading the app metadata and screenshots to Apple: [Example Preview](https://github.com/krausefx/deliver/blob/master/assets/PDFExample.png?raw=1) (Yes, those are screenshots taken for all screen sizes)
42
+ - Automatically create new screenshots with [Snapshot](https://github.com/KrauseFx/snapshot)
42
43
 
43
44
  # Installation
44
45
 
@@ -247,15 +248,10 @@ Before actually uploading anything to iTunes, ```Deliver``` will generate a [PDF
247
248
  You can use [SimulatorStatusMagic](https://github.com/shinydevelopment/SimulatorStatusMagic) to clean up the status bar.
248
249
 
249
250
  ## Automatically create screenshots
250
- There is no optimal solution out there (yet).
251
251
 
252
- Some open source tools I found helpful:
252
+ You can easily create screenshots completely automatically in the background using [```snapshot```](https://github.com/KrauseFx/snapshot), the little brother of ```deliver```.
253
253
 
254
- - **[Subliminal](https://github.com/inkling/Subliminal)**: Write your app interaction (e.g. taps) in Objective C. Is based on UIAutomation and is well documented. Currently there are some issues with the latest release of Xcode, which are partly solved in the Xcode6 branch. Checkout my public [gist](https://gist.github.com/KrauseFx/fda87474855dfe0051e6) for running Subliminal on different devices and generating a HTML site viewing all screenshots.
255
- - **[ui-screen-shooter](https://github.com/jonathanpenn/ui-screen-shooter)**: Makes use of the normal UIAutomation code based on Javascript. The script basically helps you switching the device type and simulator language. It is based on AppleScript.
256
- - **[rScreenshooter](https://github.com/KrauseFx/rScreenshooter)**: Similar to ui-screen-shooter, but based on Ruby.
257
-
258
- ```Deliver``` automatically detects the device type of each screenshot based on its resolution. All you have to do is to group the screenshots by their language. Make sure you use the correct language codes.
254
+ ```Deliver``` automatically detects the device type of each screenshot based on its resolution.
259
255
 
260
256
  ## Editing the ```Deliverfile```
261
257
  Change syntax highlighting to *Ruby*.
@@ -274,7 +270,7 @@ This will upload the ipa file to iTunes Connect and mark the uploaded build as B
274
270
  - I'm available for contract work - drop me an email: deliver@felixkrause.at
275
271
 
276
272
  # License
277
- This projected is licensed under the terms of the MIT license. See the LICENSE file.
273
+ This project is licensed under the terms of the MIT license. See the LICENSE file.
278
274
 
279
275
  # Contributing
280
276
 
@@ -33,6 +33,9 @@ ipa do
33
33
  # Add any code you want, like incrementing the build
34
34
  # number or changing the app identifier
35
35
 
36
+ # Attention: When you return a valid ipa file, this file will get uploaded and released
37
+ # If you only want to upload app metadata, remove the complete ipa block.
38
+
36
39
  # system("ipa build") # build your project using Shenzhen
37
40
  "./[[APP_NAME]].ipa" # Tell 'Deliver' where it can find the finished ipa file
38
41
  end
@@ -47,6 +47,9 @@ ipa do
47
47
  # Add any code you want, like incrementing the build
48
48
  # number or changing the app identifier
49
49
 
50
+ # Attention: When you return a valid ipa file, this file will get uploaded and released
51
+ # If you only want to upload app metadata, remove the complete ipa block.
52
+
50
53
  # system("ipa build") # build your project using Shenzhen
51
54
  "./[[APP_NAME]].ipa" # Tell 'Deliver' where it can find the finished ipa file
52
55
  end
@@ -178,7 +178,7 @@ module Deliver
178
178
  update_localized_value('keywords', hash) do |field, keywords, language|
179
179
  raise AppMetadataParameterError.new("Parameter needs to be a hash (each language) with an array of keywords in it (given: #{hash})") unless keywords.kind_of?Array
180
180
 
181
- if keywords.sort != information[language][:keywords][:value].sort
181
+ if not information[language][:keywords] or keywords.sort != information[language][:keywords][:value].sort
182
182
  field.children.remove # remove old keywords
183
183
 
184
184
  node_set = Nokogiri::XML::NodeSet.new(@data)
@@ -456,6 +456,9 @@ module Deliver
456
456
  # Remove all GameCenter related code
457
457
  fetch_value("//x:game_center").remove
458
458
 
459
+ # Remove all InApp purchases
460
+ fetch_value("//x:in_app_purchases").remove
461
+
459
462
  fetch_value("//x:software_screenshots").remove
460
463
  end
461
464
 
@@ -28,7 +28,7 @@ module Deliver
28
28
  raise DeliverfileDSLError.new(MISSING_VALUE_ERROR_MESSAGE.red)
29
29
  end
30
30
 
31
- if value.kind_of?String and not not_translated.include?method_sym
31
+ if not value.kind_of?Hash and not not_translated.include?method_sym
32
32
  # The user should pass a hash for multi-lang values
33
33
  # Maybe he at least set a default language
34
34
  if @default_language
@@ -79,6 +79,8 @@ module Deliver
79
79
  result = visit ITUNESCONNECT_URL
80
80
  raise "Could not open iTunesConnect" unless result['status'] == 'success'
81
81
 
82
+ (wait_for_elements('#accountpassword') rescue nil) # when the user is already logged in, this will raise an exception
83
+
82
84
  if page.has_content?"My Apps"
83
85
  # Already logged in
84
86
  return true
@@ -91,7 +93,7 @@ module Deliver
91
93
  wait_for_elements(".enabled").first.click
92
94
  wait_for_elements('.ng-scope.managedWidth')
93
95
  rescue
94
- ItunesConnectLoginError.new("Error logging in user #{user} with the given password. Make sure you set them correctly")
96
+ raise ItunesConnectLoginError.new("Error logging in user #{user} with the given password. Make sure you entered them correctly.")
95
97
  end
96
98
 
97
99
  Helper.log.info "Successfully logged into iTunesConnect"
@@ -174,7 +176,12 @@ module Deliver
174
176
 
175
177
  open_app_page(app)
176
178
 
177
- return first(".status.ready").text.split(" ").first
179
+ begin
180
+ return first(".status.ready").text.split(" ").first
181
+ rescue
182
+ Helper.log.debug "Could not fetch version number of the live version for app #{app}."
183
+ return nil
184
+ end
178
185
  rescue Exception => ex
179
186
  error_occured(ex)
180
187
  end
@@ -1,3 +1,3 @@
1
1
  module Deliver
2
- VERSION = "0.2.1"
2
+ VERSION = "0.2.2.beta2"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: deliver
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2.beta2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Felix Krause
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-11-08 00:00:00.000000000 Z
11
+ date: 2014-11-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
@@ -319,7 +319,7 @@ files:
319
319
  - lib/deliver/pdf_generator.rb
320
320
  - lib/deliver/update_checker.rb
321
321
  - lib/deliver/version.rb
322
- homepage: ''
322
+ homepage: http://felixkrause.at
323
323
  licenses:
324
324
  - MIT
325
325
  metadata: {}
@@ -332,12 +332,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
332
332
  requirements:
333
333
  - - ">="
334
334
  - !ruby/object:Gem::Version
335
- version: 1.9.3
335
+ version: 2.0.0
336
336
  required_rubygems_version: !ruby/object:Gem::Requirement
337
337
  requirements:
338
- - - ">="
338
+ - - ">"
339
339
  - !ruby/object:Gem::Version
340
- version: '0'
340
+ version: 1.3.1
341
341
  requirements: []
342
342
  rubyforge_project:
343
343
  rubygems_version: 2.2.2