fastlane-plugin-appbox 1.1.0 → 1.4.0

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
- SHA1:
3
- metadata.gz: b58167cfb086b6e1da37298db2296ed8858a131d
4
- data.tar.gz: 4776c7f9f1ce7ca9d39e194f1b1cb857ab7fcd43
2
+ SHA256:
3
+ metadata.gz: 36ce435536003b3db2012ce26ec93b47d3472b68ddc5b69e904740fb60ba8958
4
+ data.tar.gz: f4798786c34ef4055c863d9b326b3cd940ff1de4da97058090f01242aa7baaa1
5
5
  SHA512:
6
- metadata.gz: 93d0addb2003187255d0ed3cdba631bf837a1b138c5abf8907d3df6bb680962e80879caea81a1a4c63af0f36e3bbc7aa7673fd99e7aaf2adf941d8e06317a3de
7
- data.tar.gz: c97ebc7406ea947dc625003c56c3ceaf4fd6839c6ad1f777cb40521835aa701676aec6c5f23277cf7587265add8637ba99ce7927da10ce50175d93bcd7e72f0f
6
+ metadata.gz: d35b75a2858d550b87498462cd51bb821c2098651f207f895316494fd50204a5683aca97f9ec3cf8f1a81339ae282f715b99f329eb4d912dcf9f592914d286f3
7
+ data.tar.gz: 58b330fa302da4847aba424c3b0e693af083f35c3401852f745cb1004c2aaa6d4619bb143d09a542a992d14c56d49d2d38f43cad010e1f1178bf3cae37628771
data/README.md CHANGED
@@ -14,43 +14,133 @@ fastlane add_plugin appbox
14
14
 
15
15
  **Step 3** - Define appbox action in your project Fastfile with emails and message. Here the available params for appbox plugins -
16
16
 
17
- - `emails` (Required) - Comma-separated list of email address that should receive application installation link.
18
- - `message` (Optional) - Attach personal message in the email. Supported Keywords:
17
+ - `emails` (Required | String) - Comma-separated list of email address that should receive application installation link.
18
+ - `message` (Optional | String) - Attach personal message in the email. Supported Keywords:
19
19
  >The {PROJECT_NAME} - For Project Name,
20
20
  >{BUILD_VERSION} - For Build Version, and
21
21
  >{BUILD_NUMBER} - For Build Number.
