fastlane-plugin-ionic_capacitor 0.1.2 → 0.2.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 79f5e55924e166fc59299744217de776246346c963cc2ed29e74272a20793e03
4
- data.tar.gz: 2920e63e4bda5f609be942fcf9b9323e9349df780526c0ceb701fd69a5d725c3
3
+ metadata.gz: 8b8ebaddafb33ad306b9335b1f455639f5328aa1bcce38e9e7278c2c32d34464
4
+ data.tar.gz: 2e8e8a9ed52f8b56af530c28aa2ca5822cae27d20cfa526335c683cf10912f60
5
5
  SHA512:
6
- metadata.gz: aff6918c8f711825d2759f88fd2a86af4b79c6bf1ec97784b9bc8cad6fb32b913f67907ca65830dbb02a204a2f31416abfc6cebdd9fa080f8493349a02dd5388
7
- data.tar.gz: 0af50242e7671616737ab8a42b97fb2f009964aa0d8b959b29b7fb2f761c29201c54e4b666e0162c3471a6de406fca0ae01a3bc0b50233b8403392484455b9d7
6
+ metadata.gz: '0897af31b3b2a96a10b54c748030934cea5d90d7a9c0232c22e5f2cc4eb1e0f1db564c8095950f7ae645df2fe7e408c5a81df5975d6d5580db64b89be384b794'
7
+ data.tar.gz: ae9eddaa2100e89a26ff50fec641ec07e57006fd621e6da4c9341a04216289c9ab95ed53bbe5f2dd2f0983381e993eca569df6306eabcbb903bc0badcad80807
data/LICENSE CHANGED
@@ -1,6 +1,7 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2024 ThatzOkay <noduhgamingxd@gmail.com>
3
+ Copyright (c) 2017 Jan Piotrowski <piotrowski@gmail.com>
4
+ Copyright (c) 2016 Almouro <contact@almouro.com>
4
5
 
5
6
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
7
  of this software and associated documentation files (the "Software"), to deal
data/README.md CHANGED
@@ -1,26 +1,125 @@
1
- # ionic_capacitor plugin
1
+ # _fastlane_ Plugin for Ionic CLI
2
2
 
