配合運維上傳發(fā)布腳本,需要生成一個json文件給后臺迟蜜,他們獲取對應的發(fā)布信息和腳本
- 將發(fā)布信息填寫進表格《生產(chǎn)發(fā)布記錄.xlsx》
2.執(zhí)行g(shù)etRelease.bat
3.上傳release_note.json到git根目錄
寫了一個簡單的python腳本啡省,在本地用bat文件進行調(diào)用執(zhí)行
1.bat腳本代碼如下:
cd C:\Users\yangmx\Desktop\發(fā)布記錄
python getExcelData.py
python代碼:
import openpyxl
import json
#Add by MaxYang at 2018-11-06 16:22
#This scripts is for generate release json file
#1.add your info to excle sheet
#2.run getRelease.bat to call this file
#3.upload the release_note.json to git server
json_all =[]
def read_07_Excel(file_path):
wb = openpyxl.load_workbook(file_path) #打開文件
# sheet = wb.get_sheet_by_name("測試表格2007")
sheet = wb["release"] #通過sheet名稱鎖定表格
# new_list =[]
for row in sheet.rows: #循環(huán)所有的行
list_release = []
for cell in row:#循環(huán)行中所有的單元格
print(cell.value, "\t", end="") #獲取單元格的值
list_release.append(cell.value)
print()
# print(list_release)
if list_release[0]!="發(fā)布原因":
process_to_json(list_release)
# new_list.append(list_release)
# list_all =[]
# list_all.append(list_release)
# print(new_list)
def process_to_json(json_list):
list_json = json_list
release_dirt = {'發(fā)布原因':'test','發(fā)布人':'test','發(fā)布工程名稱':'test','發(fā)布版本':'test','發(fā)布類型':'test'}
release_dirt['發(fā)布原因'] = list_json[0]
release_dirt['發(fā)布人'] = list_json[1]
release_dirt['發(fā)布工程名稱'] = list_json[2]
release_dirt['發(fā)布版本'] = list_json[3]
release_dirt['發(fā)布類型'] = list_json[4]
print(release_dirt)
# json_str = json.dumps(release_dirt)
json_all.append(release_dirt)
# f = open('release_notes.json', 'w')
# f.writelines(json_str)
# f.close()
def process_json():
json_dirt = {"發(fā)布列表": json_all}
json_str = json.dumps(json_dirt)
f = open('release_note.json', 'w')
f.write(json_str)
f.close()
# def process_list_json():
# json_dirt = {"發(fā)布列表":json_all}
# json_str = json.dumps(json_dirt)
# f = open('others.txt', 'w')
# f.write(json_str)
# f.close()
# file_07_excel="C:/Users/yangmx/Desktop/發(fā)布記錄/生產(chǎn)發(fā)布記錄.xlsx"
#設(shè)置表格路徑,默認是執(zhí)行文件的當前目錄
file_07_excel="生產(chǎn)發(fā)布記錄.xlsx"
read_07_Excel(file_07_excel)
# print(json_all)
process_json()