deliver 1.7.0 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +9 -3
- data/lib/deliver/commands_generator.rb +1 -1
- data/lib/deliver/detect_values.rb +5 -1
- data/lib/deliver/options.rb +18 -0
- data/lib/deliver/runner.rb +14 -6
- data/lib/deliver/setup.rb +4 -9
- data/lib/deliver/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 058d53f7f022fadeeb57b82e356342d9c8be41d8
|
4
|
+
data.tar.gz: 6fa0490789ee508fb13280919f7bd9bfe40340b9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f464d750c0c6a40c8e9f7a5013c27a411ce67dea972a95ccec0dcda00b9959d08271653579c2c58a82961e28f915aabf4e03dfec5f58bb72c440fc8d532d2b44
|
7
|
+
data.tar.gz: 2a77467718336a69895e98ed452969bd4b293f94d4b88235861b4a36b3320d87f82ca60e06997db9e5ed788f18ea7e0bdd665b271e6f2ea2ecab8f40599633ab
|
data/README.md
CHANGED
@@ -36,7 +36,7 @@ deliver
|
|
36
36
|
|
37
37
|
###### Upload screenshots, metadata and your app to the App Store using a single command
|
38
38
|
|
39
|
-
`deliver` can upload ipa files, app screenshots and more to iTunes Connect from the command line.
|
39
|
+
`deliver` can upload ipa or pkg files, app screenshots and more to iTunes Connect from the command line.
|
40
40
|
|
41
41
|
Get in contact with the developer on Twitter: [@FastlaneTools](https://twitter.com/FastlaneTools)
|
42
42
|
|
@@ -56,7 +56,7 @@ Get in contact with the developer on Twitter: [@FastlaneTools](https://twitter.c
|
|
56
56
|
|
57
57
|
# Features
|
58
58
|
- Upload hundreds of localised screenshots completely automatically
|
59
|
-
- Upload a new ipa file to iTunes Connect without Xcode from any Mac
|
59
|
+
- Upload a new ipa/pkg file to iTunes Connect without Xcode from any Mac
|
60
60
|
- Maintain your app metadata locally and push changes back to iTunes Connect
|
61
61
|
- Easily implement a real Continuous Deployment process using [fastlane](https://fastlane.tools)
|
62
62
|
- Store the configuration in git to easily deploy from **any** Mac, including your Continuous Integration server
|
@@ -110,7 +110,13 @@ Provide the path to an `ipa` file to upload and submit your app for review:
|
|
110
110
|
deliver --ipa "App.ipa" --submit_for_review
|
111
111
|
```
|
112
112
|
|
113
|
-
|
113
|
+
or you can specify path to `pkg` file for Mac OS X apps:
|
114
|
+
|
115
|
+
```
|
116
|
+
deliver --pkg "MacApp.pkg"
|
117
|
+
```
|
118
|
+
|
119
|
+
If you use [fastlane](https://fastlane.tools) you don't have to manually specify the path to your `ipa`/`pkg` file.
|
114
120
|
|
115
121
|
This is just a small sub-set of what you can do with `deliver`, check out the full documentation in [Deliverfile.md](https://github.com/fastlane/deliver/blob/master/Deliverfile.md)
|
116
122
|
|
@@ -36,7 +36,7 @@ module Deliver
|
|
36
36
|
c.action do |args, options|
|
37
37
|
options = FastlaneCore::Configuration.create(Deliver::Options.available_options, options.__hash__)
|
38
38
|
loaded = options.load_configuration_file("Deliverfile")
|
39
|
-
loaded = true if options[:description] || options[:ipa] # do we have *anything* here?
|
39
|
+
loaded = true if options[:description] || options[:ipa] || options[:pkg] # do we have *anything* here?
|
40
40
|
unless loaded
|
41
41
|
if agree("No deliver configuration found in the current directory. Do you want to setup deliver? (y/n)".yellow, true)
|
42
42
|
require 'deliver/setup'
|
@@ -12,9 +12,11 @@ module Deliver
|
|
12
12
|
|
13
13
|
if options[:ipa]
|
14
14
|
identifier = FastlaneCore::IpaFileAnalyser.fetch_app_identifier(options[:ipa])
|
15
|
-
|
15
|
+
elsif options[:pkg]
|
16
|
+
identifier = FastlaneCore::PkgFileAnalyser.fetch_app_identifier(options[:pkg])
|
16
17
|
end
|
17
18
|
|
19
|
+
options[:app_identifier] = identifier if identifier.to_s.length > 0
|
18
20
|
options[:app_identifier] ||= ask("The Bundle Identifier of your App: ")
|
19
21
|
end
|
20
22
|
|
@@ -41,6 +43,8 @@ module Deliver
|
|
41
43
|
def find_version(options)
|
42
44
|
if options[:ipa]
|
43
45
|
options[:app_version] ||= FastlaneCore::IpaFileAnalyser.fetch_app_version(options[:ipa])
|
46
|
+
elsif options[:pkg]
|
47
|
+
options[:app_version] ||= FastlaneCore::PkgFileAnalyser.fetch_app_version(options[:pkg])
|
44
48
|
end
|
45
49
|
end
|
46
50
|
end
|
data/lib/deliver/options.rb
CHANGED
@@ -33,6 +33,24 @@ module Deliver
|
|
33
33
|
verify_block: proc do |value|
|
34
34
|
raise "Could not find ipa file at path '#{value}'".red unless File.exist?(value)
|
35
35
|
raise "'#{value}' doesn't seem to be an ipa file".red unless value.end_with?(".ipa")
|
36
|
+
end,
|
37
|
+
conflicting_options: [:pkg],
|
38
|
+
conflict_block: proc do |value|
|
39
|
+
raise "You can't use 'ipa' and '#{value.key}' options in one run.".red
|
40
|
+
end),
|
41
|
+
FastlaneCore::ConfigItem.new(key: :pkg,
|
42
|
+
short_option: "-c",
|
43
|
+
optional: true,
|
44
|
+
env_name: "DELIVER_PKG_PATH",
|
45
|
+
description: "Path to your pkg file",
|
46
|
+
default_value: Dir["*.pkg"].first,
|
47
|
+
verify_block: proc do |value|
|
48
|
+
raise "Could not find pkg file at path '#{value}'".red unless File.exist?(value)
|
49
|
+
raise "'#{value}' doesn't seem to be a pkg file".red unless value.end_with?(".pkg")
|
50
|
+
end,
|
51
|
+
conflicting_options: [:ipa],
|
52
|
+
conflict_block: proc do |value|
|
53
|
+
raise "You can't use 'pkg' and '#{value.key}' options in one run.".red
|
36
54
|
end),
|
37
55
|
FastlaneCore::ConfigItem.new(key: :metadata_path,
|
38
56
|
short_option: '-m',
|
data/lib/deliver/runner.rb
CHANGED
@@ -19,7 +19,7 @@ module Deliver
|
|
19
19
|
def run
|
20
20
|
verify_version if options[:app_version].to_s.length > 0
|
21
21
|
upload_metadata
|
22
|
-
upload_binary if options[:ipa]
|
22
|
+
upload_binary if options[:ipa] || options[:pkg]
|
23
23
|
|
24
24
|
Helper.log.info "Finished the upload to iTunes Connect".green
|
25
25
|
|
@@ -59,11 +59,19 @@ module Deliver
|
|
59
59
|
# Upload the binary to iTunes Connect
|
60
60
|
def upload_binary
|
61
61
|
Helper.log.info "Uploading binary to iTunes Connect"
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
62
|
+
if options[:ipa]
|
63
|
+
package_path = FastlaneCore::IpaUploadPackageBuilder.new.generate(
|
64
|
+
app_id: options[:app].apple_id,
|
65
|
+
ipa_path: options[:ipa],
|
66
|
+
package_path: "/tmp"
|
67
|
+
)
|
68
|
+
elsif options[:pkg]
|
69
|
+
package_path = FastlaneCore::PkgUploadPackageBuilder.new.generate(
|
70
|
+
app_id: options[:app].apple_id,
|
71
|
+
pkg_path: options[:pkg],
|
72
|
+
package_path: "/tmp"
|
73
|
+
)
|
74
|
+
end
|
67
75
|
|
68
76
|
transporter = FastlaneCore::ItunesTransporter.new(options[:username])
|
69
77
|
transporter.upload(options[:app].apple_id, package_path)
|
data/lib/deliver/setup.rb
CHANGED
@@ -2,16 +2,12 @@ module Deliver
|
|
2
2
|
class Setup
|
3
3
|
def run(options)
|
4
4
|
containing = (File.directory?("fastlane") ? 'fastlane' : '.')
|
5
|
-
|
5
|
+
file_path = File.join(containing, 'Deliverfile')
|
6
|
+
data = generate_deliver_file(containing, options)
|
7
|
+
setup_deliver(file_path, data, containing, options)
|
6
8
|
end
|
7
9
|
|
8
|
-
|
9
|
-
# @param deliver_path (String) The directory in which the Deliverfile should be created
|
10
|
-
# @param identifier (String) The app identifier we want to create Deliverfile based on
|
11
|
-
# @param project_name (String) The default name of the project, which is used in the generated Deliverfile
|
12
|
-
def create_based_on_identifier(deliver_path, options)
|
13
|
-
file_path = File.join(deliver_path, 'Deliverfile')
|
14
|
-
data = generate_deliver_file(deliver_path, options)
|
10
|
+
def setup_deliver(file_path, data, deliver_path, options)
|
15
11
|
File.write(file_path, data)
|
16
12
|
|
17
13
|
download_screenshots(deliver_path, options)
|
@@ -34,7 +30,6 @@ module Deliver
|
|
34
30
|
deliver = File.read("#{gem_path}/lib/assets/DeliverfileDefault")
|
35
31
|
deliver.gsub!("[[APP_IDENTIFIER]]", options[:app].bundle_id)
|
36
32
|
deliver.gsub!("[[USERNAME]]", Spaceship::Tunes.client.user)
|
37
|
-
|
38
33
|
return deliver
|
39
34
|
end
|
40
35
|
|
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: 1.
|
4
|
+
version: 1.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Felix Krause
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-01-
|
11
|
+
date: 2016-01-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: fastlane_core
|