3
- [![fastlane Plugin Badge](https://rawcdn.githack.com/fastlane/fastlane/master/fastlane/assets/plugin-badge.svg)](https://rubygems.org/gems/fastlane-plugin-ionic_capacitor)
3
+ [![fastlane Plugin Badge](https://rawcdn.githack.com/fastlane/fastlane/master/fastlane/assets/plugin-badge.svg)](https://rubygems.org/gems/fastlane-plugin-ionic) [![License](https://img.shields.io/badge/license-MIT-green.svg?style=flat)](https://github.com/ionic-zone/fastlane-plugin-ionic/blob/master/LICENSE)
4
+ [![Gem](https://img.shields.io/gem/v/fastlane-plugin-ionic.svg?style=flat)](http://rubygems.org/gems/fastlane-plugin-ionic)
5
+
6
+ This _fastlane_ plugin helps you build your **Ionic Capacitor** project via the [`ionic` CLI](https://ionicframework.com/docs/cli/).
7
+
8
+ It is based on [fastlane-plugin-cordova](https://github.com/bamlab/fastlane-plugin-cordova) (where it borrows a lot of its code. Thanks!).
9
+ Modifed to work with capacitor
4
10
 
5
11
  ## Getting Started
6
12
 
7
- This project is a [_fastlane_](https://github.com/fastlane/fastlane) plugin. To get started with `fastlane-plugin-ionic_capacitor`, add it to your project by running:
13
+ This project is a [fastlane](https://github.com/fastlane/fastlane) plugin. To get started with `fastlane-plugin-ionic`, add it to your project by running:
8
14
 
9
15
  ```bash
10
- fastlane add_plugin ionic_capacitor
16
+ fastlane add_plugin ionic
17
+ ```
18
+
19
+ ## Actions
20
+
21
+ ### `ionic`
22
+
23
+ Runs `ionic capacitor build` (technically: `ionic capacitor prepare` first, then `ionic capacitor compile` [which is the same as what `build` does internally]) to build your Ionic project.
24
+
25
+ ```ruby
26
+ ionic(
27
+ platform: 'ios', # Build your iOS Ionic project
28
+ )
29
+ ionic(
30
+ platform: 'android', # Build your Android Ionic project
31
+ release: false # Build a "Debug" app
32
+ )
33
+ ```
34
+
35
+
36
+ ## Examples
37
+
38
+ Lanes using these actions could look like this:
39
+
40
+ ```ruby
41
+ platform :ios do
42
+ desc "Deploy ios app on the appstore"
43
+
44
+ lane :deploy do
45
+ match(type: "appstore")
46
+ ionic(platform: 'ios')
47
+ deliver(ipa: ENV['CAPACITOR_IOS_RELEASE_BUILD_PATH'])
48
+ end
49
+ end
50
+
51
+ platform :android do
52
+ desc "Deploy android app on play store"
53
+
54
+ lane :deploy do
55
+ ionic(
56
+ platform: 'android',
57
+ keystore_path: './prod.keystore',
58
+ keystore_alias: 'prod',
59
+ keystore_password: 'password'
60
+ )
61
+ supply(apk: ENV['CAPACITOR_ANDROID_RELEASE_BUILD_PATH'])
62
+ end
63
+ end
64
+ ```
65
+
66
+ with an `Appfile` such as
67
+
68
+ ```ruby
69
+ app_identifier "com.awesome.app"
70
+ apple_id "apple@id.com"
71
+ team_id "28323HT"
11
72
  ```
12
73
 
13
- ## About ionic_capacitor
74
+ ---
14
75
 
15
- Build ionic capacitor apps
76
+ The `ENV['CAPACITOR_ANDROID_RELEASE_BUILD_PATH']` is only valid for `capacitor-android` 7.x and newer (which you should be using anyway!).
16
77
 
17
- **Note to author:** Add a more detailed description about this plugin here. If your plugin contains multiple actions, make sure to mention them here.
78
+ If you're using **Crosswalk** (which oyu should not really be doing anymore), replace `supply(apk: ENV['CAPACITOR_ANDROID_RELEASE_BUILD_PATH'])` (and equivalents) by:
18
79
 
19
- ## Example
80
+ ```ruby
81
+ supply(
82
+ apk_paths: [
83
+ 'platforms/android/build/outputs/apk/android-armv7-release.apk',
84
+ 'platforms/android/build/outputs/apk/android-x86-release.apk'
85
+ ],
86
+ )
87
+ ```
88
+
89
+ ## Plugin API
90
+
91
+ To check what's available in the plugin, install it in a project and run at the root of the project:
92
+
93
+ ```
94
+ fastlane actions ionic
95
+ ```
20
96
 
21
- 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`.
97
+ Which will produce:
98
+
99
+ | Key | Description | Env Var | Default |
100
+ |-----|-------------|---------|---------|
101
+ | **platform** | Platform to build on. <br>Should be either android or ios | CAPACITOR_PLATFORM | |
102
+ | **release** | Build for release if true,<br>or for debug if false | CAPACITOR_RELEASE | *true* |
103
+ | **device** | Build for device | CAPACITOR_DEVICE | *true* |
104
+ | **prod** | Build for production | IONIC_PROD | *false* |
105
+ | **type** | This will determine what type of build is generated by Xcode. <br>Valid options are development, enterprise, adhoc, and appstore| CAPACITOR_IOS_PACKAGE_TYPE | appstore |
106
+ | **verbose** | Pipe out more verbose output to the shell | CAPACITOR_VERBOSE | false |
107
+ | **team_id** | The development team (Team ID) to use for code signing | CAPACITOR_IOS_TEAM_ID | *28323HT* |
108
+ | **provisioning_profile** | GUID of the provisioning profile to be used for signing | CAPACITOR_IOS_PROVISIONING_PROFILE | |
109
+ | **android_package_type** | This will determine what type of Android build is generated. Valid options are `apk` and `bundle` | CAPACITOR_ANDROID_PACKAGE_TYPE | apk |
110
+ | **keystore_path** | Path to the Keystore for Android | CAPACITOR_ANDROID_KEYSTORE_PATH | |
111
+ | **keystore_password** | Android Keystore password | CAPACITOR_ANDROID_KEYSTORE_PASSWORD | |
112
+ | **key_password** | Android Key password (default is keystore password) | CAPACITOR_ANDROID_KEY_PASSWORD | |
113
+ | **keystore_alias** | Android Keystore alias | CAPACITOR_ANDROID_KEYSTORE_ALIAS | |
114
+ | **build_number** | Sets the build number for iOS and version code for Android | CAPACITOR_BUILD_NUMBER | |
115
+ | **browserify** | Specifies whether to browserify build or not | CAPACITOR_BROWSERIFY | *false* |
116
+ | **capacitor_prepare** | Specifies whether to run `ionic capacitor prepare` before building | CAPACITOR_PREPARE | *true* |
117
+ | **min_sdk_version** | Overrides the value of minSdkVersion set in `AndroidManifest.xml` | CAPACITOR_ANDROID_MIN_SDK_VERSION | '' |
118
+ | **capacitor_no_fetch** | Specifies whether to run `ionic capacitor platform add` with `--nofetch` parameter | CAPACITOR_NO_FETCH | *false* |
119
+ | **capacitor_no_resources** | Specifies whether to run `ionic capacitor platform add` with `--no-resources` parameter | CAPACITOR_NO_RESOURCES | *false* |
120
+ | **build_flag** | An array of Xcode buildFlag. Will be appended on compile command. | CAPACITOR_IOS_BUILD_FLAG | [] |
121
+ | **capacitor_build_config_file** | Call `ionic capacitor compile` with `--buildConfig=<ConfigFile>` to specify build config file path | CAPACITOR_BUILD_CONFIG_FILE | |
22
122
 
23
- **Note to author:** Please set up a sample project to make it easy for users to explore what your plugin does. Provide everything that is necessary to try out the plugin in this project (including a sample Xcode/Android project if necessary)
24
123
 
25
124
  ## Run tests for this plugin
26
125
 
@@ -41,12 +140,12 @@ For any other issues and feedback about this plugin, please submit it to this re
41
140
 
42
141
  ## Troubleshooting
43
142
 
44
- If you have trouble using plugins, check out the [Plugins Troubleshooting](https://docs.fastlane.tools/plugins/plugins-troubleshooting/) guide.
143
+ If you have trouble using plugins, check out the [Plugins Troubleshooting](https://github.com/fastlane/fastlane/blob/master/fastlane/docs/PluginsTroubleshooting.md) doc in the main `fastlane` repo.
45
144
 
46
- ## Using _fastlane_ Plugins
145
+ ## Using `fastlane` Plugins
47
146
 
48
- For more information about how the `fastlane` plugin system works, check out the [Plugins documentation](https://docs.fastlane.tools/plugins/create-plugin/).
147
+ For more information about how the `fastlane` plugin system works, check out the [Plugins documentation](https://github.com/fastlane/fastlane/blob/master/fastlane/docs/Plugins.md).
49
148
 
50
- ## About _fastlane_
149
+ ## About `fastlane`
51
150
 
52
- _fastlane_ is the easiest way to automate beta deployments and releases for your iOS and Android apps. To learn more, check out [fastlane.tools](https://fastlane.tools).
151
+ `fastlane` is the easiest way to automate beta deployments and releases for your iOS and Android apps. To learn more, check out [fastlane.tools](https://fastlane.tools).
@@ -1,9 +1,11 @@
1
- require 'fastlane/action'
2
- require_relative '../helper/ionic_capacitor_helper'
3
-
4
1
  module Fastlane
5
2
  module Actions
6
- class IonicCapacitorAction < Action
3
+ module SharedValues
4
+ CAPACITOR_IOS_RELEASE_BUILD_PATH = :CAPACITOR_IOS_RELEASE_BUILD_PATH
5
+ CAPACITOR_ANDROID_RELEASE_BUILD_PATH = :CAPACITOR_ANDROID_RELEASE_BUILD_PATH
6
+ end
7
+
8
+ class IonicAction < Action
7
9
  # valid action params
8
10
 
9
11
  ANDROID_ARGS_MAP = {
@@ -13,7 +15,7 @@ module Fastlane
13
15
  keystore_alias: 'alias',
14
16
  build_number: 'versionCode',
15
17
  min_sdk_version: 'gradleArg=-PcdvMinSdkVersion',
16
- capacitor_no_fetch: 'capacitorNoFetch',
18
+ capacitor_no_fetch: 'capacitorNoFetch',
17
19
  android_package_type: 'packageType'
18
20
  }
19
21
 
@@ -63,7 +65,7 @@ module Fastlane
63
65
 
64
66
  if params[:provisioning_profile].empty?
65
67
  # If `match` or `sigh` were used before this, use the certificates returned from there
66
- params[:provisioning_profile] = ENV['SIGH_UUID'] || ENV["sigh_#{app_identifier}_#{params[:type].sub('-', '')}"]
68
+ params[:provisioning_profile] = ENV['SIGH_UUID'] || ENV["sigh_#{app_identifier}_#{params[:type].sub('-', '')}" || ""]
67
69
  end
68
70
 
69
71
  if params[:type] == 'adhoc'
@@ -101,7 +103,7 @@ module Fastlane
101
103
  args << '--browserify' if params[:browserify]
102
104
  args << '--verbose' if params[:verbose]
103
105
 
104
- if !params[:capacitor_build_config_file].to_s.empty?
106
+ unless params[:capacitor_build_config_file].to_s.empty?
105
107
  args << "--buildConfig=#{Shellwords.escape(params[:capacitor_build_config_file])}"
106
108
  end
107
109
 
@@ -120,35 +122,72 @@ module Fastlane
120
122
  )
121
123
  end
122
124
 
123
- is_windows = (ENV['OS'] == 'Windows_NT')
124
- if is_windows
125
- output = `powershell -Command "(gcm bunx).Path"`
126
- if !output.empty?
127
- if `bun pm ls`.include?('@capacitor/assets')
128
- sh "bunx capacitor-assets generate"
129
- end
130
- else
131
- if `npm list @capacitor/assets`.include?('@capacitor/assets')
132
- sh "npx capacitor-assets generate"
133
- end
134
- end
135
- else
136
- if !`which bunx`.empty?
137
- if `bun pm ls`.include?('@capacitor/assets')
138
- sh "bunx capacitor-assets generate"
125
+ if params[:skip_asset_gen] == false
126
+ is_windows = (ENV['OS'] == 'Windows_NT')
127
+ if is_windows
128
+ output = `powershell -Command "(gcm bunx).Path"`
129
+ if !output.empty?
130
+ if `bun pm ls`.include?('@capacitor/assets')
131
+ sh "bunx capacitor-assets generate"
132
+ end
133
+ else
134
+ if `npm list @capacitor/assets`.include?('@capacitor/assets')
135
+ sh "npx capacitor-assets generate"
136
+ end
139
137
  end
140
138
  else
141
- if `npm list @capacitor/assets`.include?('@capacitor/assets')
142
- sh "npx capacitor-assets generate"
139
+ if !`which bunx`.empty?
140
+ if `bun pm ls`.include?('@capacitor/assets')
141
+ sh "bunx capacitor-assets generate"
142
+ end
143
+ else
144
+ if `npm list @capacitor/assets`.include?('@capacitor/assets')
145
+ sh "npx capacitor-assets generate"
146
+ end
143
147
  end
144
148
  end
145
149
  end
146
150
 
151
+ prod_flag = params[:release] ? '--prod' : ''
152
+ sh "ionic capacitor build #{params[:platform]} --no-open #{prod_flag}"
153
+
154
+ configuration = params[:release] ? 'release' : 'debug'
147
155
  if params[:platform].to_s == 'ios'
148
- sh "ionic capacitor build #{params[:platform]} --no-open --no-interactive #{args.join(' ')} -- #{ios_args}"
149
- sh "xcodebuild -configuration debug -workspace ios/*.xcworkspace -scheme #{params[:scheme]} build"
156
+ latest_sdk = `xcodebuild -showsdks`.lines
157
+ .select { |line| line.include?('iphoneos') }
158
+ .last
159
+ &.split
160
+ &.last
161
+ cmd = [
162
+ '/usr/bin/xcodebuild',
163
+ "-sdk #{latest_sdk}",
164
+ "-configuration #{configuration}",
165
+ "-workspace #{params[:workspace]}",
166
+ "-scheme #{params[:scheme]}",
167
+ 'archive',
168
+ "-archivePath ./#{params[:scheme]}",
169
+ 'CODE_SIGN_STYLE=Automatic',
170
+ "DEVELOPMENT_TEAM=#{params[:team_id]}"
171
+ ].join(' ')
172
+
173
+ cmd += ' | xcpretty -r junit --no-color' if `which xcpretty`.strip != ''
174
+
175
+ sh cmd
176
+ sh '/usr/libexec/PlistBuddy -c Clear _XcodeTaskExportOptions.plist'
177
+ sh "/usr/libexec/PlistBuddy -c \"Add :teamID string #{params[:team_id]}\" _XcodeTaskExportOptions.plist"
178
+ sh "/usr/libexec/PlistBuddy -c \"Add :method string #{params[:type]}\" _XcodeTaskExportOptions.plist"
179
+
180
+ archive_cmd = [
181
+ '/usr/bin/xcodebuild',
182
+ '-exportArchive',
183
+ "-archivePath ./#{params[:scheme]}.xcarchive",
184
+ "-exportPath ./output/#{latest_sdk}/#{configuration}",
185
+ '-exportOptionsPlist _XcodeTaskExportOptions.plist'
186
+ ]
187
+ sh archive_cmd
188
+
150
189
  elsif params[:platform].to_s == 'android'
151
- sh "ionic capacitor build #{params[:platform]} --no-open --no-interactive #{args.join(' ')} -- -- #{android_args}"
190
+ sh "ionic capacitor build #{params[:platform]} --no-open #{prod_flag}"
152
191
  if params[:android_package_type] == 'bundle'
153
192
  if !params[:keystore_path].empty?
154
193
  sh "./android/gradlew --project-dir android app:bundleRelease -Pandroid.injected.signing.store.file=#{params[:keystore_path]} -Pandroid.injected.signing.store.password=#{params[:keystore_password]} -Pandroid.injected.signing.key.alias=#{params[:keystore_alias]} -Pandroid.injected.signing.key.password=#{params[:key_password]}"
@@ -166,9 +205,9 @@ module Fastlane
166
205
  end
167
206
 
168
207
  # export build paths (run step #3)
169
- def self.set_build_paths(params, is_release)
208
+ def self.set_build_paths(params, release)
170
209
  app_name = self.get_app_name
171
- build_type = is_release ? 'release' : 'debug'
210
+ build_type = release ? 'release' : 'debug'
172
211
 
173
212
  # Update the build path accordingly if Android is being
174
213
  # built as an Android Application Bundle.
@@ -179,12 +218,19 @@ module Fastlane
179
218
  is_signed = !params[:keystore_path].empty?
180
219
  signed = is_signed ? '' : '-unsigned'
181
220
 
182
- does_android_build_exist = File.exist?("./android/app/build/outputs/#{android_package_type}/#{build_type}/app-#{build_type}#{signed}#{android_package_extension}")
183
-
184
- file_name = does_android_build_exist ? "app-#{build_type}#{signed}#{android_package_extension}" : "app-#{build_type}#{android_package_extension}"
221
+ ENV['CAPACITOR_ANDROID_RELEASE_BUILD_PATH'] = "./android/app/build/outputs/#{android_package_type}/#{build_type}/app-#{build_type}#{signed}#{android_package_extension}"
185
222
 
186
- ENV['CAPACITOR_ANDROID_RELEASE_BUILD_PATH'] = "./android/app/build/outputs/#{android_package_type}/#{build_type}/#{file_name}"
187
- ENV['CAPACITOR_IOS_RELEASE_BUILD_PATH'] = "./ios/build/device/app.ipa"
223
+ configuration = params[:release] ? 'release' : 'debug'
224
+ if params[:platform].to_s == 'ios'
225
+ latest_sdk = `xcodebuild -showsdks`.lines
226
+ .select { |line| line.include?('iphoneos') }
227
+ .last
228
+ &.split
229
+ &.last
230
+ ENV['CAPACITOR_IOS_RELEASE_BUILD_PATH'] = "./output/#{latest_sdk}/#{configuration}/#{params[:scheme]}.ipa"
231
+ end
232
+ # TODO: https://github.com/bamlab/fastlane-plugin-cordova/issues/7
233
+ # TODO: Set env vars that gym and Co automatically use
188
234
  end
189
235
 
190
236
  def self.run(params)
@@ -193,21 +239,16 @@ module Fastlane
193
239
  self.set_build_paths(params, params[:release])
194
240
  end
195
241
 
196
- def self.description
197
- "Build your Ionic Capacitor apps"
198
- end
199
-
200
- def self.authors
201
- ["ThatzOkay"]
202
- end
242
+ #####################################################
243
+ # @!group Documentation
244
+ #####################################################
203
245
 
204
- def self.return_value
205
- # If your method provides a return value, you can describe here what it does
246
+ def self.description
247
+ "Build your Ionic app"
206
248
  end
207
249
 
208
250
  def self.details
209
- # Optional:
210
- "Easily build Ionic Capacitor apps using this plugin. Cordova not supported"
251
+ "Easily integrate your Ionic build into a Fastlane setup"
211
252
  end
212
253
 
213
254
  def self.available_options
@@ -252,13 +293,6 @@ module Fastlane
252
293
  UI.user_error!("Prod should be boolean") unless [false, true].include? value
253
294
  end
254
295
  ),
255
- FastlaneCore::ConfigItem.new(
256
- key: :scheme,
257
- env_name: "CAPACITOR_IOS_SCHEME",
258
- description: "The scheme to use when building the app",
259
- is_string: true,
260
- default_value: 'App'
261
- ),
262
296
  FastlaneCore::ConfigItem.new(
263
297
  key: :type,
264
298
  env_name: "CAPACITOR_IOS_PACKAGE_TYPE",
@@ -286,6 +320,20 @@ module Fastlane
286
320
  is_string: true,
287
321
  default_value: CredentialsManager::AppfileConfig.try_fetch_value(:team_id)
288
322
  ),
323
+ FastlaneCore::ConfigItem.new(
324
+ key: :scheme,
325
+ env_name: "CAPACITOR_IOS_SCHEME",
326
+ description: "The Schema of the app seen as in xcode",
327
+ is_string: true,
328
+ default_value: 'App'
329
+ ),
330
+ FastlaneCore::ConfigItem.new(
331
+ key: :workspace,
332
+ env_name: "CAPACITOR_IOS_WORKSPACE",
333
+ description: "The xcode workspace file path",
334
+ is_string: true,
335
+ default_value: 'ios/App/App.xcworkspace'
336
+ ),
289
337
  FastlaneCore::ConfigItem.new(
290
338
  key: :provisioning_profile,
291
339
  env_name: "CAPACITOR_IOS_PROVISIONING_PROFILE",
@@ -387,17 +435,50 @@ module Fastlane
387
435
  is_string: true,
388
436
  optional: true,
389
437
  default_value: ''
438
+ ),
439
+ FastlaneCore::ConfigItem.new(
440
+ key: :skip_asset_gen,
441
+ env_name: "SKIP_ASSET_GEN",
442
+ description: "Skip generation of assets",
443
+ is_string: false,
444
+ optional: true,
445
+ default_value: false
390
446
  )
391
447
  ]
392
448
  end
393
449
 
450
+ def self.output
451
+ [
452
+ ['CAPACITOR_ANDROID_RELEASE_BUILD_PATH', 'Path to the signed release APK or AAB if it was generated'],
453
+ ['CAPACITOR_IOS_RELEASE_BUILD_PATH', 'Path to the signed release IPA if it was generated']
454
+ ]
455
+ end
456
+
457
+ def self.authors
458
+ ['ThatzOkay']
459
+ end
460
+
394
461
  def self.is_supported?(platform)
395
- # Adjust this if your plugin only works for a particular platform (iOS vs. Android, for example)
396
- # See: https://docs.fastlane.tools/advanced/#control-configuration-by-lane-and-by-platform
397
- #
398
- # [:ios, :mac, :android].include?(platform)
399
462
  true
400
463
  end
464
+
465
+ def self.example_code
466
+ [
467
+ "ionic(
468
+ platform: 'ios'
469
+ )",
470
+ "ionic(
471
+ platform: 'android',
472
+ keystore_path: './staging.keystore',
473
+ keystore_alias: 'alias_name',
474
+ keystore_password: 'store_password'
475
+ )"
476
+ ]
477
+ end
478
+
479
+ def self.category
480
+ :building
481
+ end
401
482
  end
402
483
  end
403
484
  end
@@ -0,0 +1,12 @@
1
+ module Fastlane
2
+ module Helper
3
+ class IonicHelper
4
+ # class methods that you define here become available in your action
5
+ # as `Helper::IonicHelper.your_method`
6
+ #
7
+ def self.show_message
8
+ UI.message("Hello from the ionic plugin helper!")
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,5 @@
1
+ module Fastlane
2
+ module Ionic
3
+ VERSION = "0.2.0"
4
+ end
5
+ end
@@ -1,7 +1,7 @@
1
- require 'fastlane/plugin/ionic_capacitor/version'
1
+ require 'fastlane/plugin/ionic/version'
2
2
 
3
3
  module Fastlane
4
- module IonicCapacitor
4
+ module Ionic
5
5
  # Return all .rb files inside the "actions" and "helper" directory
6
6
  def self.all_classes
7
7
  Dir[File.expand_path('**/{actions,helper}/*.rb', File.dirname(__FILE__))]
@@ -11,6 +11,6 @@ end
11
11
 
12
12
  # By default we want to import all available actions and helpers
13
13
  # A plugin can contain any number of actions and plugins
14
- Fastlane::IonicCapacitor.all_classes.each do |current|
14
+ Fastlane::Ionic.all_classes.each do |current|
15
15
  require current
16
16
  end
metadata CHANGED
@@ -1,16 +1,98 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fastlane-plugin-ionic_capacitor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - ThatzOkay
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2024-06-27 00:00:00.000000000 Z
12
- dependencies: []
13
- description:
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
+ dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: pry
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - ">="
17
+ - !ruby/object:Gem::Version
18
+ version: '0'
19
+ type: :development
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - ">="
24
+ - !ruby/object:Gem::Version
25
+ version: '0'
26
+ - !ruby/object:Gem::Dependency
27
+ name: bundler
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :development
34
+ prerelease: false
35
+ version_requirements: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: '0'
40
+ - !ruby/object:Gem::Dependency
41
+ name: rspec
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
47
+ type: :development
48
+ prerelease: false
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ - !ruby/object:Gem::Dependency
55
+ name: rake
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: '0'
61
+ type: :development
62
+ prerelease: false
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: '0'
68
+ - !ruby/object:Gem::Dependency
69
+ name: rubocop
70
+ requirement: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: '0'
75
+ type: :development
76
+ prerelease: false
77
+ version_requirements: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - ">="
80
+ - !ruby/object:Gem::Version
81
+ version: '0'
82
+ - !ruby/object:Gem::Dependency
83
+ name: fastlane
84
+ requirement: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - ">="
87
+ - !ruby/object:Gem::Version
88
+ version: 1.111.0
89
+ type: :development
90
+ prerelease: false
91
+ version_requirements: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - ">="
94
+ - !ruby/object:Gem::Version
95
+ version: 1.111.0
14
96
  email: noduhgamingxd@gmail.com
15
97
  executables: []
16
98
  extensions: []
@@ -18,16 +100,14 @@ extra_rdoc_files: []
18
100
  files:
19
101
  - LICENSE
20
102
  - README.md
21
- - lib/fastlane/plugin/ionic_capacitor.rb
22
- - lib/fastlane/plugin/ionic_capacitor/actions/ionic_capacitor_action.rb
23
- - lib/fastlane/plugin/ionic_capacitor/helper/ionic_capacitor_helper.rb
24
- - lib/fastlane/plugin/ionic_capacitor/version.rb
25
- homepage: https://github.com/ThatzOkay/fastlane-plugin-ionic_capacitor
103
+ - lib/fastlane/plugin/ionic.rb
104
+ - lib/fastlane/plugin/ionic/actions/ionic_action.rb
105
+ - lib/fastlane/plugin/ionic/helper/ionic_helper.rb
106
+ - lib/fastlane/plugin/ionic/version.rb
107
+ homepage: https://github.com/ThatzOkay/fastlane-plugin-ionic-capacitor
26
108
  licenses:
27
109
  - MIT
28
- metadata:
29
- rubygems_mfa_required: 'true'
30
- post_install_message:
110
+ metadata: {}
31
111
  rdoc_options: []
32
112
  require_paths:
33
113
  - lib
@@ -35,15 +115,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
35
115
  requirements:
36
116
  - - ">="
37
117
  - !ruby/object:Gem::Version
38
- version: '2.6'
118
+ version: '0'
39
119
  required_rubygems_version: !ruby/object:Gem::Requirement
40
120
  requirements:
41
121
  - - ">="
42
122
  - !ruby/object:Gem::Version
43
123
  version: '0'
44
124
  requirements: []
45
- rubygems_version: 3.5.11
46
- signing_key:
125
+ rubygems_version: 3.6.9
47
126
  specification_version: 4
48
- summary: Build ionic capacitor apps
127
+ summary: Build your Ionic app
49
128
  test_files: []
@@ -1,16 +0,0 @@
1
- require 'fastlane_core/ui/ui'
2
-
3
- module Fastlane
4
- UI = FastlaneCore::UI unless Fastlane.const_defined?(:UI)
5
-
6
- module Helper
7
- class IonicCapacitorHelper
8
- # class methods that you define here become available in your action
9
- # as `Helper::IonicCapacitorHelper.your_method`
10
- #
11
- def self.show_message
12
- UI.message("Hello from the ionic_capacitor plugin helper!")
13
- end
14
- end
15
- end
16
- end
@@ -1,5 +0,0 @@
1
- module Fastlane
2
- module IonicCapacitor
3
- VERSION = "0.1.2"
4
- end
5
- end