22
- - `appbox_path` (Optional) - If you've setup AppBox in the different directory then you need to mention that here. Default is `/Applications/AppBox.app`
22
+ - `appbox_path` (Optional | String) - If you've setup AppBox in the different directory then you need to mention that here. Default is `/Applications/AppBox.app`
23
+ - `keep_same_link` (Optional | Bool) - This feature will keep same short URL for all future build/IPA uploaded with same bundle identifier. If this option is enabled, you can also download the previous build with the same URL. Read more [here](https://docs.getappbox.com/Features/keepsamelink/).
24
+ - `dropbox_folder_name` (Optional | String) - You can change the link by providing a Custom Dropbox Folder Name. By default folder name will be the application bundle identifier. So, AppBox will keep the same link for the IPA file available in the same folder. Read more [here](https://docs.getappbox.com/Features/keepsamelink/).
23
25
 
24
26
 
25
- ## 2. Demo Fastfile with a lane `gymbox`
27
+ ## 2. Demo Fastfile with a lane `gymbox` with Different Options
28
+
29
+ #### 1. Upload IPA file and Send an email to single email.
30
+
31
+ ```rb
32
+ default_platform(:ios)
33
+
34
+ platform :ios do
35
+ lane :gymbox do
36
+ gym
37
+ appbox(
38
+ emails: 'you@example.com',
39
+ )
40
+ end
41
+ end
42
+ ```
43
+
44
+ #### 2. Upload IPA file and Send email to multiple commas separated emails.
45
+
46
+ ```rb
47
+ default_platform(:ios)
48
+
49
+ platform :ios do
50
+ lane :gymbox do
51
+ gym
52
+ appbox(
53
+ emails: 'you@example.com,'someoneelse@example.com',
54
+ )
55
+ end
56
+ end
57
+ ```
58
+
59
+ #### 3. Upload IPA file and Send email with a custom message.
26
60
 
27
61
  ```rb
28
62
  default_platform(:ios)
29
63
 
30
64
  platform :ios do
31
- desc "Generate IPA file and Create an sharable link using AppBox"
32
65
  lane :gymbox do
33
66
  gym
34
67
  appbox(
35
- emails: 'youemail@example.com',
36
- message: '{PROJECT_NAME} - {BUILD_VERSION}({BUILD_NUMBER}) is ready to test.'
68
+ emails: 'you@example.com',
69
+ message: '{PROJECT_NAME} - {BUILD_VERSION}({BUILD_NUMBER}) is ready to test.',
37
70
  )
38
71
  end
39
72
  end
40
73
  ```
41
74
 
75
+ #### 4. Upload IPA file and keep the same link for all future upload IPAs.
76
+
77
+ ```rb
78
+ default_platform(:ios)
79
+
80
+ platform :ios do
81
+ lane :gymbox do
82
+ gym
83
+ appbox(
84
+ emails: 'you@example.com',
85
+ message: '{PROJECT_NAME} - {BUILD_VERSION}({BUILD_NUMBER}) is ready to test.',
86
+ keep_same_link: true,
87
+ )
88
+ end
89
+ end
90
+ ```
91
+
92
+ #### 5. Upload IPA file and keep the same link for all future upload IPAs in Custom Dropbox folder.
93
+
94
+ ```rb
95
+ default_platform(:ios)
96
+
97
+ platform :ios do
98
+ lane :gymbox do
99
+ gym
100
+ appbox(
101
+ emails: 'you@example.com',
102
+ message: '{PROJECT_NAME} - {BUILD_VERSION}({BUILD_NUMBER}) is ready to test.',
103
+ keep_same_link: true,
104
+ dropbox_folder_name: 'Fastlane-Demo-Keep-Same-Link',
105
+ )
106
+ end
107
+ end
108
+ ```
109
+
110
+ #### 6. Upload IPA file where AppBox available at some custom path instead of macOS Application Directory.
111
+
112
+ ```rb
113
+ default_platform(:ios)
114
+
115
+ platform :ios do
116
+ lane :gymbox do
117
+ gym
118
+ appbox(
119
+ emails: 'you@example.com,'someoneelse@example.com',
120
+ appbox_path:'/Users/vineetchoudhary/Desktop/AppBox2.8.0/AppBox.app',
121
+ )
122
+ end
123
+ end
124
+ ```
125
+
126
+ ## 3. Supported AppBox link access via Fastlane SharedValues
127
+ - `APPBOX_SHARE_URL` - AppBox short shareable URL to install uploaded application.
128
+ - `APPBOX_IPA_URL`- Upload IPA file URL to download IPA file.
129
+ - `APPBOX_MANIFEST_URL` - Manifest file URL for upload application.
130
+ - `APPBOX_LONG_SHARE_UR` - AppBox long shareable URL to install uploaded application.
131
+
42
132
  ![](/AppBox-Fastlane-Demo-Project/AppBoxFastlane.gif)
43
133
 
44
134
 
45
- ## 3. About AppBox
135
+ ## 4. About AppBox
46
136
  [AppBox](https://getappbox.com) is a tool for iOS developers to build and deploy Development, Ad-Hoc and In-house (Enterprise) applications directly to the devices from your Dropbox account. Also, available on [Github](https://github.com/vineetchoudhary/AppBox-iOSAppsWirelessInstallation).
47
137
 
48
- ## 4. Example
138
+ ## 5. Example
49
139
 
50
140
  Check out the [example `Fastfile`](fastlane/Fastfile) to see how to use this plugin. Try it by cloning the repo, running `fastlane install_plugins` and `bundle exec fastlane test`.
51
141
 
52
- ## 5. Issues and Feedback
53
- For any other issues and feedback about this plugin, please submit it to this repository.
142
+ ## 6. Issues and Feedback
143
+ For any other issues and feedback about this plugin, please submit it to this [repository](https://github.com/getappbox/fastlane-plugin-appbox/issues/new).
54
144
 
55
145
  ## 6. Troubleshooting
56
146
  If you have trouble using plugins, check out the [Plugins Troubleshooting](https://docs.fastlane.tools/plugins/plugins-troubleshooting/) guide.
@@ -1,8 +1,16 @@
1
+ require "json"
1
2
  require 'fastlane/action'
2
3
  require_relative '../helper/appbox_helper'
3
4
 
4
5
  module Fastlane
5
6
  module Actions
7
+ module SharedValues
8
+ APPBOX_IPA_URL = :APPBOX_MANIFEST_URL
9
+ APPBOX_SHARE_URL = :APPBOX_SHARE_URL
10
+ APPBOX_MANIFEST_URL = :APPBOX_MANIFEST_URL
11
+ APPBOX_LONG_SHARE_URL = :APPBOX_LONG_SHARE_URL
12
+ end
13
+
6
14
  class AppboxAction < Action
7
15
  def self.run(params)
8
16
  UI.message(params)
@@ -55,6 +63,21 @@ module Fastlane
55
63
 
56
64
  # Print upload status
57
65
  if exit_status
66
+
67
+ # Check if share url file exist and print value
68
+ share_url_file_path = "#{Dir.home}/.appbox_share_value.json"
69
+ if File.file?(share_url_file_path)
70
+ file = File.read(share_url_file_path)
71
+ share_urls_values = JSON.parse(file)
72
+
73
+ Actions.lane_context[SharedValues::APPBOX_IPA_URL] = share_urls_values['APPBOX_IPA_URL']
74
+ Actions.lane_context[SharedValues::APPBOX_SHARE_URL] = share_urls_values['APPBOX_SHARE_URL']
75
+ Actions.lane_context[SharedValues::APPBOX_MANIFEST_URL] = share_urls_values['APPBOX_MANIFEST_URL']
76
+ Actions.lane_context[SharedValues::APPBOX_LONG_SHARE_URL] = share_urls_values['APPBOX_LONG_SHARE_URL']
77
+
78
+ FastlaneCore::PrintTable.print_values(config: share_urls_values, hide_keys: [], title: "Summary for AppBox")
79
+ end
80
+
58
81
  UI.success('AppBox finished successfully')
59
82
  else
60
83
  UI.error('AppBox finished with errors')
@@ -68,6 +91,15 @@ module Fastlane
68
91
 
69
92
  end
70
93
 
94
+ def self.output
95
+ [
96
+ ['APPBOX_IPA_URL', 'Upload IPA file URL to download IPA file.'],
97
+ ['APPBOX_MANIFEST_URL', 'Manifest file URL for upload application.'],
98
+ ['APPBOX_SHARE_URL', 'AppBox short shareable URL to install uploaded application.'],
99
+ ['APPBOX_LONG_SHARE_URL', 'AppBox long shareable URL to install uploaded application.']
100
+ ]
101
+ end
102
+
71
103
  def self.description
72
104
  "Deploy Development, Ad-Hoc and In-house (Enterprise) iOS applications directly to the devices from your Dropbox account."
73
105
  end
@@ -1,5 +1,5 @@
1
1
  module Fastlane
2
2
  module Appbox
3
- VERSION = "1.1.0"
3
+ VERSION = "1.4.0"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fastlane-plugin-appbox
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vineet Choudhary
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-01-14 00:00:00.000000000 Z
11
+ date: 2019-12-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: pry
@@ -167,8 +167,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
167
167
  - !ruby/object:Gem::Version
168
168
  version: '0'
169
169
  requirements: []
170
- rubyforge_project:
171
- rubygems_version: 2.5.1
170
+ rubygems_version: 3.0.4
172
171
  signing_key:
173
172
  specification_version: 4
174
173
  summary: Deploy Development, Ad-Hoc and In-house (Enterprise) iOS applications directly