gym 1.6.1 → 1.6.2
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 +43 -43
- data/lib/gym/commands_generator.rb +1 -1
- data/lib/gym/error_handler.rb +4 -3
- data/lib/gym/options.rb +5 -1
- data/lib/gym/runner.rb +4 -3
- data/lib/gym/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 51ccfb15ad789256bd2a6c0deed09836bfefc1b7
|
4
|
+
data.tar.gz: 7403f758d8fe7b9c82fc40b6929209835ba4a607
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e81a226ff214a7eaacaa91f8e72562a7f033d1d34fde6aa4dacd11f4efda4070fc22bfcb8d5167c91f676423694e4a1d9f8f7c10d995b9cd02851ed1ba8c6a5c
|
7
|
+
data.tar.gz: c7ab8a3465999084474c0bfdea6358eb1f9cdeb1a0d1a78cfad84c8f90204221b1ef27de784afce1ab12e53e30697d3f52436cbe0c15837e3b76ee05fa4a9e28
|
data/README.md
CHANGED
@@ -1,24 +1,24 @@
|
|
1
1
|
<h3 align="center">
|
2
|
-
<a href="https://github.com/fastlane/fastlane">
|
3
|
-
<img src="assets/fastlane.png" width="150" />
|
2
|
+
<a href="https://github.com/fastlane/fastlane/tree/master/fastlane">
|
3
|
+
<img src="../fastlane/assets/fastlane.png" width="150" />
|
4
4
|
<br />
|
5
5
|
fastlane
|
6
6
|
</a>
|
7
7
|
</h3>
|
8
8
|
<p align="center">
|
9
|
-
<a href="https://github.com/fastlane/deliver">deliver</a> •
|
10
|
-
<a href="https://github.com/fastlane/snapshot">snapshot</a> •
|
11
|
-
<a href="https://github.com/fastlane/frameit">frameit</a> •
|
12
|
-
<a href="https://github.com/fastlane/pem">pem</a> •
|
13
|
-
<a href="https://github.com/fastlane/sigh">sigh</a> •
|
14
|
-
<a href="https://github.com/fastlane/produce">produce</a> •
|
15
|
-
<a href="https://github.com/fastlane/cert">cert</a> •
|
16
|
-
<a href="https://github.com/fastlane/spaceship">spaceship</a> •
|
17
|
-
<a href="https://github.com/fastlane/pilot">pilot</a> •
|
9
|
+
<a href="https://github.com/fastlane/fastlane/tree/master/deliver">deliver</a> •
|
10
|
+
<a href="https://github.com/fastlane/fastlane/tree/master/snapshot">snapshot</a> •
|
11
|
+
<a href="https://github.com/fastlane/fastlane/tree/master/frameit">frameit</a> •
|
12
|
+
<a href="https://github.com/fastlane/fastlane/tree/master/pem">pem</a> •
|
13
|
+
<a href="https://github.com/fastlane/fastlane/tree/master/sigh">sigh</a> •
|
14
|
+
<a href="https://github.com/fastlane/fastlane/tree/master/produce">produce</a> •
|
15
|
+
<a href="https://github.com/fastlane/fastlane/tree/master/cert">cert</a> •
|
16
|
+
<a href="https://github.com/fastlane/fastlane/tree/master/spaceship">spaceship</a> •
|
17
|
+
<a href="https://github.com/fastlane/fastlane/tree/master/pilot">pilot</a> •
|
18
18
|
<a href="https://github.com/fastlane/boarding">boarding</a> •
|
19
19
|
<b>gym</b> •
|
20
|
-
<a href="https://github.com/fastlane/scan">scan</a> •
|
21
|
-
<a href="https://github.com/fastlane/match">match</a>
|
20
|
+
<a href="https://github.com/fastlane/fastlane/tree/master/scan">scan</a> •
|
21
|
+
<a href="https://github.com/fastlane/fastlane/tree/master/match">match</a>
|
22
22
|
</p>
|
23
23
|
-------
|
24
24
|
|
@@ -30,9 +30,9 @@ gym
|
|
30
30
|
============
|
31
31
|
|
32
32
|
[](https://twitter.com/FastlaneTools)
|
33
|
-
[](https://github.com/fastlane/
|
33
|
+
[](https://github.com/fastlane/fastlane/blob/master/gym/LICENSE)
|
34
34
|
[](http://rubygems.org/gems/gym)
|
35
|
-
[](https://circleci.com/gh/fastlane/fastlane)
|
36
36
|
|
37
37
|
###### Building your app has never been easier
|
38
38
|
|
@@ -40,10 +40,10 @@ Get in contact with the developer on Twitter: [@FastlaneTools](https://twitter.c
|
|
40
40
|
|
41
41
|
-------
|
42
42
|
<p align="center">
|
43
|
-
<a href="#whats-gym">Features</a> •
|
44
|
-
<a href="#installation">Installation</a> •
|
45
|
-
<a href="#usage">Usage</a> •
|
46
|
-
<a href="#tips">Tips</a> •
|
43
|
+
<a href="#whats-gym">Features</a> •
|
44
|
+
<a href="#installation">Installation</a> •
|
45
|
+
<a href="#usage">Usage</a> •
|
46
|
+
<a href="#tips">Tips</a> •
|
47
47
|
<a href="#need-help">Need help?</a>
|
48
48
|
</p>
|
49
49
|
|
@@ -66,7 +66,7 @@ xcodebuild -exportArchive \
|
|
66
66
|
-exportFormat ipa \
|
67
67
|
-archivePath "build/MyApp.xcarchive" \
|
68
68
|
-exportPath "build/MyApp.ipa" \
|
69
|
-
-exportProvisioningProfile "ProvisioningProfileName"
|
69
|
+
-exportProvisioningProfile "ProvisioningProfileName"
|
70
70
|
```
|
71
71
|
|
72
72
|
### With `gym`
|
@@ -89,15 +89,15 @@ gym
|
|
89
89
|
:package: | Automatically generates an `ipa` and a compressed `dSYM` file
|
90
90
|
:bullettrain_side: | Don't remember any complicated build commands, just `gym`
|
91
91
|
:wrench: | Easy and dynamic configuration using parameters and environment variables
|
92
|
-
:floppy_disk: | Store common build settings in a `Gymfile`
|
92
|
+
:floppy_disk: | Store common build settings in a `Gymfile`
|
93
93
|
:outbox_tray: | All archives are stored and accessible in the Xcode Organizer
|
94
94
|
:computer: | Supports both iOS and Mac applications
|
95
95
|
|
96
|
-

|
97
97
|
|
98
98
|
-----
|
99
99
|
|
100
|
-

|
101
101
|
|
102
102
|
# Installation
|
103
103
|
|
@@ -129,7 +129,7 @@ If you run into any issues, use the `verbose` mode to get more information
|
|
129
129
|
|
130
130
|
In general, if you run into issues while exporting the archive, try using:
|
131
131
|
|
132
|
-
gym --use_legacy_build_api
|
132
|
+
gym --use_legacy_build_api
|
133
133
|
|
134
134
|
Set the right export method if you're not uploading to App Store or TestFlight:
|
135
135
|
|
@@ -182,7 +182,7 @@ For the list of available options run `xcodebuild -help`.
|
|
182
182
|
|
183
183
|
# Automating the whole process
|
184
184
|
|
185
|
-
`gym` works great together with [fastlane](https://fastlane.tools), which connects all deployment tools into one streamlined workflow.
|
185
|
+
`gym` works great together with [fastlane](https://fastlane.tools), which connects all deployment tools into one streamlined workflow.
|
186
186
|
|
187
187
|
Using `fastlane` you can define a configuration like
|
188
188
|
|
@@ -196,13 +196,13 @@ end
|
|
196
196
|
|
197
197
|
You can then easily switch between the beta provider (e.g. `testflight`, `hockey`, `s3` and more).
|
198
198
|
|
199
|
-
For more information visit the [fastlane GitHub page](https://github.com/fastlane/fastlane).
|
199
|
+
For more information visit the [fastlane GitHub page](https://github.com/fastlane/fastlane/tree/master/fastlane).
|
200
200
|
|
201
201
|
# How does it work?
|
202
202
|
|
203
|
-
`gym` uses the latest APIs to build and sign your application. The 2 main components are
|
203
|
+
`gym` uses the latest APIs to build and sign your application. The 2 main components are
|
204
204
|
|
205
|
-
- `xcodebuild`
|
205
|
+
- `xcodebuild`
|
206
206
|
- [xcpretty](https://github.com/supermarin/xcpretty)
|
207
207
|
|
208
208
|
When you run `gym` without the `--silent` mode it will print out every command it executes.
|
@@ -236,18 +236,18 @@ After building the archive it is being checked by `gym`. If it's valid, it gets
|
|
236
236
|
|
237
237
|
Using this method there are no workarounds for WatchKit or Swift required, as it uses the same technique Xcode uses when exporting your binary.
|
238
238
|
|
239
|
-
Note: the [xcbuild-safe.sh script](https://github.com/fastlane/
|
239
|
+
Note: the [xcbuild-safe.sh script](https://github.com/fastlane/fastlane/tree/master/gym/lib/assets/wrap_xcodebuild/xcbuild-safe.sh) wraps around xcodebuild to workaround some incompatibilities.
|
240
240
|
|
241
241
|
### Xcode 6 and below
|
242
242
|
|
243
243
|
```
|
244
244
|
/usr/bin/xcrun /path/to/PackageApplication4Gym -v \
|
245
245
|
'/Users/felixkrause/Library/Developer/Xcode/Archives/2015-08-11/ExampleProductName 2015-08-11 18.15.30.xcarchive/Products/Applications/name.app' -o \
|
246
|
-
'/Users/felixkrause/Library/Developer/Xcode/Archives/2015-08-11/ExampleProductName.ipa' \
|
246
|
+
'/Users/felixkrause/Library/Developer/Xcode/Archives/2015-08-11/ExampleProductName.ipa' \
|
247
247
|
--sign "identity" --embed "provProfile"
|
248
248
|
```
|
249
249
|
|
250
|
-
Note: the official PackageApplication script is replaced by a custom PackageApplication4Gym script. This script is obtained by applying a [set of patches](https://github.com/fastlane/
|
250
|
+
Note: the official PackageApplication script is replaced by a custom PackageApplication4Gym script. This script is obtained by applying a [set of patches](https://github.com/fastlane/fastlane/tree/master/gym/lib/assets/package_application_patches) on the fly to fix some known issues in the official Xcode PackageApplication script.
|
251
251
|
|
252
252
|
Afterwards the `ipa` file is moved to the output folder. The `dSYM` file is compressed and moved to the output folder as well.
|
253
253
|
|
@@ -255,17 +255,17 @@ Afterwards the `ipa` file is moved to the output folder. The `dSYM` file is comp
|
|
255
255
|
## [`fastlane`](https://fastlane.tools) Toolchain
|
256
256
|
|
257
257
|
- [`fastlane`](https://fastlane.tools): Connect all deployment tools into one streamlined workflow
|
258
|
-
- [`deliver`](https://github.com/fastlane/deliver): Upload screenshots, metadata and your app to the App Store
|
259
|
-
- [`snapshot`](https://github.com/fastlane/snapshot): Automate taking localized screenshots of your iOS app on every device
|
260
|
-
- [`frameit`](https://github.com/fastlane/frameit): Quickly put your screenshots into the right device frames
|
261
|
-
- [`pem`](https://github.com/fastlane/pem): Automatically generate and renew your push notification profiles
|
262
|
-
- [`produce`](https://github.com/fastlane/produce): Create new iOS apps on iTunes Connect and Dev Portal using the command line
|
263
|
-
- [`cert`](https://github.com/fastlane/cert): Automatically create and maintain iOS code signing certificates
|
264
|
-
- [`spaceship`](https://github.com/fastlane/spaceship): Ruby library to access the Apple Dev Center and iTunes Connect
|
265
|
-
- [`pilot`](https://github.com/fastlane/pilot): The best way to manage your TestFlight testers and builds from your terminal
|
266
|
-
- [`boarding`](https://github.com/fastlane/boarding): The easiest way to invite your TestFlight beta testers
|
267
|
-
- [`scan`](https://github.com/fastlane/scan): The easiest way to run tests of your iOS and Mac app
|
268
|
-
- [`match`](https://github.com/fastlane/match): Easily sync your certificates and profiles across your team using git
|
258
|
+
- [`deliver`](https://github.com/fastlane/fastlane/tree/master/deliver): Upload screenshots, metadata and your app to the App Store
|
259
|
+
- [`snapshot`](https://github.com/fastlane/fastlane/tree/master/snapshot): Automate taking localized screenshots of your iOS app on every device
|
260
|
+
- [`frameit`](https://github.com/fastlane/fastlane/tree/master/frameit): Quickly put your screenshots into the right device frames
|
261
|
+
- [`pem`](https://github.com/fastlane/fastlane/tree/master/pem): Automatically generate and renew your push notification profiles
|
262
|
+
- [`produce`](https://github.com/fastlane/fastlane/tree/master/produce): Create new iOS apps on iTunes Connect and Dev Portal using the command line
|
263
|
+
- [`cert`](https://github.com/fastlane/fastlane/tree/master/cert): Automatically create and maintain iOS code signing certificates
|
264
|
+
- [`spaceship`](https://github.com/fastlane/fastlane/tree/master/spaceship): Ruby library to access the Apple Dev Center and iTunes Connect
|
265
|
+
- [`pilot`](https://github.com/fastlane/fastlane/tree/master/pilot): The best way to manage your TestFlight testers and builds from your terminal
|
266
|
+
- [`boarding`](https://github.com/fastlane/boarding): The easiest way to invite your TestFlight beta testers
|
267
|
+
- [`scan`](https://github.com/fastlane/fastlane/tree/master/scan): The easiest way to run tests of your iOS and Mac app
|
268
|
+
- [`match`](https://github.com/fastlane/fastlane/tree/master/match): Easily sync your certificates and profiles across your team using git
|
269
269
|
|
270
270
|
##### [Like this tool? Be the first to know about updates and new fastlane tools](https://tinyletter.com/krausefx)
|
271
271
|
|
@@ -276,7 +276,7 @@ Download and install the [Provisioning Plugin](https://github.com/chockenberry/P
|
|
276
276
|
Please submit an issue on GitHub and provide information about your setup
|
277
277
|
|
278
278
|
# Code of Conduct
|
279
|
-
Help us keep `gym` open and inclusive. Please read and follow our [Code of Conduct](https://github.com/fastlane/
|
279
|
+
Help us keep `gym` open and inclusive. Please read and follow our [Code of Conduct](https://github.com/fastlane/fastlane/blob/master/CODE_OF_CONDUCT.md).
|
280
280
|
|
281
281
|
# License
|
282
282
|
This project is licensed under the terms of the MIT license. See the LICENSE file.
|
@@ -28,7 +28,7 @@ module Gym
|
|
28
28
|
program :description, Gym::DESCRIPTION
|
29
29
|
program :help, "Author", "Felix Krause <gym@krausefx.com>"
|
30
30
|
program :help, "Website", "https://fastlane.tools"
|
31
|
-
program :help, "GitHub", "https://github.com/fastlane/gym"
|
31
|
+
program :help, "GitHub", "https://github.com/fastlane/fastlane/tree/master/gym"
|
32
32
|
program :help_formatter, :compact
|
33
33
|
|
34
34
|
global_option("--verbose") { $verbose = true }
|
data/lib/gym/error_handler.rb
CHANGED
@@ -10,7 +10,7 @@ module Gym
|
|
10
10
|
when /Your build settings specify a provisioning profile with the UUID/
|
11
11
|
print "Invalid code signing settings"
|
12
12
|
print "Your project defines a provisioning profile which doesn't exist on your local machine"
|
13
|
-
print "You can use sigh (https://github.com/fastlane/sigh) to download and install the provisioning profile"
|
13
|
+
print "You can use sigh (https://github.com/fastlane/fastlane/tree/master/sigh) to download and install the provisioning profile"
|
14
14
|
print "Follow this guide: https://github.com/fastlane/fastlane/blob/master/docs/CodeSigning.md"
|
15
15
|
when /Provisioning profile does not match bundle identifier/
|
16
16
|
print "Invalid code signing settings"
|
@@ -21,12 +21,12 @@ module Gym
|
|
21
21
|
when /provisioning profiles matching the bundle identifier .(.*)./ # the . around the (.*) are for the strange "
|
22
22
|
print "You don't have the provisioning profile for '#{$1}' installed on the local machine"
|
23
23
|
print "Make sure you have the profile on this computer and it's properly installed"
|
24
|
-
print "You can use sigh (https://github.com/fastlane/sigh) to download and install the provisioning profile"
|
24
|
+
print "You can use sigh (https://github.com/fastlane/fastlane/tree/master/sigh) to download and install the provisioning profile"
|
25
25
|
print "Follow this guide: https://github.com/fastlane/fastlane/blob/master/docs/CodeSigning.md"
|
26
26
|
when /matching the bundle identifier .(.*). were found/ # the . around the (.*) are for the strange "
|
27
27
|
print "You don't have a provisioning profile for the bundle identifier '#{$1}' installed on the local machine"
|
28
28
|
print "Make sure you have the profile on this computer and it's properly installed"
|
29
|
-
print "You can use sigh (https://github.com/fastlane/sigh) to download and install the provisioning profile"
|
29
|
+
print "You can use sigh (https://github.com/fastlane/fastlane/tree/master/sigh) to download and install the provisioning profile"
|
30
30
|
print "Follow this guide: https://github.com/fastlane/fastlane/blob/master/docs/CodeSigning.md"
|
31
31
|
|
32
32
|
# Insert more code signing specific errors here
|
@@ -99,6 +99,7 @@ module Gym
|
|
99
99
|
print "For more information visit https://developer.apple.com/library/ios/technotes/tn2215/_index.html"
|
100
100
|
print "Also, make sure to have a valid code signing identity and provisioning profile installed"
|
101
101
|
print "Follow this guide to setup code signing https://github.com/fastlane/fastlane/blob/master/docs/CodeSigning.md"
|
102
|
+
print "If your intention was only to export an ipa be sure to provide a valid archive at the archive path."
|
102
103
|
UI.user_error!("Archive invalid")
|
103
104
|
end
|
104
105
|
|
data/lib/gym/options.rb
CHANGED
@@ -122,7 +122,11 @@ module Gym
|
|
122
122
|
conflict_block: proc do |value|
|
123
123
|
UI.user_error!("'#{value.key}' must be false to use 'export_options'")
|
124
124
|
end),
|
125
|
-
|
125
|
+
FastlaneCore::ConfigItem.new(key: :skip_build_archive,
|
126
|
+
env_name: "GYM_SKIP_BUILD_ARCHIVE",
|
127
|
+
description: "Export ipa from previously build xarchive. Uses archive_path as source",
|
128
|
+
is_string: false,
|
129
|
+
optional: true),
|
126
130
|
# Very optional
|
127
131
|
FastlaneCore::ConfigItem.new(key: :build_path,
|
128
132
|
env_name: "GYM_BUILD_PATH",
|
data/lib/gym/runner.rb
CHANGED
@@ -7,9 +7,10 @@ module Gym
|
|
7
7
|
class Runner
|
8
8
|
# @return (String) The path to the resulting ipa
|
9
9
|
def run
|
10
|
-
|
11
|
-
|
12
|
-
|
10
|
+
unless Gym.config[:skip_build_archive]
|
11
|
+
clear_old_files
|
12
|
+
build_app
|
13
|
+
end
|
13
14
|
verify_archive
|
14
15
|
|
15
16
|
FileUtils.mkdir_p(Gym.config[:output_directory])
|
data/lib/gym/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gym
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.6.
|
4
|
+
version: 1.6.2
|
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-
|
11
|
+
date: 2016-03-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: fastlane_core
|
@@ -269,7 +269,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
269
269
|
version: '0'
|
270
270
|
requirements: []
|
271
271
|
rubyforge_project:
|
272
|
-
rubygems_version: 2.
|
272
|
+
rubygems_version: 2.2.2
|
273
273
|
signing_key:
|
274
274
|
specification_version: 4
|
275
275
|
summary: Building your iOS apps has never been easier
|