fastlane-plugin-verify_ipa 0.2.0 → 0.2.1
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7df2773b96bdafbbf9d8e504fd7d2f6f0ef60751
|
4
|
+
data.tar.gz: 5fad2cf9c96f8640497603dfc7b15b80c5a4c483
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d30ee60af2cda4cee684308beec4ab411eeeb1bb7afdb7a95cc92a429daa75c92e1d99e003a9f461302458b70ca0f017fdd399b254a6625bacdf5abc5bf72425
|
7
|
+
data.tar.gz: 955cce05513b544ee7aa39bd7464e470b764c2fd0161951cd26a2599a5957d7abc47405a3030f677837130b28b77c16bb2c5e7bb951bbf805ac42f57c4194f6f
|
data/README.md
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
# verify_ipa plugin
|
2
2
|
|
3
3
|
[![fastlane Plugin Badge](https://rawcdn.githack.com/fastlane/fastlane/master/fastlane/assets/plugin-badge.svg)](https://rubygems.org/gems/fastlane-plugin-verify_ipa)
|
4
|
+
[![Gem](https://badge.fury.io/rb/fastlane-plugin-verify_ipa.svg)](https://badge.fury.io/rb/fastlane-plugin-verify_ipa)
|
5
|
+
[![Build Status](https://travis-ci.org/dyang/verify_ipa.svg?branch=master)](https://travis-ci.org/dyang/verify_ipa)
|
4
6
|
|
5
7
|
## Getting Started
|
6
8
|
|
@@ -12,27 +14,66 @@ fastlane add_plugin verify_ipa
|
|
12
14
|
|
13
15
|
## About verify_ipa
|
14
16
|
|
15
|
-
verify_ipa
|
17
|
+
verify_ipa is a collection of Fastlane actions that are used to test various aspects of the iOS ipa file. These actions are especially useful when used in conjunction within a CI/CD pipeline to automatically test that the exported binaries are packaged correctly.
|
16
18
|
|
17
|
-
|
19
|
+
### verify_ipa_files
|
18
20
|
|
19
|
-
|
21
|
+
Sometimes it's easy to accidentally checked the wrong Xcode target membership and have wrong files included in the ipa. This could potentially be risky if the files happen to contain sensitive information. With the verify_ipa_files action it's possible to proactively define a blacklist to fail the build if certain sensitive files make their way into the ipa. e.g.
|
20
22
|
|
21
|
-
|
23
|
+
```bash
|
24
|
+
verify_ipa_files(
|
25
|
+
blacklist: ['*.sh', '*.json']
|
26
|
+
)
|
22
27
|
|
23
|
-
|
28
|
+
verify_ipa_files(
|
29
|
+
blacklist: ['*.{sh,rb,env}']
|
30
|
+
)
|
24
31
|
|
25
|
-
|
32
|
+
```
|
26
33
|
|
27
|
-
|
34
|
+
It's also possible to define a whitelist to make an exception:
|
28
35
|
|
36
|
+
```bash
|
37
|
+
verify_ipa_files(
|
38
|
+
blacklist: ['*.sh', '*.json'],
|
39
|
+
whitelist: ['offline_data.json']
|
40
|
+
)
|
29
41
|
```
|
30
|
-
|
42
|
+
|
43
|
+
In the above example, offline_data.json is allowed to be packaged in the ipa file even though the blacklist `*.json` disallows all json files.
|
44
|
+
|
45
|
+
### verify_ipa_entitlements
|
46
|
+
|
47
|
+
Similar to the official [verify_build action](https://github.com/fastlane/fastlane/blob/master/fastlane/lib/fastlane/actions/verify_build.rb), this action verifies various settings of the ipa entitlements.
|
48
|
+
|
49
|
+
```bash
|
50
|
+
verify_ipa_entitlements(
|
51
|
+
application_identifier: 'MZ6ZTY3EA7.com.apple.myapp',
|
52
|
+
team_identifier: 'MZ6ZTY3EA7',
|
53
|
+
aps_environment: 'production'
|
54
|
+
)
|
55
|
+
```
|
56
|
+
|
57
|
+
There's also an optional `:other_params` parameter that takes in a hash. This can be used to test all entitlement parameters in a generic way, e.g:
|
58
|
+
|
59
|
+
```bash
|
60
|
+
verify_ipa_entitlements(
|
61
|
+
application_identifier: 'MZ6ZTY3EA7.com.apple.myapp',
|
62
|
+
team_identifier: 'MZ6ZTY3EA7',
|
63
|
+
aps_environment: 'production',
|
64
|
+
other_params: {
|
65
|
+
keychain_access_groups: ['MZ6ZTY3EA7.*'],
|
66
|
+
get_task_allow: false
|
67
|
+
}
|
68
|
+
)
|
31
69
|
```
|
32
70
|
|
33
|
-
|
71
|
+
## Run tests for this plugin
|
72
|
+
|
73
|
+
To run both the tests, and code style validation, run
|
74
|
+
|
34
75
|
```
|
35
|
-
|
76
|
+
rake
|
36
77
|
```
|
37
78
|
|
38
79
|
## Issues and Feedback
|
@@ -2,13 +2,13 @@ module Fastlane
|
|
2
2
|
module Helper
|
3
3
|
class VerifyIpaHelper
|
4
4
|
def self.app_path(params, dir)
|
5
|
-
ipa_path = params[:ipa_path] || Actions.lane_context[SharedValues::IPA_OUTPUT_PATH] || ''
|
5
|
+
ipa_path = params[:ipa_path] || Actions.lane_context[Fastlane::Actions::SharedValues::IPA_OUTPUT_PATH] || ''
|
6
6
|
UI.user_error!("Unable to find ipa file '#{ipa_path}'.") unless File.exist?(ipa_path)
|
7
7
|
|
8
8
|
ipa_path = File.expand_path(ipa_path)
|
9
9
|
`unzip '#{ipa_path}' -d #{dir}`
|
10
10
|
UI.user_error!("Unable to unzip ipa '#{ipa_path}'") unless $? == 0
|
11
|
-
|
11
|
+
Dir["#{dir}/Payload/*.app"].first
|
12
12
|
end
|
13
13
|
end
|
14
14
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fastlane-plugin-verify_ipa
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Derek Yang
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-03-
|
11
|
+
date: 2017-03-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: plist
|
@@ -144,5 +144,5 @@ rubyforge_project:
|
|
144
144
|
rubygems_version: 2.6.10
|
145
145
|
signing_key:
|
146
146
|
specification_version: 4
|
147
|
-
summary:
|
147
|
+
summary: Verify various aspects of iOS ipa file
|
148
148
|
test_files: []
|