【热更配置添加】新建悠谷渠道

master
gaoxin 2022-03-03 12:02:32 +08:00
parent 4cef17c639
commit d70a8d3c25
6 changed files with 197 additions and 0 deletions

View File

@ -0,0 +1,9 @@
主账号ID100014205298
用户名jladmin
登录密码Akdid#19uidu17a
bucket = 'internal-jieling-1302131159'
secret_id = "AKIDRJxLRFFzwcmiNlLzqPggdplPlrpVec2A"
secret_key = "zh8JDqJZYLq42j9NL2RYOyGI9kDOIGxN"
region = "ap-guangzhou"

View File

@ -0,0 +1,6 @@
账号未提供
bucket = 'jl-1253729609'
secret_id = "AKIDWrwlJbAMyOaYGjuzlHciZHkxve7K7Fp8"
secret_key = "B7mALGwOaXJrACyThjUzDArITNUMPFp9"
region = "ap-beijing"

View File

@ -0,0 +1,35 @@
# -*- coding: utf-8 -*-
import json
import sys
from tencentcloud.common import credential
from tencentcloud.common.profile.client_profile import ClientProfile
from tencentcloud.common.profile.http_profile import HttpProfile
from tencentcloud.common.exception.tencent_cloud_sdk_exception import TencentCloudSDKException
from tencentcloud.cdn.v20180606 import cdn_client, models
if sys.argv.__len__() == 2:
try:
path = sys.argv[1]
cred = credential.Credential("AKIDwhBYeT2LN8cqoa6ML2SbT5RVJq76pHSN", "f4C5h38vRhgPr2wZw2rPfeNpzsTord8M")
httpProfile = HttpProfile()
httpProfile.endpoint = "cdn.tencentcloudapi.com"
clientProfile = ClientProfile()
clientProfile.httpProfile = httpProfile
client = cdn_client.CdnClient(cred, "", clientProfile)
req = models.PurgePathCacheRequest()
params = {
"Paths": [ path ],
"FlushType": "flush"
}
req.from_json_string(json.dumps(params))
resp = client.PurgePathCache(req)
print(resp.to_json_string())
except TencentCloudSDKException as err:
print(err)
else:
print("params error!")

View File

@ -0,0 +1,131 @@
# -*- coding: utf-8 -*-
# Auther Wang Qi
# !usrbinenv python
# encoding utf-8
import os
import sys
import base64
import hashlib
import requests
import subprocess
import urllib3
import logging
import time
import random
import argparse
import json
from threading import Thread, current_thread
from concurrent.futures import ProcessPoolExecutor
from qcloud_cos import CosConfig
from qcloud_cos import CosS3Client
# url = "http://jl.tyu89.wang/" + cos_object_key
# print(url)
#self.flushurl(url)
# def flushurl(self,url)
# keydict = {
# 'Action' 'RefreshCdnUrl',
# 'Timestamp' str(int(time.time())),
# 'Nonce' str(int(random.random() 1000)),
# 'SecretId' jlrg.secret_id,
# 'urls.0' url
# }
# return keydict
def upload_file_to_txy_cos(self, path, file):
file = file.replace("\\", "/")
path = path.replace("\\", "/")
local_file_path = path + file
print(local_file_path)
cos_object_key = self.cdn_sub_dir + "/" + self.platform +"/" + file
print(cos_object_key)
response = self.client.upload_file(
Bucket=self.bucket,
LocalFilePath=local_file_path,
Key=cos_object_key,
PartSize=1,
MAXThread=10,
EnableMD5=False
)
print(response['ETag'])
class Cos_Upload():
logging.basicConfig(level=logging.INFO, stream=sys.stdout)
def __init__(self, *args):
abDir = args[0]
settingDir = args[1]
changeVersion = args[2]
isThread = "1"
if args.__len__() > 3:
isThread = args[3]
self.init(abDir, settingDir, changeVersion, isThread)
def init(self, abDir, settingDir, changeVersion, isThread):
self.settingFile = "Setting.txt"
self.configFile = "config.txt"
self.versionFile = "version.txt"
self.fileList = []
self.setting_dir = abDir + "/" + settingDir
self.ab_dir = self.setting_dir
self.change_version = changeVersion
self.change_file = self.setting_dir + "/__HotFixLog/" + changeVersion + ".log"
self.loadSetting()
self.IsThread = isThread
# cdn config
self.bucket = '648sy-tcx-1251752472'
self.secret_id = "AKIDwhBYeT2LN8cqoa6ML2SbT5RVJq76pHSN"
self.secret_key = "f4C5h38vRhgPr2wZw2rPfeNpzsTord8M"
self.region = "ap-beijing"
self.config = CosConfig(Region=self.region, SecretId=self.secret_id, SecretKey=self.secret_key, Token=None, Scheme='https')
self.client = CosS3Client(self.config)
def loadSetting(self):
settingContent = open(self.setting_dir +"/"+ self.settingFile, "rb")
settingJson = json.load(settingContent)
self.cdn_sub_dir = settingJson["dir"]
self.platform = settingJson["platform"]
def get_all_file(self):
fo = open(self.change_file, "r")
files = fo.readlines()
#print(files)
for f in files:
file = f.strip()
self.fileList.append(file)
return self.fileList
def up(self):
filelist = self.get_all_file()
if self.IsThread == "1":
pool = ProcessPoolExecutor(4)
for file in filelist:
pool.submit(upload_file_to_txy_cos, self, self.ab_dir + "/" + self.platform + "/", file)
pool.submit(upload_file_to_txy_cos, self, self.setting_dir +"/", self.configFile)
pool.submit(upload_file_to_txy_cos, self, self.setting_dir +"/", self.versionFile)
else:
for file in filelist:
upload_file_to_txy_cos(self, self.ab_dir + "/" + self.platform + "/", file)
upload_file_to_txy_cos(self, self.setting_dir +"/", self.configFile)
upload_file_to_txy_cos(self, self.setting_dir +"/", self.versionFile)
if __name__ == '__main__':
if sys.argv.__len__() == 4:
t = Cos_Upload(sys.argv[1], sys.argv[2], sys.argv[3])
t.up()
elif sys.argv.__len__() == 5:
t = Cos_Upload(sys.argv[1], sys.argv[2], sys.argv[3], sys.argv[4])
t.up()
else:
print("params error!")
# if __name__ == '__main__':
# z = Cos_Upload("D:/HotFix/Root/mht_china/local", "cdn_v3", 'version_1')
# z.up()

View File

@ -0,0 +1,10 @@
依赖python 2.7
安装多线程库
pip install futures
安装 腾讯云 cosclient
pip install cos-python-sdk-v5
安装 tencentcloud-sdk-python
pip install tencentcloud-sdk-python

View File

@ -0,0 +1,6 @@
账号未提供
bucket = '648sy-tcx-1251752472'
secret_id = "AKIDwhBYeT2LN8cqoa6ML2SbT5RVJq76pHSN"
secret_key = "f4C5h38vRhgPr2wZw2rPfeNpzsTord8M"
region = "ap-beijing"