更新构建配置,为必要渠道添加相关证书
parent
c44a2bd1e1
commit
fa36a49d97
|
|
@ -47,6 +47,7 @@ Packages:
|
|||
- DeviceHelper@0.0.1
|
||||
- AIhelper@latest
|
||||
- WXPay@latest
|
||||
- DeviceHelper@0.0.1
|
||||
|
||||
# 爱加密配置
|
||||
Encryption:
|
||||
|
|
|
|||
|
|
@ -0,0 +1,33 @@
|
|||
-----BEGIN CERTIFICATE-----
|
||||
MIIFpjCCA46gAwIBAgIDAYVJMA0GCSqGSIb3DQEBCwUAMIGAMQswCQYDVQQGEwJD
|
||||
TjEQMA4GA1UECAwHQmVpamluZzEMMAoGA1UECgwDTVNBMREwDwYDVQQLDAhPQUlE
|
||||
X1NESzEeMBwGA1UEAwwVY29tLmJ1bi5taWl0bWRpZC5zaWduMR4wHAYJKoZIhvcN
|
||||
AQkBFg9tc2FAY2FpY3QuYWMuY24wHhcNMjUxMDI2MTQxMTEwWhcNMjYxMDI3MTQx
|
||||
MTEwWjCBlzELMAkGA1UEBhMCQ04xEDAOBgNVBAgMB0JlaWppbmcxEDAOBgNVBAcM
|
||||
B0JlaWppbmcxGjAYBgNVBAoMEWh1b2VyZ3Vvc2luYWx1b2RhMSEwHwYDVQQDDBhj
|
||||
b20ucGh4aC5ubGRkZXYuYmlsaWJpbGkxJTAjBgkqhkiG9w0BCQEWFm1heXVhbnpo
|
||||
ZW5nQHBoeGhjZC5jb20wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCy
|
||||
GC9T3GW4BSsvnVNqb8+HlnjJAQvTPd7H13m1f945uUsUYYMaaZuICYjb4qefZUyQ
|
||||
gyxBUTYfBOTpE7ccdcNoZgCp05RTng30zvkc4pjawJIkNeIC2NGlN7RquO4Ka/06
|
||||
LSuq5N+bfL78E0MwZAinoxSswf/yNY5R1LJ2b3I7BnW7rVSb7KbB0Q4z5KmuJ04h
|
||||
PVl7BtSdfVnvnRVTBDRm/cMgyupEl+CCGW8HUejzPHdHeHRK1rx7fuwQI+5jgMmD
|
||||
YRNXZD4AmJ0vClurQR5avN2xOuxB8HbtB+lQitsNnQCvYY1Xp4s7FtfmT6JzDNQ/
|
||||
/vRgXxYrOaVFfoY/ugrO+SfZtqej+mdKR3KgOaAA75t8zcJfM6WGrbPJl3xHc2bh
|
||||
D4kGwRkTAcHJ7WQOIrWz85CPCfIoYh8nZlBlsCNamJJh6Pl2nAtmnfMtDuYZJo/2
|
||||
QK6J/KFtywsYIekU6fiRsJaaunBf5sD9IxbvJcRRB+HRCsySKYEg8z7Xlh90fHim
|
||||
fUgT0Gt44/o+nzPh7Cq9Ay6dWtMxYFx78Z1epapOJdUNpZWIET8wQHriJmbJ18Tl
|
||||
idGRAW85kW2ka2cr4u6Ed68JQa+nN+kbS0dDeuvOBGOsiqqCy5aeA0oz88HRWWIg
|
||||
a02PLTZbEs4PdYrNzHWCISjnk34KpwwxYJUn6Zpy1wIDAQABoxAwDjAMBgNVHRMB
|
||||
Af8EAjAAMA0GCSqGSIb3DQEBCwUAA4ICAQBxpDWEXdZniXP2aQXNG7W7JQBKrwKE
|
||||
Vsd+Rah28XU6U+5sYWPmMgnupJ9u3ubS9MD1U9fzrkzInt8TtGDUJzp52fQUU8S4
|
||||
ZEbHVry2Urp+sQtkUhWNRUnFWmF/18WzT52oU9zlqoH+278zvS63Ys62/0qbxMyD
|
||||
drKtYzxrCAei9WCejvFTKZuYNJ7/0XXnLp1TAh8EvbjNCj2QFYuXJovZl9U1e6sx
|
||||
pvhubcBFbdXb+LPUUpivPb0sELoy9jrEgHG/DtIUUBFAJ6gVEcpSyR3F4PMy1SMC
|
||||
ZLdAQ+EvM0GCCU9X5f2/Ti9iTZUDTXQ82nA+/zcq+qRMIHfXCOzxN/hjm/dtx7dP
|
||||
HJuISWkqE15Kc7KRi31F4+KD9d/JLR3IrWT0a1OUp5SD1iNVufeHl4zP80pNXCZM
|
||||
K1OEKubsvp7IynJFhEZ6IClDW24ZT95habKgVTbdTdm8NJhKW2+sTqDB99RuVMqN
|
||||
6tczSqf6Zp28JfH3mXam6mzmtqADrWk2KkaLongTb8V0z64aP3KmDLl/OdYZKmQ3
|
||||
He1VUETSPTweYRDfUIuA952IuPRkOI3mtJ58HPSJ1rYfCvfWd3BEwaBop4NIime5
|
||||
0YvN1+K52KM7uIdbD7zY1x0e/wDW30Yv3+abgUMrNqiVQm3PwRuFOkfHNs1czonN
|
||||
PFqVi8T0DEMipw==
|
||||
-----END CERTIFICATE-----
|
||||
|
|
@ -13,10 +13,11 @@ IsOversea: false
|
|||
Language: "Lan_Default"
|
||||
|
||||
# 当前版本号
|
||||
Version: "0.7.2"
|
||||
Version: "0.8.0"
|
||||
|
||||
# BuildCode
|
||||
BuildCode: 5
|
||||
BuildCode: 4
|
||||
|
||||
# 构建资源远程上传路径
|
||||
OssRemoteUploadPath: "oss://nld-pre/client_res/Build"
|
||||
AssetsEndPoint: "oss-cn-hangzhou.aliyuncs.com"
|
||||
|
|
@ -41,7 +42,7 @@ Packages:
|
|||
- Bilibili@1.0.0
|
||||
- ThinkingData@1.0.0
|
||||
- TalkingData@0.0.1
|
||||
|
||||
- DeviceHelper@0.0.1
|
||||
|
||||
# 爱加密配置
|
||||
Encryption:
|
||||
|
|
|
|||
|
|
@ -50,6 +50,7 @@ Packages:
|
|||
- ThinkingData@1.0.0
|
||||
- TalkingData@0.0.1
|
||||
- AIhelper@latest
|
||||
- DeviceHelper@0.0.1
|
||||
|
||||
# 爱加密配置
|
||||
Encryption:
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ Packages:
|
|||
- ThinkingData@1.0.0
|
||||
- TalkingData@0.0.1
|
||||
- AIhelper@latest
|
||||
|
||||
- DeviceHelper@0.0.1
|
||||
|
||||
# 爱加密配置
|
||||
Encryption:
|
||||
|
|
|
|||
|
|
@ -1,22 +0,0 @@
|
|||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public partial class PostHeader
|
||||
{
|
||||
/// <summary>
|
||||
/// 加密算法拼接密钥
|
||||
/// </summary>
|
||||
static string key = "us8J-eP3jJI04_UULhGTfouIFvs3XXQKdSuf44s4ELg=";
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 头部包含密钥
|
||||
/// </summary>
|
||||
static string accessKey = "MmCjnmZiXAVC3RT1";
|
||||
|
||||
/// <summary>
|
||||
/// 用于BI的url
|
||||
/// </summary>
|
||||
public static string PostUrl = "http://openapi.kedrgame.com/api/v1/";
|
||||
}
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.phxh.dev.nld" >
|
||||
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
||||
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
|
||||
|
||||
<queries>
|
||||
<package android:name="com.eg.android.AlipayGphone" />
|
||||
<package android:name="com.alipay.wallet" />
|
||||
</queries>
|
||||
|
||||
<application
|
||||
android:allowBackup="true"
|
||||
android:label="@string/app_name"
|
||||
android:supportsRtl="true" >
|
||||
<activity
|
||||
android:name="com.phxh.dev.nld.PayActivity">
|
||||
<meta-data
|
||||
android:name="unityplayer.UnityActivity"
|
||||
android:value="true" />
|
||||
</activity>
|
||||
</application>
|
||||
|
||||
</manifest>
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
fileFormatVersion: 2
|
||||
guid: e67627dae8fb6664abc0325a1e989564
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
|
|
@ -1,32 +0,0 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 42887166198c26f4a88574c85ebbf377
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Android: Android
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
|
|
@ -1,32 +0,0 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 99faef125be8c3446a158d4b75c6428a
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Android: Android
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.unity3d.player"
|
||||
xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
<!--定义权限-->
|
||||
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
|
||||
<!--获取wifi状态-->
|
||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
||||
<!--获取移动网络状态-->
|
||||
|
||||
<application>
|
||||
<activity android:name="com.unity3d.player.UnityPlayerActivity"
|
||||
android:theme="@style/UnityThemeSelector">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
</intent-filter>
|
||||
<meta-data android:name="unityplayer.UnityActivity" android:value="true" />
|
||||
<!--Unity打包屏蔽权限弹窗-->
|
||||
<meta-data android:name="unityplayer.SkipPermissionsDialog" android:value="true" />
|
||||
</activity>
|
||||
</application>
|
||||
</manifest>
|
||||
Binary file not shown.
|
|
@ -1,32 +0,0 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 3b6bcfef57fcb4719bb44b6f7b71be30
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Android: Android
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
-----BEGIN CERTIFICATE-----
|
||||
MIIFozCCA4ugAwIBAgIDAYVKMA0GCSqGSIb3DQEBCwUAMIGAMQswCQYDVQQGEwJD
|
||||
TjEQMA4GA1UECAwHQmVpamluZzEMMAoGA1UECgwDTVNBMREwDwYDVQQLDAhPQUlE
|
||||
X1NESzEeMBwGA1UEAwwVY29tLmJ1bi5taWl0bWRpZC5zaWduMR4wHAYJKoZIhvcN
|
||||
AQkBFg9tc2FAY2FpY3QuYWMuY24wHhcNMjUxMDI2MTQxMTEwWhcNMjYxMDI3MTQx
|
||||
MTEwWjCBlDELMAkGA1UEBhMCQ04xEDAOBgNVBAgMB0JlaWppbmcxEDAOBgNVBAcM
|
||||
B0JlaWppbmcxGjAYBgNVBAoMEWh1b2VyZ3Vvc2luYWx1b2RhMR4wHAYDVQQDDBVj
|
||||
b20ucGh4aC5vZmZpY2lhbC5ubGQxJTAjBgkqhkiG9w0BCQEWFm1heXVhbnpoZW5n
|
||||
QHBoeGhjZC5jb20wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCyGC9T
|
||||
3GW4BSsvnVNqb8+HlnjJAQvTPd7H13m1f945uUsUYYMaaZuICYjb4qefZUyQgyxB
|
||||
UTYfBOTpE7ccdcNoZgCp05RTng30zvkc4pjawJIkNeIC2NGlN7RquO4Ka/06LSuq
|
||||
5N+bfL78E0MwZAinoxSswf/yNY5R1LJ2b3I7BnW7rVSb7KbB0Q4z5KmuJ04hPVl7
|
||||
BtSdfVnvnRVTBDRm/cMgyupEl+CCGW8HUejzPHdHeHRK1rx7fuwQI+5jgMmDYRNX
|
||||
ZD4AmJ0vClurQR5avN2xOuxB8HbtB+lQitsNnQCvYY1Xp4s7FtfmT6JzDNQ//vRg
|
||||
XxYrOaVFfoY/ugrO+SfZtqej+mdKR3KgOaAA75t8zcJfM6WGrbPJl3xHc2bhD4kG
|
||||
wRkTAcHJ7WQOIrWz85CPCfIoYh8nZlBlsCNamJJh6Pl2nAtmnfMtDuYZJo/2QK6J
|
||||
/KFtywsYIekU6fiRsJaaunBf5sD9IxbvJcRRB+HRCsySKYEg8z7Xlh90fHimfUgT
|
||||
0Gt44/o+nzPh7Cq9Ay6dWtMxYFx78Z1epapOJdUNpZWIET8wQHriJmbJ18TlidGR
|
||||
AW85kW2ka2cr4u6Ed68JQa+nN+kbS0dDeuvOBGOsiqqCy5aeA0oz88HRWWIga02P
|
||||
LTZbEs4PdYrNzHWCISjnk34KpwwxYJUn6Zpy1wIDAQABoxAwDjAMBgNVHRMBAf8E
|
||||
AjAAMA0GCSqGSIb3DQEBCwUAA4ICAQCIbUS1jk++1oVVoXf7gzgmopWJIFa6hn0L
|
||||
nHjQciYMAmTcKY1WmaCAZm5XRSmqmSyroinCwsE6Be7prP7vzFxL1r03EPIEbo+x
|
||||
HUD83RVOgky4tBBG8+lZ7mci2jDjH/7apTq9NLz3V0vUf5iqG5cOJ1k3HsJNvrAv
|
||||
n3dN7upq6lbh9RjaiY5URan3sTzvjx9085alrsIjjQ8fDCEcjhcssuVUrYpe7P4d
|
||||
C/LBmaen7uMVu3h7nM0+SppyR6070J/lPlnQSM8mTCNLDdEjg1owKwLyOs5TNe3Z
|
||||
FMgkyFaWDXyFV1gOp1ypI6MiUF2kT0VlBlvu1duygN9JAt6p4+QRHWwc2/uKApaz
|
||||
SX5rQWnuIcxWVNrde7Smjkif9iINrfO+3DJdEZxHhhCPmi3uHikoJDuoaq+ZBJEI
|
||||
nLTXo4NzWqYjmIkPkqO5vx7GwCdY4U0KyNjvMExu86FxYKLewkN7ksPF18gia79V
|
||||
sg7fdUR6nnqu/qnHImGuvTIbWS342ZyJ3k6MIYF2YjYwGU6tPajFzb8rIEdbZHAb
|
||||
5iZbwzUdmwWJIyK9U/+/mlFlX5evji2v3CIWC6F60FCuH9ZdQmja0Fq496VS8uYP
|
||||
i5cLeFU6B39fOceoRIg53fhmK4iVcGu7awxkNb/J6yUp7bbOHdHyVH/E3XT0SgIY
|
||||
W6RPsf5tIw==
|
||||
-----END CERTIFICATE-----
|
||||
|
|
@ -4,7 +4,7 @@ Define_list:
|
|||
- BI_PHXH # BI
|
||||
|
||||
# 应用包名
|
||||
PackageName: "com.phxh.nlddev"
|
||||
PackageName: "com.phxh.official.nld"
|
||||
|
||||
# 是否海外渠道
|
||||
IsOversea: false
|
||||
|
|
@ -43,12 +43,14 @@ TalkingData:
|
|||
channel: "StableDev" # 上报渠道
|
||||
|
||||
Packages:
|
||||
- CrashSight@latest
|
||||
# - CrashSight@latest
|
||||
- Poco@latest
|
||||
- WXPay@1.0.0
|
||||
- AliPay@0.0.1
|
||||
- ThinkingData@1.0.0
|
||||
- TalkingData@0.0.1
|
||||
|
||||
- AIhelper@latest
|
||||
- DeviceHelper@0.0.1
|
||||
|
||||
# 爱加密配置
|
||||
Encryption:
|
||||
|
|
@ -0,0 +1,65 @@
|
|||
战斗员ID,敌人ID,NPCID,载具ID,武器ID,视频索引,,,,
|
||||
1,1,N00003,1,0,Loading/Loading_Normal,,,,
|
||||
2,2,N00006,2,1,PV/First_PV,,,,
|
||||
3,3,N00009,3,2,PV/Second_PV,,,,
|
||||
4,4,N00010,4,3,Raffle/Raffle_Blue,,,,
|
||||
5,5,N00011,8,4,Raffle/Raffle_BlueBroken,,,,
|
||||
6,6,N00013,9,5,Raffle/Raffle_Red,,,,
|
||||
8,7,N00014,10,6,Story/Story_1_11_0,,,,
|
||||
9,8,N00015,11,7,Story/Story_1_11_1,,,,
|
||||
10,9,N00016,12,8,Story/Story_1_11_2,,,,
|
||||
11,10,,13,11,,,,,
|
||||
12,11,,17,12,,,,,
|
||||
13,12,,19,13,,,,,
|
||||
14,13,,20,14,,,,,
|
||||
16,14,,21,15,,,,,
|
||||
22,15,,22,16,,,,,
|
||||
24,16,,23,17,,,,,
|
||||
25,17,,24,18,,,,,
|
||||
27,18,,25,19,,,,,
|
||||
28,19,,26,20,,,,,
|
||||
30,20,,27,21,,,,,
|
||||
31,36,,28,22,,,,,
|
||||
32,37,,29,23,,,,,
|
||||
33,,,30,24,,,,,
|
||||
34,,,31,25,,,,,
|
||||
35,,,32,26,,,,,
|
||||
51,,,35,27,,,,,
|
||||
52,,,36,28,,,,,
|
||||
53,,,37,29,,,,,
|
||||
54,,,38,30,,,,,
|
||||
61,,,39,31,,,,,
|
||||
62,,,40,32,,,,,
|
||||
63,,,41,33,,,,,
|
||||
64,,,42,34,,,,,
|
||||
78,,,48,35,,,,,
|
||||
81,,,50,36,,,,,
|
||||
83,,,53,37,,,,,
|
||||
84,,,54,38,,,,,
|
||||
87,,,56,39,,,,,
|
||||
93,,,57,40,,,,,
|
||||
94,,,58,41,,,,,
|
||||
96,,,61,42,,,,,
|
||||
98,,,62,43,,,,,
|
||||
103,,,63,44,,,,,
|
||||
107,,,64,45,,,,,
|
||||
,,,65,46,,,,,
|
||||
,,,66,48,,,,,
|
||||
,,,80,49,,,,,
|
||||
,,,82,54,,,,,
|
||||
,,,,57,,,,,
|
||||
,,,,58,,,,,
|
||||
,,,,59,,,,,
|
||||
,,,,60,,,,,
|
||||
,,,,61,,,,,
|
||||
,,,,62,,,,,
|
||||
,,,,63,,,,,
|
||||
,,,,64,,,,,
|
||||
,,,,65,,,,,
|
||||
,,,,66,,,,,
|
||||
,,,,67,,,,,
|
||||
,,,,68,,,,,
|
||||
,,,,71,,,,,
|
||||
,,,,72,,,,,
|
||||
,,,,73,,,,,
|
||||
,,,,74,,,,,
|
||||
|
|
|
@ -8,15 +8,19 @@ def CHANNEL_PARAM = params.Channel
|
|||
def DEBUGBUILD_PARAM = params.DebugBuild
|
||||
def HOTUPDATE_PARAM = params.Enable_Hot_Update
|
||||
def AAB_PARAM = params.AAB
|
||||
def OBFUZ = params.Obfuz
|
||||
def DEV_PARAM = IsDev()
|
||||
def ANDROIDKEYSTORE = "/Users/mayuanzheng/key/phxh_android.keystore"
|
||||
def ANDROIDKEYALIAS = "avery"
|
||||
def UPLOAD_SYMBOL = params.UploadSymbol
|
||||
|
||||
// Jenkins 归档地址
|
||||
def ARTIFACT_URL = "http://${env.PHXH_BUILDER_IP_ADDRESS}:8080/job/${env.JOB_NAME}/"
|
||||
|
||||
// 版本号 根据项目获取
|
||||
def VERSION_PARAM
|
||||
def VERSION_PARAM = "尚未获取" // 版本号 根据项目获取
|
||||
def OSS_UPLOAD_PATH_PARAM // 上传地址,根据项目获取
|
||||
def ASSETS_END_POINT_PARAM // Assets endPoint,根据项目获取
|
||||
|
||||
// 构建地址
|
||||
def BUILD_PATH
|
||||
// 日志地址
|
||||
|
|
@ -25,6 +29,12 @@ def log_path
|
|||
def SendMessageToWechat(message){
|
||||
if (!message) {
|
||||
return }
|
||||
// 添加调试信息:打印消息内容和长度
|
||||
echo "[DEBUG] SendMessageToWechat called"
|
||||
echo "[DEBUG] Message length: ${message.length()}"
|
||||
echo "[DEBUG] Message content: ${message}"
|
||||
echo "[DEBUG] Message class: ${message.getClass().getName()}"
|
||||
|
||||
def INNER_ROBOT="https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=3c92758c-1128-4931-ac8d-f19669d7befe"
|
||||
sh "chmod +x $WORKSPACE/Tool/build_tools/send_wechat_message.sh"
|
||||
sh "$WORKSPACE/Tool/build_tools/send_wechat_message.sh '${INNER_ROBOT}' '@all' '${message}'"
|
||||
|
|
@ -54,13 +64,17 @@ def GetRemote(){
|
|||
else if('Official' == params.Channel)
|
||||
return 'dev'
|
||||
else if('TapTap' == params.Channel)
|
||||
return 'tap_release'
|
||||
return 'release/tap'
|
||||
else if('ReleaseTest' == params.Channel)
|
||||
return 'dev'
|
||||
else if('Test' == params.Channel)
|
||||
return 'test'
|
||||
else if('Stable_Dev' == params.Channel)
|
||||
return "release/stable_dev"
|
||||
else if('Bilibili' == params.Channel)
|
||||
return "release/bilibili"
|
||||
else
|
||||
return 'stable_dev';
|
||||
return 'dev';
|
||||
}
|
||||
|
||||
def IsDev() {
|
||||
|
|
@ -68,42 +82,104 @@ def IsDev() {
|
|||
return true;
|
||||
else if('ReleaseTest' == params.Channel)
|
||||
return true;
|
||||
else if('StableDev' == params.Channel)
|
||||
return true;
|
||||
// Stable_Dev 使用 release 配置路径,不再作为 Dev 环境
|
||||
// else if('Stable_Dev' == params.Channel)
|
||||
// return true;
|
||||
else if('Test' == params.Channel)
|
||||
return true;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
def CheckRemoteBranchExists(repoUrl, branchName) {
|
||||
def result = sh(
|
||||
script: "git ls-remote --heads ${repoUrl} refs/heads/${branchName}",
|
||||
returnStdout: true
|
||||
).trim()
|
||||
|
||||
if (result == '') {
|
||||
echo "警告: 远程分支 ${branchName} 不存在于 ${repoUrl}"
|
||||
return false
|
||||
}
|
||||
|
||||
echo "远程分支 ${branchName} 存在"
|
||||
return true
|
||||
}
|
||||
|
||||
pipeline {
|
||||
agent any
|
||||
stages {
|
||||
stage('拉最新工程') {
|
||||
steps {
|
||||
script {
|
||||
try {
|
||||
def currentPath = sh(script: 'pwd', returnStdout: true).trim()
|
||||
echo "cd ${currentPath}"
|
||||
|
||||
// 如果仓库存在及还原脚本存在,进行子模块还原
|
||||
// 1. 还原子模块修改
|
||||
def gitDirExists = sh(script: '[ -d ".git" ] && echo "true" || echo "false"', returnStdout: true).trim()
|
||||
def scriptPathExists = fileExists("${WORKSPACE}/Tool/build_tools/git_revert_modules_modification.sh")
|
||||
if (gitDirExists == 'true' && scriptPathExists)
|
||||
{
|
||||
if (gitDirExists == 'true' && scriptPathExists) {
|
||||
sh "chmod +x $WORKSPACE/Tool/build_tools/git_revert_modules_modification.sh"
|
||||
sh "$WORKSPACE/Tool/build_tools/git_revert_modules_modification.sh $WORKSPACE"
|
||||
}
|
||||
|
||||
// 2. 拉取主项目代码
|
||||
def repoUrl = 'http://1.14.122.170:3000/PHXH/NLDClient.git'
|
||||
def remote = GetRemote();
|
||||
echo "[DEBUG] GetRemote() 返回值: [${remote}]"
|
||||
echo "获取到分支名字:${remote}"
|
||||
// 检查远程分支是否存在
|
||||
if (!CheckRemoteBranchExists(repoUrl, remote)) {
|
||||
echo "[DEBUG] 分支不存在,准备发送通知"
|
||||
def message = "【${PLATFORM_PARAM}】【${VERSION_PARAM}】【Release】【${CHANNEL_PARAM}】远程分支不存在,使用默认分支 stable_dev"
|
||||
SendMessageToWechat(message)
|
||||
remote = 'stable_dev' // 回退到默认分支
|
||||
}
|
||||
|
||||
echo "拉取分支:${remote}"
|
||||
checkout scmGit(branches: [[name: "*/${remote}"]],
|
||||
extensions: [checkoutOption(60), lfs(), cloneOption(noTags: false, reference: '', shallow: false, timeout: 120), submodule(recursiveSubmodules: true, reference: '', timeout: 1200)],
|
||||
userRemoteConfigs: [[url: 'http://1.14.122.170:3000/PHXH/NLDClient.git']])
|
||||
checkout scmGit(
|
||||
branches: [[name: "*/${remote}"]],
|
||||
extensions: [
|
||||
checkoutOption(60),
|
||||
lfs(),
|
||||
cloneOption(noTags: false, reference: '', shallow: false, timeout: 120),
|
||||
submodule(recursiveSubmodules: true, reference: '', timeout: 1200)
|
||||
],
|
||||
userRemoteConfigs: [[url: repoUrl]]
|
||||
)
|
||||
|
||||
// 3. 删除旧 GamePlay_Dll 文件夹
|
||||
def gameplayDllPath = "${WORKSPACE}/ProjectNLD/Assets/Code/Scripts/GamePlay_Dll"
|
||||
sh "if [ -d '${gameplayDllPath}' ]; then rm -rf '${gameplayDllPath}'; fi"
|
||||
|
||||
// 4. 拉取 GamePlay 仓库
|
||||
def gameplayTargetPath = "${WORKSPACE}/ProjectNLD/Assets/Code/Scripts/GamePlay"
|
||||
def gameplayUrl = "http://1.14.122.170:3000/PHXH/GamePlay.git"
|
||||
def branch = GetRemote();
|
||||
echo "[DEBUG] GamePlay GetRemote() 返回值: [${branch}]"
|
||||
// 检查远程分支是否存在
|
||||
if (!CheckRemoteBranchExists(gameplayUrl, branch)) {
|
||||
echo "[DEBUG] GamePlay分支不存在,准备发送通知"
|
||||
def message = "【${PLATFORM_PARAM}】【${VERSION_PARAM}】【Release】【${CHANNEL_PARAM}】GamePlay远程分支不存在,使用默认分支 stable_dev"
|
||||
SendMessageToWechat(message)
|
||||
branch = 'stable_dev' // 回退到默认分支
|
||||
}
|
||||
|
||||
sh "chmod +x ${WORKSPACE}/Tool/build_tools/git_pull_gameplay.sh"
|
||||
sh "$WORKSPACE/Tool/build_tools/git_pull_gameplay.sh ${gameplayTargetPath} ${gameplayUrl} ${branch}"
|
||||
} catch (err) {
|
||||
def message = "【${PLATFORM_PARAM}】【${VERSION_PARAM}】【Release】【${CHANNEL_PARAM}】拉最新工程失败"
|
||||
SendMessageToWechat(message)
|
||||
error("Failure of the '拉最新工程' stage")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
stage('获取项目配置') {
|
||||
steps {
|
||||
script {
|
||||
try {
|
||||
// 将项目相关配置复制到打包路径下
|
||||
sh "chmod +x $WORKSPACE/Tool/build_tools/copy_env.sh"
|
||||
sh "$WORKSPACE/Tool/build_tools/copy_env.sh $WORKSPACE/Tool/build_env"
|
||||
|
|
@ -111,25 +187,89 @@ pipeline {
|
|||
// 将打包机器相关配置复制到打包路径下
|
||||
echo "copy local env file to $WORKSPACE"
|
||||
sh "cp /Users/mayuanzheng/Builds/local_env.sh $WORKSPACE/Tool/build_tools/"
|
||||
} catch (err) {
|
||||
def message = "【${PLATFORM_PARAM}】【${VERSION_PARAM}】【Release】【${CHANNEL_PARAM}】获取项目配置失败"
|
||||
SendMessageToWechat(message)
|
||||
error("Failure of the '获取项目配置' stage")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
stage('修改渠道文件夹') {
|
||||
steps {
|
||||
script {
|
||||
try {
|
||||
// 先安装pyyaml
|
||||
sh "pip3 install pyyaml --user"
|
||||
// 调用python脚本修改渠道文件夹
|
||||
echo "根据 [${params.Channel}] 渠道修改文件夹"
|
||||
def channelPath = "${WORKSPACE}/Tool/Channels/${CHANNEL_PARAM}"
|
||||
def sdkPath = "${WORKSPACE}/Tool/sdk_packages"
|
||||
echo "Channel Path: ${channelPath}"
|
||||
echo "SDK Path: ${sdkPath}"
|
||||
// python脚本: Tool/py_tools/PreHandle.py <sdk_path> <channel_path>
|
||||
sh "chmod +x $WORKSPACE/Tool/py_tools/PreHandle.py"
|
||||
// 使用 returnStatus 获取脚本的退出码
|
||||
def pythonResult = sh(script: "python3 $WORKSPACE/Tool/py_tools/PreHandle.py ${sdkPath} ${channelPath}", returnStatus: true)
|
||||
if (pythonResult != 0) {
|
||||
def message = "【${PLATFORM_PARAM}】【${VERSION_PARAM}】【Release】【${CHANNEL_PARAM}】修改渠道文件夹失败: pythonResult=${pythonResult}"
|
||||
SendMessageToWechat(message)
|
||||
error("Failure of the '修改渠道文件夹' stage")
|
||||
}
|
||||
} catch (err) {
|
||||
def message = "【${PLATFORM_PARAM}】【${VERSION_PARAM}】【Release】【${CHANNEL_PARAM}】根据渠道修改工程失败"
|
||||
SendMessageToWechat(message)
|
||||
error("Failure of the '修改渠道文件夹' stage")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
stage('根据渠道修改工程') {
|
||||
steps {
|
||||
script {
|
||||
try {
|
||||
echo "根据 [${params.Channel}] 渠道修改工程"
|
||||
sh "chmod +x $WORKSPACE/Tool/build_tools/modify_project_by_channel.sh"
|
||||
sh "$WORKSPACE/Tool/build_tools/modify_project_by_channel.sh $WORKSPACE ${CHANNEL_PARAM}"
|
||||
} catch (err) {
|
||||
def message = "【${PLATFORM_PARAM}】【${VERSION_PARAM}】【Release】【${CHANNEL_PARAM}】根据渠道修改工程失败"
|
||||
SendMessageToWechat(message)
|
||||
error("Failure of the '根据渠道修改工程' stage")
|
||||
}
|
||||
}
|
||||
stage('获取打包版本') {
|
||||
}
|
||||
}
|
||||
stage('根据渠道获取相关参数') {
|
||||
steps {
|
||||
script {
|
||||
echo "获取 [${params.Channel}] 渠道版本"
|
||||
def playersettings = "$WORKSPACE/Tool/Channels/$CHANNEL_PARAM/ChannelSetting.txt"
|
||||
sh "chmod +x $WORKSPACE/Tool/build_tools/get_build_version.sh"
|
||||
VERSION_PARAM = sh(script: "$WORKSPACE/Tool/build_tools/get_build_version.sh $playersettings", returnStdout: true).trim()
|
||||
try {
|
||||
echo "根据 [${params.Channel}] 渠道获取相关参数"
|
||||
def playersettings = "${WORKSPACE}/Tool/Channels/${CHANNEL_PARAM}/ChannelSetting.yaml"
|
||||
// 1. 读取并解析 YAML,得到一个 Groovy Map
|
||||
def cfg = readYaml(file: playersettings)
|
||||
// 2. 提取字段 根据 YAML 键名取值
|
||||
VERSION_PARAM = (cfg?.Version ?: '').trim()
|
||||
OSS_UPLOAD_PATH_PARAM = (cfg?.OssRemoteUploadPath ?: '').trim()
|
||||
ASSETS_END_POINT_PARAM = (cfg?.AssetsEndPoint ?: '').trim()
|
||||
// 3.其他数据
|
||||
BUILD_PATH = "Builds/$CHANNEL_PARAM/$PLATFORM_PARAM/$VERSION_PARAM"
|
||||
log_path="$BUILD_PATH/build.log"
|
||||
echo "获取到的版本是 $VERSION_PARAM"
|
||||
|
||||
// 添加调试信息
|
||||
echo "[DEBUG] VERSION_PARAM: [${VERSION_PARAM}]"
|
||||
echo "[DEBUG] OSS_UPLOAD_PATH_PARAM: [${OSS_UPLOAD_PATH_PARAM}]"
|
||||
echo "[DEBUG] ASSETS_END_POINT_PARAM: [${ASSETS_END_POINT_PARAM}]"
|
||||
echo "[DEBUG] CHANNEL_PARAM: [${CHANNEL_PARAM}]"
|
||||
echo "[DEBUG] PLATFORM_PARAM: [${PLATFORM_PARAM}]"
|
||||
|
||||
echo "获取到的版本是 ${VERSION_PARAM}, 获取到的上传地址是 ${OSS_UPLOAD_PATH_PARAM},获取到的assets-oss-endpoint是 ${ASSETS_END_POINT_PARAM}"
|
||||
} catch (err) {
|
||||
echo "[DEBUG] 捕获到异常: ${err}"
|
||||
echo "[DEBUG] 异常类型: ${err.getClass().getName()}"
|
||||
def message = "【${PLATFORM_PARAM}】【${VERSION_PARAM}】【Release】【${CHANNEL_PARAM}】根据渠道获取相关参数失败"
|
||||
SendMessageToWechat(message)
|
||||
error("Failure of the '根据渠道获取相关参数' stage")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -142,41 +282,157 @@ pipeline {
|
|||
if(params.Debug_AllLocal == true)
|
||||
PROFILE_PARAM="AllLocal"
|
||||
|
||||
def parse_log = "../../$log_path"
|
||||
if(params.Build_InitApp == false){
|
||||
build_result=sh(script: "$WORKSPACE/Tool/build_tools/hot_update.sh ${VERSION_PARAM} ${PLATFORM_PARAM} ${PROFILE_PARAM} ${CHANNEL_PARAM} ${HOTUPDATE_PARAM} ${ANDROIDKEYSTORE} ${ANDROIDKEYALIAS}", returnStatus: true, returnStdout: false)
|
||||
build_result=sh(script: "$WORKSPACE/Tool/build_tools/hot_update.sh ${VERSION_PARAM} ${PLATFORM_PARAM} ${PROFILE_PARAM} ${CHANNEL_PARAM} ${HOTUPDATE_PARAM} ${DEBUGBUILD_PARAM} ${ANDROIDKEYSTORE} ${ANDROIDKEYALIAS} ${OBFUZ}", returnStatus: true, returnStdout: false)
|
||||
log_path="$BUILD_PATH/UpdatePreviousBuild.log"
|
||||
}
|
||||
else
|
||||
build_result=sh(script: "$WORKSPACE/Tool/build_tools/build_unity.sh ${VERSION_PARAM} ${PLATFORM_PARAM} ${PROFILE_PARAM} ${CHANNEL_PARAM} ${HOTUPDATE_PARAM} ${DEBUGBUILD_PARAM} ${AAB_PARAM} ${DEV_PARAM} ${ANDROIDKEYSTORE} ${ANDROIDKEYALIAS}", returnStatus: true, returnStdout: false)
|
||||
build_result=sh(script: "$WORKSPACE/Tool/build_tools/build_unity.sh ${VERSION_PARAM} ${PLATFORM_PARAM} ${PROFILE_PARAM} ${CHANNEL_PARAM} ${HOTUPDATE_PARAM} ${DEBUGBUILD_PARAM} ${AAB_PARAM} ${DEV_PARAM} ${ANDROIDKEYSTORE} ${ANDROIDKEYALIAS} ${OBFUZ} ${UPLOAD_SYMBOL}", returnStatus: true, returnStdout: false)
|
||||
|
||||
// 打包失败
|
||||
if(build_result != 0)
|
||||
{
|
||||
// 归档并分析日志
|
||||
archiveArtifacts artifacts: "$log_path" , followSymlinks: false
|
||||
def parse_log = "../../$log_path"
|
||||
ParseBuildLogError(parse_log)
|
||||
|
||||
def message = "【${PLATFORM_PARAM}】【${VERSION_PARAM}】【Release】【${CHANNEL_PARAM}】构建失败"
|
||||
SendMessageToWechat(message)
|
||||
error("Failure of the '打包' stage")
|
||||
}
|
||||
// 保底捕捉一次 Build Finished, Result: Failure.
|
||||
else{
|
||||
sh "chmod +x $WORKSPACE/Tool/build_tools/check_unity_build_result.sh"
|
||||
def check_result = sh(script: "sh $WORKSPACE/Tool/build_tools/check_unity_build_result.sh ${parse_log}", returnStatus: true)
|
||||
if (check_result != 0) {
|
||||
// 归档日志
|
||||
archiveArtifacts artifacts: "$log_path" , followSymlinks: false
|
||||
def message = "【${PLATFORM_PARAM}】【${VERSION_PARAM}】【Release】【${CHANNEL_PARAM}】构建失败 日志捕捉到 Build Finished, Result: Failure."
|
||||
SendMessageToWechat(message)
|
||||
error("Failure of the '打包' stage")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
stage('加密应用') {
|
||||
steps {
|
||||
script {
|
||||
// 只在构建完整应用时进行加密
|
||||
echo "params.Build_InitApp: ${params.Build_InitApp}"
|
||||
echo "WORKSPACE: ${WORKSPACE}"
|
||||
if (params.Build_InitApp == true) {
|
||||
try {
|
||||
// 确保CHANNEL_PARAM是正确的渠道名称
|
||||
def actualChannel = CHANNEL_PARAM ?: "Dev"
|
||||
echo "Actual channel: ${actualChannel}"
|
||||
|
||||
// 构建YAML文件路径,添加备选路径
|
||||
def playersettings = "${WORKSPACE}/Tool/Channels/${actualChannel}/ChannelSetting.yaml"
|
||||
def fallbackPlayersettings = "d:/UnityProjects/NLDClient/Tool/Channels/${actualChannel}/ChannelSetting.yaml"
|
||||
|
||||
// 选择存在的YAML文件路径
|
||||
def finalPlayersettings
|
||||
if (fileExists(playersettings)) {
|
||||
finalPlayersettings = playersettings
|
||||
} else if (fileExists(fallbackPlayersettings)) {
|
||||
finalPlayersettings = fallbackPlayersettings
|
||||
} else {
|
||||
echo "Warning: Both YAML paths not found. Using default: ${playersettings}"
|
||||
finalPlayersettings = playersettings
|
||||
}
|
||||
|
||||
// 添加调试信息
|
||||
echo "playersettings path: ${finalPlayersettings}"
|
||||
echo "File exists: ${fileExists(finalPlayersettings)}"
|
||||
|
||||
// 读取YAML文件,添加错误处理
|
||||
def cfg
|
||||
try {
|
||||
cfg = readYaml(file: finalPlayersettings)
|
||||
echo "YAML content: ${cfg}"
|
||||
} catch (yamlErr) {
|
||||
echo "Error reading YAML: ${yamlErr.getMessage()}"
|
||||
// 尝试使用另一种方式读取YAML
|
||||
def yamlContent = readFile(finalPlayersettings)
|
||||
echo "Raw YAML content: ${yamlContent}"
|
||||
error "Failed to parse YAML file"
|
||||
}
|
||||
|
||||
// 读取加密相关配置
|
||||
def encryptConfig = cfg?.Encryption
|
||||
echo "encryptConfig: ${encryptConfig}"
|
||||
if (encryptConfig) {
|
||||
def apiUrl = (encryptConfig?.ApiUrl ?: '').trim()
|
||||
def strategyName = (encryptConfig?.StrategyName ?: '').trim()
|
||||
def username = (encryptConfig?.Username ?: '').trim()
|
||||
def password = (encryptConfig?.Password ?: '').trim()
|
||||
def toolPath = (encryptConfig?.ToolPath ?: '').trim()
|
||||
def needSign = (encryptConfig?.NeedSign ?: true)
|
||||
def signName = (encryptConfig?.SignName ?: '').trim()
|
||||
def signVersion = (encryptConfig?.SignVersion ?: 4)
|
||||
def retryCount = (encryptConfig?.RetryCount ?: 3)
|
||||
|
||||
// 构建APK路径
|
||||
def apkPath = "$WORKSPACE/Builds/$CHANNEL_PARAM/$PLATFORM_PARAM/$VERSION_PARAM/$APK_NAME"
|
||||
def outputDir = "$WORKSPACE/Builds/$CHANNEL_PARAM/$PLATFORM_PARAM/$VERSION_PARAM"
|
||||
|
||||
// 替换WORKSPACE变量
|
||||
toolPath = toolPath.replace('${WORKSPACE}', WORKSPACE)
|
||||
|
||||
// 构建加密命令
|
||||
def encryptCmd = "java -jar '${toolPath}' -t apk -u '${apiUrl}' -r '${username}' -w '${password}' -k '${apkPath}' -s '${strategyName}' -d '${outputDir}' -n '${APK_NAME}' -y ${retryCount}"
|
||||
|
||||
// 添加签名参数
|
||||
if (needSign) {
|
||||
encryptCmd += " -i true -g '${signName}' -v ${signVersion}"
|
||||
}
|
||||
|
||||
echo "开始加密应用..."
|
||||
echo "APK路径: ${apkPath}"
|
||||
echo "加密策略: ${strategyName}"
|
||||
echo "执行命令: ${encryptCmd}"
|
||||
|
||||
// 执行加密命令
|
||||
def encryptResult = sh(script: encryptCmd, returnStatus: true, returnStdout: false)
|
||||
|
||||
if (encryptResult != 0) {
|
||||
def message = "【${PLATFORM_PARAM}】【${VERSION_PARAM}】【Release】【${CHANNEL_PARAM}】应用加密失败"
|
||||
SendMessageToWechat(message)
|
||||
error("Failure of the '加密应用' stage")
|
||||
} else {
|
||||
echo "应用加密成功!加密后的APK已覆盖原APK。"
|
||||
}
|
||||
} else {
|
||||
echo "警告:未在渠道配置中找到加密相关配置,跳过加密步骤。"
|
||||
}
|
||||
} catch (err) {
|
||||
echo "[DEBUG] 加密应用异常"
|
||||
echo "[DEBUG] 异常信息: ${err}"
|
||||
echo "[DEBUG] 异常类型: ${err.getClass().getName()}"
|
||||
echo "[DEBUG] CHANNEL_PARAM: [${CHANNEL_PARAM}]"
|
||||
echo "[DEBUG] VERSION_PARAM: [${VERSION_PARAM}]"
|
||||
|
||||
def message = "【${PLATFORM_PARAM}】【${VERSION_PARAM}】【Release】【${CHANNEL_PARAM}】应用加密失败"
|
||||
SendMessageToWechat(message)
|
||||
error("Failure of the '加密应用' stage")
|
||||
}
|
||||
} else {
|
||||
echo "增量更新模式,跳过加密步骤。"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
stage('上传资源') {
|
||||
steps {
|
||||
script {
|
||||
sh "chmod +x $WORKSPACE/Tool/build_tools/upload_oss_dev.sh"
|
||||
sh "chmod +x $WORKSPACE/Tool/build_tools/upload_oss.sh"
|
||||
def asset_path="$WORKSPACE/ProjectNLD/ServerData/${PLATFORM_PARAM}"
|
||||
def upload_path="${CHANNEL_PARAM}/${PLATFORM_PARAM}/${VERSION_PARAM}"
|
||||
def upload_result
|
||||
if(DEV_PARAM)
|
||||
upload_result=sh(script: "$WORKSPACE/Tool/build_tools/upload_oss_dev.sh ${asset_path} ${upload_path}", returnStatus: true, returnStdout: false)
|
||||
else
|
||||
upload_result=sh(script: "$WORKSPACE/Tool/build_tools/upload_oss.sh ${asset_path} ${upload_path}", returnStatus: true, returnStdout: false)
|
||||
def upload_path="${OSS_UPLOAD_PATH_PARAM}/${CHANNEL_PARAM}/${PLATFORM_PARAM}/${VERSION_PARAM}"
|
||||
|
||||
sh "chmod +x $WORKSPACE/Tool/build_tools/upload_oss.sh"
|
||||
def upload_result=0
|
||||
upload_result = sh(script: "$WORKSPACE/Tool/build_tools/upload_oss.sh ${asset_path} ${upload_path} ${ASSETS_END_POINT_PARAM}", returnStatus: true, returnStdout: false)
|
||||
if(upload_result != 0)
|
||||
{
|
||||
def message = "【${PLATFORM_PARAM}】【${VERSION_PARAM}】【Release】【${CHANNEL_PARAM}】上传资源失败"
|
||||
|
|
@ -192,19 +448,17 @@ pipeline {
|
|||
// 增量更新不需要上传包体
|
||||
if (params.Build_InitApp == true){
|
||||
def apk_path="$WORKSPACE/Builds/$CHANNEL_PARAM/$PLATFORM_PARAM/$VERSION_PARAM/$APK_NAME"
|
||||
def upload_path="${CHANNEL_PARAM}/${PLATFORM_PARAM}"
|
||||
def upload_path_with_version="${CHANNEL_PARAM}/${PLATFORM_PARAM}/${VERSION_PARAM}"
|
||||
def upload_path="${OSS_UPLOAD_PATH_PARAM}/${CHANNEL_PARAM}/${PLATFORM_PARAM}/"
|
||||
def upload_path_with_version="${OSS_UPLOAD_PATH_PARAM}/${CHANNEL_PARAM}/${PLATFORM_PARAM}/${VERSION_PARAM}/"
|
||||
def upload_result=0
|
||||
def upload_result_with_version=0
|
||||
if(DEV_PARAM)
|
||||
{
|
||||
upload_result=sh(script: "$WORKSPACE/Tool/build_tools/upload_oss_dev.sh ${apk_path} ${upload_path}", returnStatus: true, returnStdout: false)
|
||||
upload_result_with_version=sh(script: "$WORKSPACE/Tool/build_tools/upload_oss_dev.sh ${apk_path} ${upload_path_with_version}", returnStatus: true, returnStdout: false)
|
||||
}
|
||||
else
|
||||
{
|
||||
upload_result=sh(script: "$WORKSPACE/Tool/build_tools/upload_oss.sh ${apk_path} ${upload_path}", returnStatus: true, returnStdout: false)
|
||||
upload_result_with_version=sh(script: "$WORKSPACE/Tool/build_tools/upload_oss.sh ${apk_path} ${upload_path_with_version}", returnStatus: true, returnStdout: false)
|
||||
|
||||
if(DEV_PARAM) {
|
||||
upload_result=sh(script: "$WORKSPACE/Tool/build_tools/upload_oss_dev.sh ${apk_path} ${upload_path} ${ASSETS_END_POINT_PARAM}", returnStatus: true, returnStdout: false)
|
||||
upload_result_with_version=sh(script: "$WORKSPACE/Tool/build_tools/upload_oss_dev.sh ${apk_path} ${upload_path_with_version} ${ASSETS_END_POINT_PARAM}", returnStatus: true, returnStdout: false)
|
||||
} else {
|
||||
upload_result=sh(script: "$WORKSPACE/Tool/build_tools/upload_oss.sh ${apk_path} ${upload_path} ${ASSETS_END_POINT_PARAM}", returnStatus: true, returnStdout: false)
|
||||
upload_result_with_version=sh(script: "$WORKSPACE/Tool/build_tools/upload_oss.sh ${apk_path} ${upload_path_with_version} ${ASSETS_END_POINT_PARAM}", returnStatus: true, returnStdout: false)
|
||||
}
|
||||
if(upload_result != 0 || upload_result_with_version != 0)
|
||||
{
|
||||
|
|
@ -219,12 +473,29 @@ pipeline {
|
|||
stage('上传符号表') {
|
||||
steps {
|
||||
script {
|
||||
if(UPLOAD_SYMBOL == true)
|
||||
{
|
||||
// 增量更新不需要上传符号表
|
||||
sh "chmod +x $WORKSPACE/Tool/build_tools/upload_symbol_file.sh"
|
||||
sh "chmod +x $WORKSPACE/Tool/build_tools/upload_symbol_file_firebase.sh"
|
||||
if (params.Build_InitApp == true){
|
||||
def playersettings = "$WORKSPACE/Tool/Channels/$CHANNEL_PARAM/ChannelSetting.txt"
|
||||
def playersettings = "${WORKSPACE}/Tool/Channels/${CHANNEL_PARAM}/ChannelSetting.yaml"
|
||||
def cfg = readYaml(file: playersettings)
|
||||
def symbol_path="$WORKSPACE/Builds/$CHANNEL_PARAM/$PLATFORM_PARAM/$VERSION_PARAM"
|
||||
def upload_result=sh(script: "$WORKSPACE/Tool/build_tools/upload_symbol_file.sh ${VERSION_PARAM} ${PLATFORM_PARAM} ${symbol_path} ${playersettings}", returnStatus: true, returnStdout: false)
|
||||
def upload_result=0
|
||||
if('GoogleDev' == params.Channel)
|
||||
{
|
||||
def FIREBASE_APP_ID = (cfg?.FIREBASE_APP_ID ?: '').trim()
|
||||
echo "获取到的Firebase App ID ${FIREBASE_APP_ID}"
|
||||
upload_result = sh(script: "$WORKSPACE/Tool/build_tools/upload_symbol_file_firebase.sh ${VERSION_PARAM} ${symbol_path} ${FIREBASE_APP_ID}", returnStatus: true, returnStdout: false)
|
||||
}
|
||||
else
|
||||
{
|
||||
def crashsightConfig = cfg?."CrashSight_${PLATFORM_PARAM}"
|
||||
def crashsightId = (crashsightConfig?.id ?: '').trim()
|
||||
def crashsightKey = (crashsightConfig?.key ?: '').trim()
|
||||
upload_result = sh(script: "$WORKSPACE/Tool/build_tools/upload_symbol_file.sh ${VERSION_PARAM} ${PLATFORM_PARAM} ${symbol_path} ${crashsightId} ${crashsightKey}", returnStatus: true, returnStdout: false)
|
||||
}
|
||||
if(upload_result != 0)
|
||||
{
|
||||
def message = "【${PLATFORM_PARAM}】【${VERSION_PARAM}】【Release】【${CHANNEL_PARAM}】上传符号表异常"
|
||||
|
|
@ -233,6 +504,7 @@ pipeline {
|
|||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}*/
|
||||
stage('归档') {
|
||||
steps {
|
||||
|
|
|
|||
Loading…
Reference in New Issue