fastlane-plugin-appdevops 0.1.0 → 0.1.1
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fce5a1431f53a912385f42baf1fb059477ebdd68ecc91515aef7952f4a88fc91
|
4
|
+
data.tar.gz: 83dda43dbc7d4e65f42337a53c639d813641eaa0cf5ba95785e6dac94f55861b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 99dfceb6813bd20e77e28dbc8178c216e987fbe2d087c10294b1278c0ceee883db6b76572f33526f4d4169c300158135bb3ae999f2ccddbbc8606a74365cde44
|
7
|
+
data.tar.gz: dc59999402bb59a4fd875b114c8d0273239840dde529b085851cbd98b6b3586d0adafbd18b04b57faea2b770aa46d5dc76f7d1d0790025385d39f185fdbdbe7e
|
@@ -3,9 +3,16 @@ require_relative '../helper/appdevops_helper'
|
|
3
3
|
|
4
4
|
module Fastlane
|
5
5
|
module Actions
|
6
|
+
module SharedValues
|
7
|
+
AUTO_BUILD_DEBUG = :AUTO_BUILD_DEBUG
|
8
|
+
end
|
6
9
|
class AppdevopsAction < Action
|
7
10
|
def self.run(params)
|
8
|
-
|
11
|
+
isDebug = params[:debug]
|
12
|
+
UI.message("开始自动打#{isDebug ? "开发" : "appstore"}版本ipa并且上传!")
|
13
|
+
Actions.lane_context[SharedValues::AUTO_BUILD_DEBUG] = isDebug
|
14
|
+
other_action.ios_auto_build_ipa
|
15
|
+
other_action.ios_auto_upload
|
9
16
|
end
|
10
17
|
|
11
18
|
def self.description
|
@@ -19,6 +26,13 @@ module Fastlane
|
|
19
26
|
def self.return_value
|
20
27
|
# If your method provides a return value, you can describe here what it does
|
21
28
|
end
|
29
|
+
def self.output
|
30
|
+
# Define the shared values you are going to provide
|
31
|
+
# Example
|
32
|
+
[
|
33
|
+
['AUTO_BUILD_DEBUG', 'A description of what this value contains']
|
34
|
+
]
|
35
|
+
end
|
22
36
|
|
23
37
|
def self.details
|
24
38
|
# Optional:
|
@@ -27,19 +41,15 @@ module Fastlane
|
|
27
41
|
|
28
42
|
def self.available_options
|
29
43
|
[
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
44
|
+
FastlaneCore::ConfigItem.new(key: :debug,
|
45
|
+
description: "开发模式还是appstore模式",
|
46
|
+
optional: true,
|
47
|
+
default_value: false,
|
48
|
+
is_string: false)
|
35
49
|
]
|
36
50
|
end
|
37
51
|
|
38
52
|
def self.is_supported?(platform)
|
39
|
-
# Adjust this if your plugin only works for a particular platform (iOS vs. Android, for example)
|
40
|
-
# See: https://docs.fastlane.tools/advanced/#control-configuration-by-lane-and-by-platform
|
41
|
-
#
|
42
|
-
# [:ios, :mac, :android].include?(platform)
|
43
53
|
true
|
44
54
|
end
|
45
55
|
end
|
@@ -0,0 +1,90 @@
|
|
1
|
+
module Fastlane
|
2
|
+
module Actions
|
3
|
+
|
4
|
+
class IosAutoBuildIpaAction < Action
|
5
|
+
def self.run(params)
|
6
|
+
# 自动证书同步
|
7
|
+
autoCode_signing
|
8
|
+
#检测pod自动安装
|
9
|
+
autoPodInstall
|
10
|
+
#自动增加build号
|
11
|
+
autoIncrement
|
12
|
+
#自动构建app
|
13
|
+
other_action.build_app(
|
14
|
+
build_path: "build",
|
15
|
+
export_method: isDebug ? "development" : "app-store"
|
16
|
+
)
|
17
|
+
end
|
18
|
+
|
19
|
+
# 自动增加build号
|
20
|
+
def self.autoIncrement
|
21
|
+
if isDebug
|
22
|
+
other_action.increment_build_number(build_number: other_action.number_of_commits)
|
23
|
+
else
|
24
|
+
other_action.increment_build_number(
|
25
|
+
build_number: other_action.latest_testflight_build_number(version: other_action.get_version_number) + 1,
|
26
|
+
)
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
# 检测pod自动安装
|
31
|
+
def self.autoPodInstall
|
32
|
+
other_action.cocoapods(try_repo_update_on_error:true) if File.file?("Podfile")
|
33
|
+
end
|
34
|
+
# 自动同步证书
|
35
|
+
def self.autoCode_signing
|
36
|
+
ENV['MATCH_READONLY'] = "true" unless ENV['MATCH_READONLY']
|
37
|
+
ENV['MATCH_KEYCHAIN_PASSWORD'] = "123456" unless ENV['MATCH_KEYCHAIN_PASSWORD']
|
38
|
+
|
39
|
+
other_action.sync_code_signing(
|
40
|
+
type: isDebug ? "development" : "appstore" ,
|
41
|
+
api_key: isDebug ? nil : auto_api_key,
|
42
|
+
)
|
43
|
+
end
|
44
|
+
|
45
|
+
def self.auto_api_key
|
46
|
+
return nil unless ENV['APP_STORE_CONNECT_API_KEY_KEY_ID']
|
47
|
+
other_action.app_store_connect_api_key unless isDebug
|
48
|
+
end
|
49
|
+
def self.isDebug
|
50
|
+
return Actions.lane_context[SharedValues::AUTO_BUILD_DEBUG]
|
51
|
+
end
|
52
|
+
|
53
|
+
#####################################################
|
54
|
+
# @!group Documentation
|
55
|
+
#####################################################
|
56
|
+
|
57
|
+
def self.description
|
58
|
+
"iOS自动打包"
|
59
|
+
end
|
60
|
+
|
61
|
+
def self.details
|
62
|
+
"证书同步,版本自增,构建IPA"
|
63
|
+
end
|
64
|
+
|
65
|
+
def self.available_options
|
66
|
+
[
|
67
|
+
# FastlaneCore::ConfigItem.new(key: apptype,
|
68
|
+
# env_name: "FL_IOS_AUTO_BUILD_IPA_API_TOKEN", # The name of the environment variable
|
69
|
+
# description: "API Token for IosAutoBuildIpaAction", # a short description of this parameter
|
70
|
+
# verify_block: proc do |value|
|
71
|
+
# UI.user_error!("No API token for IosAutoBuildIpaAction given, pass using `api_token: 'token'`") unless (value and not value.empty?)
|
72
|
+
# # UI.user_error!("Couldn't find file at path '#{value}'") unless File.exist?(value)
|
73
|
+
# end)
|
74
|
+
]
|
75
|
+
end
|
76
|
+
|
77
|
+
def self.return_value
|
78
|
+
# If your method provides a return value, you can describe here what it does
|
79
|
+
end
|
80
|
+
|
81
|
+
def self.authors
|
82
|
+
["yaochenfeng"]
|
83
|
+
end
|
84
|
+
|
85
|
+
def self.is_supported?(platform)
|
86
|
+
platform == :ios
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
module Fastlane
|
2
|
+
module Actions
|
3
|
+
module SharedValues
|
4
|
+
end
|
5
|
+
|
6
|
+
class IosAutoUploadAction < Action
|
7
|
+
def self.run(params)
|
8
|
+
uploadDebug if isDebug
|
9
|
+
uploadBeta unless isDebug
|
10
|
+
end
|
11
|
+
|
12
|
+
# 上传testflight
|
13
|
+
def self.uploadBeta
|
14
|
+
UI.message "没有登录 APP_STORE_CONNECT_API_KEY" unless ENV['APP_STORE_CONNECT_API_KEY']
|
15
|
+
other_action.upload_to_testflight if ENV['APP_STORE_CONNECT_API_KEY']
|
16
|
+
end
|
17
|
+
# 上传debug
|
18
|
+
def self.uploadDebug
|
19
|
+
uploadPyger
|
20
|
+
end
|
21
|
+
|
22
|
+
def self.uploadPyger
|
23
|
+
other_action.pgyer if ENV['PGYER_API_KEY'] && ENV['PGYER_USER_KEY']
|
24
|
+
end
|
25
|
+
|
26
|
+
def self.isDebug
|
27
|
+
return Actions.lane_context[SharedValues::AUTO_BUILD_DEBUG]
|
28
|
+
end
|
29
|
+
#####################################################
|
30
|
+
# @!group Documentation
|
31
|
+
#####################################################
|
32
|
+
|
33
|
+
def self.description
|
34
|
+
"A short description with <= 80 characters of what this action does"
|
35
|
+
end
|
36
|
+
|
37
|
+
def self.details
|
38
|
+
"自动上传app"
|
39
|
+
end
|
40
|
+
|
41
|
+
def self.available_options
|
42
|
+
end
|
43
|
+
|
44
|
+
def self.is_supported?(platform)
|
45
|
+
platform == :ios
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fastlane-plugin-appdevops
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- yaochenfeng
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-11-
|
11
|
+
date: 2022-11-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -160,6 +160,8 @@ files:
|
|
160
160
|
- README.md
|
161
161
|
- lib/fastlane/plugin/appdevops.rb
|
162
162
|
- lib/fastlane/plugin/appdevops/actions/appdevops_action.rb
|
163
|
+
- lib/fastlane/plugin/appdevops/actions/ios_auto_build_ipa.rb
|
164
|
+
- lib/fastlane/plugin/appdevops/actions/ios_auto_upload.rb
|
163
165
|
- lib/fastlane/plugin/appdevops/helper/appdevops_helper.rb
|
164
166
|
- lib/fastlane/plugin/appdevops/version.rb
|
165
167
|
homepage: https://github.com/yaochenfeng/fastlane-plugin-appdevops
|
@@ -181,7 +183,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
181
183
|
- !ruby/object:Gem::Version
|
182
184
|
version: '0'
|
183
185
|
requirements: []
|
184
|
-
rubygems_version: 3.1
|
186
|
+
rubygems_version: 3.0.1
|
185
187
|
signing_key:
|
186
188
|
specification_version: 4
|
187
189
|
summary: app自动化
|