fastlane 0.1.3 → 0.1.4
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 +20 -2
- data/lib/fastlane/actions/crashlytics.rb +12 -2
- data/lib/fastlane/actions/produce.rb +35 -0
- data/lib/fastlane/actions/slack.rb +7 -2
- data/lib/fastlane/version.rb +1 -1
- metadata +32 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e92732fdcc391aa318c42b987faaf969e0fb3b2b
|
4
|
+
data.tar.gz: c542b5e8edc74b78d87464aed624633a2055da01
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: da9d991046c2df19d21aa9b7dd9770292c2eecdd4f64de339b254b72c27275af2b00bcc27f654445f7c2e4180c59e31a6eaf602d107a812492f9d08f1f9a6ad6
|
7
|
+
data.tar.gz: 4fd5df820ee8bbf0b950f8a04dcc2ed66c89b017b52b6671466df85cc5b64b23dd5fbf135786a71647c3c14b6284ecbcf9ce6dd4f3834524ef8e52c3d595a933
|
data/README.md
CHANGED
@@ -6,7 +6,8 @@
|
|
6
6
|
<a href="https://github.com/KrauseFx/snapshot">snapshot</a> •
|
7
7
|
<a href="https://github.com/KrauseFx/frameit">frameit</a> •
|
8
8
|
<a href="https://github.com/KrauseFx/PEM">PEM</a> •
|
9
|
-
<a href="https://github.com/KrauseFx/sigh">sigh</a>
|
9
|
+
<a href="https://github.com/KrauseFx/sigh">sigh</a> •
|
10
|
+
<a href="https://github.com/KrauseFx/produce">produce</a>
|
10
11
|
</p>
|
11
12
|
-------
|
12
13
|
|
@@ -153,6 +154,22 @@ To use the Ad Hoc profile instead
|
|
153
154
|
sigh :adhoc
|
154
155
|
```
|
155
156
|
|
157
|
+
#### [produce](https://github.com/KrauseFx/produce)
|
158
|
+
|
159
|
+
Create new apps on iTunes Connect and Apple Developer Portal. If the app already exists, `produce` will not do anything.
|
160
|
+
|
161
|
+
```ruby
|
162
|
+
produce({
|
163
|
+
produce_username: 'felix@krausefx.com',
|
164
|
+
produce_app_identifier: 'com.krausefx.app',
|
165
|
+
produce_app_name: 'MyApp',
|
166
|
+
produce_language: 'English',
|
167
|
+
produce_version: '1.0',
|
168
|
+
produce_sku: 123,
|
169
|
+
produce_team_name: 'SunApps GmbH' # only necessary when in multiple teams
|
170
|
+
})
|
171
|
+
```
|
172
|
+
|
156
173
|
#### [deliver](https://github.com/KrauseFx/deliver)
|
157
174
|
```ruby
|
158
175
|
deliver
|
@@ -217,7 +234,7 @@ Send a message to **#channel** (by default) or a direct message to **@username**
|
|
217
234
|
slack({
|
218
235
|
message: "App successfully released!",
|
219
236
|
channel: "#channel",
|
220
|
-
success: true
|
237
|
+
success: true
|
221
238
|
})
|
222
239
|
```
|
223
240
|
|
@@ -347,6 +364,7 @@ Save and run. The result should look like this:
|
|
347
364
|
- [`frameit`](https://github.com/KrauseFx/frameit): Quickly put your screenshots into the right device frames
|
348
365
|
- [`PEM`](https://github.com/KrauseFx/pem): Automatically generate and renew your push notification profiles
|
349
366
|
- [`sigh`](https://github.com/KrauseFx/sigh): Because you would rather spend your time building stuff than fighting provisioning
|
367
|
+
- [`produce`](https://github.com/KrauseFx/produce): Create new iOS apps on iTunes Connect and Dev Portal using the command line
|
350
368
|
|
351
369
|
## Advanced
|
352
370
|
#### Lane Context
|
@@ -9,9 +9,9 @@ module Fastlane
|
|
9
9
|
require "shenzhen"
|
10
10
|
require "shenzhen/plugins/crashlytics"
|
11
11
|
|
12
|
-
params
|
12
|
+
assert_params_given!(params)
|
13
13
|
|
14
|
-
|
14
|
+
params = params.first
|
15
15
|
|
16
16
|
crashlytics_path = params[:crashlytics_path]
|
17
17
|
api_token = params[:api_token]
|
@@ -39,6 +39,13 @@ module Fastlane
|
|
39
39
|
end
|
40
40
|
end
|
41
41
|
|
42
|
+
private
|
43
|
+
|
44
|
+
def self.assert_params_given!(params)
|
45
|
+
return unless params.empty?
|
46
|
+
raise "You have to pass Crashlytics parameters to the Crashlytics action, take a look at https://github.com/KrauseFx/fastlane#crashlytics".red
|
47
|
+
end
|
48
|
+
|
42
49
|
def self.assert_valid_params!(crashlytics_path, api_token, build_secret, ipa_path)
|
43
50
|
assert_valid_crashlytics_path!(crashlytics_path)
|
44
51
|
assert_valid_api_token!(api_token)
|
@@ -65,6 +72,9 @@ module Fastlane
|
|
65
72
|
return if ipa_path && File.exists?(ipa_path)
|
66
73
|
raise "No IPA file given or found, pass using `ipa_path: 'path/app.ipa'`".red
|
67
74
|
end
|
75
|
+
|
76
|
+
private_class_method :assert_params_given!, :assert_valid_params!,
|
77
|
+
:assert_valid_crashlytics_path!, :assert_valid_api_token!, :assert_valid_build_secret!, :assert_valid_ipa_path!
|
68
78
|
end
|
69
79
|
end
|
70
80
|
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
module Fastlane
|
2
|
+
module Actions
|
3
|
+
module SharedValues
|
4
|
+
PRODUCE_APPLE_ID = :PRODUCE_APPLE_ID
|
5
|
+
end
|
6
|
+
|
7
|
+
class ProduceAction
|
8
|
+
def self.run(params)
|
9
|
+
require 'produce'
|
10
|
+
|
11
|
+
hash = params.first || {}
|
12
|
+
raise "Parameter of produce must be a hash".red unless hash.kind_of?Hash
|
13
|
+
|
14
|
+
hash.each do |key, value|
|
15
|
+
ENV[key.to_s.upcase] = value.to_s
|
16
|
+
end
|
17
|
+
|
18
|
+
return if Helper.is_test?
|
19
|
+
|
20
|
+
Dir.chdir(FastlaneFolder.path || Dir.pwd) do
|
21
|
+
# This should be executed in the fastlane folder
|
22
|
+
|
23
|
+
CredentialsManager::PasswordManager.shared_manager(ENV['PRODUCE_USERNAME']) if ENV['PRODUCE_USERNAME']
|
24
|
+
Produce::Config.shared_config # to ask for missing information right in the beginning
|
25
|
+
|
26
|
+
apple_id = Produce::Manager.start_producing.to_s
|
27
|
+
|
28
|
+
|
29
|
+
Actions.lane_context[SharedValues::PRODUCE_APPLE_ID] = apple_id
|
30
|
+
ENV["PRODUCE_APPLE_ID"] = apple_id
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
@@ -48,11 +48,16 @@ module Fastlane
|
|
48
48
|
]
|
49
49
|
}
|
50
50
|
|
51
|
-
notifier.ping "",
|
51
|
+
result = notifier.ping "",
|
52
52
|
icon_url: 'https://s3-eu-west-1.amazonaws.com/fastlane.tools/fastlane.png',
|
53
53
|
attachments: [test_result]
|
54
54
|
|
55
|
-
|
55
|
+
unless result.code == 200
|
56
|
+
Helper.log.debug result
|
57
|
+
raise "Error pushing Slack message, maybe the integration has no permission to post on this channel? Try removing the channel".red
|
58
|
+
else
|
59
|
+
Helper.log.info "Successfully sent Slack notification".green
|
60
|
+
end
|
56
61
|
end
|
57
62
|
end
|
58
63
|
end
|
data/lib/fastlane/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fastlane
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Felix Krause
|
@@ -86,14 +86,28 @@ dependencies:
|
|
86
86
|
requirements:
|
87
87
|
- - ~>
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: 0.
|
89
|
+
version: 0.11.0
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - ~>
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: 0.
|
96
|
+
version: 0.11.0
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: slack-notifier
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - ~>
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '1.0'
|
104
|
+
type: :runtime
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - ~>
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '1.0'
|
97
111
|
- !ruby/object:Gem::Dependency
|
98
112
|
name: credentials_manager
|
99
113
|
requirement: !ruby/object:Gem::Requirement
|
@@ -178,6 +192,20 @@ dependencies:
|
|
178
192
|
- - '>='
|
179
193
|
- !ruby/object:Gem::Version
|
180
194
|
version: 0.2.0
|
195
|
+
- !ruby/object:Gem::Dependency
|
196
|
+
name: produce
|
197
|
+
requirement: !ruby/object:Gem::Requirement
|
198
|
+
requirements:
|
199
|
+
- - '>='
|
200
|
+
- !ruby/object:Gem::Version
|
201
|
+
version: 0.1.0
|
202
|
+
type: :runtime
|
203
|
+
prerelease: false
|
204
|
+
version_requirements: !ruby/object:Gem::Requirement
|
205
|
+
requirements:
|
206
|
+
- - '>='
|
207
|
+
- !ruby/object:Gem::Version
|
208
|
+
version: 0.1.0
|
181
209
|
- !ruby/object:Gem::Dependency
|
182
210
|
name: bundler
|
183
211
|
requirement: !ruby/object:Gem::Requirement
|
@@ -299,6 +327,7 @@ files:
|
|
299
327
|
- lib/fastlane/actions/hockey.rb
|
300
328
|
- lib/fastlane/actions/increment_build_number.rb
|
301
329
|
- lib/fastlane/actions/install_cocapods.rb
|
330
|
+
- lib/fastlane/actions/produce.rb
|
302
331
|
- lib/fastlane/actions/say.rb
|
303
332
|
- lib/fastlane/actions/sigh.rb
|
304
333
|
- lib/fastlane/actions/slack.rb
|