|
@@ -2,134 +2,192 @@ import os
|
|
|
import requests
|
|
|
import json
|
|
|
|
|
|
+from flask import Flask,request,redirect
|
|
|
+from flask_cors import CORS
|
|
|
+app = Flask(__name__,static_folder="static")
|
|
|
+CORS(app, resources=r'/*')
|
|
|
+
|
|
|
+
|
|
|
# current_path
|
|
|
current_path = os.getcwd()
|
|
|
|
|
|
# 1.小程序打包
|
|
|
-def build_mini_program():
|
|
|
- command_str = (
|
|
|
- "git clone https://git.yishihui.com/weapp/longVideoFactory.git;"
|
|
|
- "cd longVideoFactory;"
|
|
|
- "git pull;"
|
|
|
- "git checkout dev;"
|
|
|
- "git pull;"
|
|
|
- "n 8;"
|
|
|
- "cnpm install && npm install ;"
|
|
|
- "npm run build && npm run build:other;"
|
|
|
- )
|
|
|
+# def build_mini_program():
|
|
|
+# command_str = (
|
|
|
+# "git clone https://git.yishihui.com/weapp/longVideoFactory.git;"
|
|
|
+# "cd longVideoFactory;"
|
|
|
+# "git pull;"
|
|
|
+# "git checkout dev;"
|
|
|
+# "git pull;"
|
|
|
+# "n 8;"
|
|
|
+# "cnpm install && npm install ;"
|
|
|
+# "npm run build && npm run build:other;"
|
|
|
+# )
|
|
|
|
|
|
- if os.system(command_str) == 0:
|
|
|
- print("1.打包成功")
|
|
|
- # create_preview()
|
|
|
- else:
|
|
|
- print("1.打包失败")
|
|
|
+# if os.system(command_str) == 0:
|
|
|
+# print("1.打包成功")
|
|
|
+# # create_preview()
|
|
|
+# else:
|
|
|
+# print("1.打包失败")
|
|
|
|
|
|
-# 2.微信编译图片
|
|
|
-def create_preview():
|
|
|
- # 小程序 cli path for mac
|
|
|
- wx_cli ="/Applications/wechatwebdevtools.app/Contents/MacOS/cli"
|
|
|
+# # 2.微信编译图片
|
|
|
+# def create_preview():
|
|
|
+# # 小程序 cli path for mac
|
|
|
+# wx_cli ="/Applications/wechatwebdevtools.app/Contents/MacOS/cli"
|
|
|
|
|
|
- dist_path = os.path.join(current_path,'longVideoFactory/dist/vlog')
|
|
|
- code_img_path = os.path.join(current_path,'1.png')
|
|
|
- f_read = os.popen(wx_cli+" preview --project "+dist_path+" --qr-output "+code_img_path+" --qr-format image").read()
|
|
|
- if "[error]" in f_read:
|
|
|
- print(f_read)
|
|
|
- else:
|
|
|
- print("2.微信小程序编译成功")
|
|
|
-
|
|
|
-# create_preview()
|
|
|
-
|
|
|
-# https://open.feishu.cn/open-apis/bot/v2/hook/a924b6a5-86ef-4c76-a7e4-eb42056f70cc
|
|
|
-
|
|
|
-def upload_img_by_feishu(token):
|
|
|
- key = ""
|
|
|
- url = "https://open.feishu.cn/open-apis/im/v1/images"
|
|
|
- files = {
|
|
|
- "image_type":(None,"message"),
|
|
|
- "image":('1.png',open(os.path.join(current_path,"1.png"),"rb"),"image/png")
|
|
|
- }
|
|
|
- headers = {
|
|
|
- "Authorization":"Bearer "+token,
|
|
|
- }
|
|
|
- res = requests.post(url,headers=headers,files=files,verify = False).json()
|
|
|
- if res["code"] == 0:
|
|
|
- key = res["data"]["image_key"]
|
|
|
- else:
|
|
|
- print("飞书上传图片失败")
|
|
|
+# dist_path = os.path.join(current_path,'longVideoFactory/dist/vlog')
|
|
|
+# code_img_path = os.path.join(current_path,'1.png')
|
|
|
+# f_read = os.popen(wx_cli+" preview --project "+dist_path+" --qr-output "+code_img_path+" --qr-format image").read()
|
|
|
+# if "[error]" in f_read:
|
|
|
+# print(f_read)
|
|
|
+# else:
|
|
|
+# print("2.微信小程序编译成功")
|
|
|
+
|
|
|
+# # create_preview()
|
|
|
+
|
|
|
+# # https://open.feishu.cn/open-apis/bot/v2/hook/a924b6a5-86ef-4c76-a7e4-eb42056f70cc
|
|
|
+
|
|
|
+# def upload_img_by_feishu(token):
|
|
|
+# key = ""
|
|
|
+# url = "https://open.feishu.cn/open-apis/im/v1/images"
|
|
|
+# files = {
|
|
|
+# "image_type":(None,"message"),
|
|
|
+# "image":('1.png',open(os.path.join(current_path,"1.png"),"rb"),"image/png")
|
|
|
+# }
|
|
|
+# headers = {
|
|
|
+# "Authorization":"Bearer "+token,
|
|
|
+# }
|
|
|
+# res = requests.post(url,headers=headers,files=files,verify = False).json()
|
|
|
+# if res["code"] == 0:
|
|
|
+# key = res["data"]["image_key"]
|
|
|
+# else:
|
|
|
+# print("飞书上传图片失败")
|
|
|
|
|
|
- return key
|
|
|
-
|
|
|
-def tenant_access_token_by_feishu():
|
|
|
- token = ""
|
|
|
- url = "https://open.feishu.cn/open-apis/auth/v3/tenant_access_token/internal"
|
|
|
- params = {
|
|
|
- "app_id":"cli_a1ec07458838d00c",
|
|
|
- "app_secret":"Ngm0kfaLkZnpM2T2DH7L8cM5hdAqY0hI"
|
|
|
- }
|
|
|
- res = requests.post(url,data=params,verify = False).json()
|
|
|
- if res["code"] == 0:
|
|
|
- token = res["tenant_access_token"]
|
|
|
- else:
|
|
|
- print("获取飞书签名失败")
|
|
|
-
|
|
|
- return token
|
|
|
-
|
|
|
-def send_msg_by_feishu(token,img_key):
|
|
|
- # webhook
|
|
|
- webhook_url = "https://open.feishu.cn/open-apis/bot/v2/hook/a924b6a5-86ef-4c76-a7e4-eb42056f70cc"
|
|
|
- headers = {
|
|
|
- "Authorization":"Bearer "+token,
|
|
|
- "Content-Type": "application/json;charset=UTF-8"
|
|
|
- }
|
|
|
- params = {
|
|
|
- "msg_type": "post",
|
|
|
- "content": {
|
|
|
- "post": {
|
|
|
- "zh_cn": {
|
|
|
- "title": "Vlog小程序预览码",
|
|
|
- "content": [
|
|
|
- # [
|
|
|
- # {
|
|
|
- # "tag": "text",
|
|
|
- # "text": "第二行 :"
|
|
|
- # },
|
|
|
- # {
|
|
|
- # "tag": "text",
|
|
|
- # "text": "文本测试"
|
|
|
- # }
|
|
|
- # ],
|
|
|
- [
|
|
|
- {
|
|
|
- "tag": "img",
|
|
|
- "image_key": "img_v2_223c3413-488a-4af6-bd36-6563a9ef185g",
|
|
|
- "width": 500,
|
|
|
- "height": 500
|
|
|
- }
|
|
|
- ]]
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
+# return key
|
|
|
+
|
|
|
+# def tenant_access_token_by_feishu():
|
|
|
+# token = ""
|
|
|
+# url = "https://open.feishu.cn/open-apis/auth/v3/tenant_access_token/internal"
|
|
|
+# params = {
|
|
|
+# "app_id":"cli_a1ec07458838d00c",
|
|
|
+# "app_secret":"Ngm0kfaLkZnpM2T2DH7L8cM5hdAqY0hI"
|
|
|
+# }
|
|
|
+# res = requests.post(url,data=params,verify = False).json()
|
|
|
+# if res["code"] == 0:
|
|
|
+# token = res["tenant_access_token"]
|
|
|
+# else:
|
|
|
+# print("获取飞书签名失败")
|
|
|
+
|
|
|
+# return token
|
|
|
+
|
|
|
+# def send_msg_by_feishu(token,img_key):
|
|
|
+# # webhook
|
|
|
+# webhook_url = "https://open.feishu.cn/open-apis/bot/v2/hook/a924b6a5-86ef-4c76-a7e4-eb42056f70cc"
|
|
|
+# headers = {
|
|
|
+# "Authorization":"Bearer "+token,
|
|
|
+# "Content-Type": "application/json;charset=UTF-8"
|
|
|
+# }
|
|
|
+# params = {
|
|
|
+# "msg_type": "post",
|
|
|
+# "content": {
|
|
|
+# "post": {
|
|
|
+# "zh_cn": {
|
|
|
+# "title": "Vlog小程序预览码",
|
|
|
+# "content": [
|
|
|
+# [
|
|
|
+# {
|
|
|
+# "tag": "img",
|
|
|
+# "image_key": "img_v2_223c3413-488a-4af6-bd36-6563a9ef185g",
|
|
|
+# "width": 500,
|
|
|
+# "height": 500
|
|
|
+# }
|
|
|
+# ]]
|
|
|
+# }
|
|
|
+# }
|
|
|
+# }
|
|
|
+# }
|
|
|
|
|
|
- res = requests.post(webhook_url,headers=headers,data=json.dumps(params),verify = False).json()
|
|
|
- if res["StatusCode"] == 0:
|
|
|
- print("飞书消息发送成功")
|
|
|
- else:
|
|
|
- print("飞书消息发送失败")
|
|
|
+# res = requests.post(webhook_url,headers=headers,data=json.dumps(params),verify = False).json()
|
|
|
+# if res["StatusCode"] == 0:
|
|
|
+# print("飞书消息发送成功")
|
|
|
+# else:
|
|
|
+# print("飞书消息发送失败")
|
|
|
|
|
|
|
|
|
|
|
|
-# ------- 微信打包 ------
|
|
|
-# 1.小程序打包
|
|
|
-build_mini_program()
|
|
|
-# 2.微信编译图片
|
|
|
-create_preview()
|
|
|
-
|
|
|
-
|
|
|
-# -------- 飞书 --------
|
|
|
-# 1.获取签名
|
|
|
-token = tenant_access_token_by_feishu()
|
|
|
-# 2.获取imgKey
|
|
|
-img_key = upload_img_by_feishu(token)
|
|
|
-# 3.飞书发送消息
|
|
|
-send_msg_by_feishu(token,img_key)
|
|
|
+# # ------- 微信打包 ------
|
|
|
+# # 1.小程序打包
|
|
|
+# # build_mini_program()
|
|
|
+# # 2.微信编译图片
|
|
|
+# # create_preview()
|
|
|
+
|
|
|
+# # 3.切换小程序环境
|
|
|
+
|
|
|
+
|
|
|
+# # -------- 飞书 --------
|
|
|
+# # 1.获取签名
|
|
|
+# # token = tenant_access_token_by_feishu()
|
|
|
+# # 2.获取imgKey
|
|
|
+# # img_key = upload_img_by_feishu(token)
|
|
|
+# # 3.飞书发送消息
|
|
|
+# # send_msg_by_feishu(token,img_key)
|
|
|
+
|
|
|
+@app.route('/')
|
|
|
+def func():
|
|
|
+
|
|
|
+ return 'Welcome to auto-mini-program-build-preview server. only can run on MacOS.'
|
|
|
+
|
|
|
+# @app.route('/send',methods=['POST'])
|
|
|
+# def send():
|
|
|
+# form_webhook_url = request.form["webrhook_url"]
|
|
|
+# form_branch = request.form["branch"]
|
|
|
+# form_name = request.form["name"]
|
|
|
+
|
|
|
+# res = {"code":0,"msg":'发送成功'}
|
|
|
+
|
|
|
+# res = {"code":1,"msg":''}
|
|
|
+
|
|
|
+# return request.form
|
|
|
+
|
|
|
+
|
|
|
+@app.route("/getBranch")
|
|
|
+def get_branch():
|
|
|
+ # 查看所有分支
|
|
|
+ command_str= (
|
|
|
+ "cd longVideoFactory;"
|
|
|
+ "git branch -a;"
|
|
|
+ )
|
|
|
+ f_read = os.popen(command_str).read()
|
|
|
+
|
|
|
+ branch_list = []
|
|
|
+ for item in f_read.split():
|
|
|
+ if "->" not in item and "origin/master" not in item and "HEAD" not in item and "*" not in item:
|
|
|
+ branch_list.append(item.replace("remotes/origin/",""))
|
|
|
+
|
|
|
+ res = {"code":0,"data":branch_list}
|
|
|
+ return res
|
|
|
+
|
|
|
+if __name__ == '__main__':
|
|
|
+ app.run(host='0.0.0.0', port=7777, debug=False)
|
|
|
+
|
|
|
+
|
|
|
+# 修改环境文件
|
|
|
+def edit_mode_by_file(project,mode):
|
|
|
+ path = os.path.join(current_path,"longVideoFactory/dist/"+project+"/network/volatileConfig.js")
|
|
|
+ file_lines = []
|
|
|
+ with open(path,"r") as f:
|
|
|
+ for item in f.readlines():
|
|
|
+ if "export const currentMode" in item:
|
|
|
+ item = "export const currentMode = MODE."+mode+" \n"
|
|
|
+
|
|
|
+ file_lines.append(item)
|
|
|
+ f.close()
|
|
|
+
|
|
|
+ with open(path,"w") as f2:
|
|
|
+ f2.writelines(file_lines)
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ f2.close()
|
|
|
+
|
|
|
+# edit_mode_by_file("vlog")
|