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 +4 -4
- data/README.md +4 -8
- data/lib/assets/DeliverfileDefault +3 -0
- data/lib/assets/DeliverfileExample +3 -0
- data/lib/deliver/app_metadata.rb +4 -1
- data/lib/deliver/deliverfile/dsl.rb +1 -1
- data/lib/deliver/itunes_connect.rb +9 -2
- data/lib/deliver/version.rb +1 -1
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6851d0bd1ba4409283b0ec568a435e109a155e98
|
4
|
+
data.tar.gz: 0917ace9608ee1e9d27c7f1c3e94ff2737c7f90d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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
|
-
|
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
|
-
|
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
|
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
|
data/lib/deliver/app_metadata.rb
CHANGED
@@ -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?
|
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
|
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
|
-
|
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
|
data/lib/deliver/version.rb
CHANGED
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.
|
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-
|
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:
|
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:
|
340
|
+
version: 1.3.1
|
341
341
|
requirements: []
|
342
342
|
rubyforge_project:
|
343
343
|
rubygems_version: 2.2.2
|