Browse Source

fix: ci

test
Your Name 2 years ago
parent
commit
762e01c53d
  1. 48
      .drone.yml
  2. 69
      iot_upload.py

48
.drone.yml

@ -80,30 +80,32 @@ steps:
- makensis Sources/nbn.nsi
- ls Sources/Setup.exe
- du -sh Sources/Setup.exe
when:
branch:
- master
# - name: 上传zip到iot正式接口platformProgramAdd
# pull: if-not-exists
# image: registry.cn-hangzhou.aliyuncs.com/qmiot/init:apisix-init-base
# environment:
# url_for_iotplatform: 'http://192.168.0.11:31667'
# url_for_iotfile: 'http://192.168.0.11:31666'
# logo: '/drone/src/logo.jpg'
# cdn_url: 'https://qianmu-iot.1000my.com'
# # genre: "Samsung"
# commands:
# - export isiot="True" # 要不要传iot
# - export name="导视_正式版" # 应用名称(自行填写)
# - export version=$(cat .tags) # 应用版本
# - export sourceId="3" # 应用来源id
# - export genre="localpack" # 应用类型 本地资源包
# - export resolution="1920*1080横屏" # 分辨率(自行填写)[1080*1920竖屏, 1920*1080横屏, 3840*2160横屏, 2160*3840竖屏]
# - export package="/drone/src/target/$DRONE_REPO_NAME.$(cat .tags).zip" # zip包名称
# - export des=$CI_COMMIT_MESSAGE # 应用描述
# - python3 iot_upload.py
# when:
# branch:
# - master
- name: 上传exe到iot测试接口platformAppAdd
pull: if-not-exists
image: registry.cn-hangzhou.aliyuncs.com/qmiot/init:apisix-init-base
environment:
url_for_iotplatform: 'http://192.168.0.142:31667'
url_for_iotfile: 'http://192.168.0.142:31666'
logo: '/drone/src/logo.jpg'
cdn_url: 'https://test-598d.1000my.com'
# genre: "Samsung"
commands:
# # 自动授权
# - export projectCode="projectCode=project-inluar4ppcxvciefgb_ila"
- export isiot="True" # 要不要传iot
- export name="windows打包_测试版" # 应用名称(自行填写 必填)
- export version=$(cat .tags) # 应用版本
- export sourceId="8" # 应用来源id(默认为8 即测试环境专用) //如需更改查看测试环境平台级下应用管理新增应用的/api/platform/v1/platformProgram/platformProgramAdd接口
- export genre="localpack" # 应用类型 本地资源包 [outchain, localpack]
- export resolution="2160*3840竖屏" # 分辨率(自行填写)[1080*1920竖屏, 1920*1080横屏, 3840*2160横屏, 2160*3840竖屏]
- export package="/drone/src/target/Sources/Setup.exe" # 包名称
- export des=$CI_COMMIT_MESSAGE # 应用描述
- python3 iot_upload.py
when:
branch:
- test

69
iot_upload.py

@ -12,10 +12,7 @@ def file_write(file_name,text_content):
def dingtalk(cdn_url,packageUrl):
tpl_for_dingtalk=f'''
<font color=[TPL_STATUS_COLOR] size="3">
下载地址: (<a href="{cdn_url}{packageUrl}" target="_blank">{cdn_url}{packageUrl}</a>)
</font>
下载地址: "{cdn_url}{packageUrl}"
![image]([TPL_STATUS_PIC])
@ -70,71 +67,9 @@ def platformAppAdd():
dingtalk(cdn_url,packageUrl)
# 应用管理-授权(获取code list)
def getPlatformProgramList():
bodyjson = {
'name': os.getenv('name'),
'version': os.getenv('version'),
'genre': os.getenv('genre'),
}
print (bodyjson)
url_platformAppAdd = os.getenv('url_for_iotplatform') + "/api/platform/v1/platformProgram/getPlatformProgramList/1/10"
headers = {'content-type': 'application/json;charset=UTF-8'}
r = requests.post(url_platformAppAdd, headers=headers, data=json.dumps(bodyjson))
print (type(json.loads(r.text)))
print (json.loads(r.text)['data']["listObject"][0]['code'])
return json.loads(r.text)['data']["listObject"][0]['code']
# 应用管理-授权
def multipleProgramToOneProject():
codeList = getPlatformProgramList()
bodyjson = {
"projectCode": os.getenv('projectCode'),
"codeList": [codeList]
}
print (bodyjson)
url_platformAppAdd = os.getenv('url_for_iotplatform') + "/api/platform/v1/platformProgram/multipleProgramToOneProject"
headers = {'content-type': 'application/json;charset=UTF-8'}
r = requests.post(url_platformAppAdd, headers=headers, data=json.dumps(bodyjson))
print (r.text)
# 应用管理-新增应用
def platformProgramAdd():
# with open(".tags") as f: version = f.read().strip()
logoFile = obsUpload(file=str(os.getenv('logo')), uploadType='logo')
packageFile = obsUpload(file=str(os.getenv('package')),uploadType='compress')
bodyjson = {
'name': os.getenv('name'),
'version': os.getenv('version'),
'genre': os.getenv('genre'),
'sourceId': os.getenv('sourceId'),
"resolution": os.getenv('resolution'),
'logoCode': logoFile['code'],
'logoUrl': logoFile['url'],
'packageCode': packageFile['code'],
'packageUrl': packageFile['url'],
'des': os.getenv('des')
}
print (bodyjson)
url_platformAppAdd = os.getenv('url_for_iotplatform') + "/api/platform/v1/platformProgram/platformProgramAdd"
headers = {'content-type': 'application/json;charset=UTF-8'}
r = requests.post(url_platformAppAdd, headers=headers, data=json.dumps(bodyjson))
print (r.text)
cdn_url = os.getenv('cdn_url')
packageUrl = packageFile['url']
dingtalk(cdn_url,packageUrl)
# 自动授权
# multipleProgramToOneProject()
if os.getenv("isiot") != 'False':
platformProgramAdd()
platformAppAdd()
else:
print ("is not iot")
if os.getenv("DRONE_BRANCH") == 'master':

Loading…
Cancel
Save