# -*- coding:utf-8 -*- from sabuild.config_parser import * from sabuild.formater import * import sys,os import json ProjectCFG = "sabuild/data/projects.cfg" Project_LASTRev = 0; ProjectUpdate = 0; def getReleaseName(projectDir): buildCfg = os.path.join(projectDir,"build.cfg") saParser = SAPaser(buildCfg) try: releaseName = saParser.configParser.get("app","release") except Exception: releaseName = "assembleRelease" return releaseName def getAPKSection(projectDir): buildCfg = os.path.join(projectDir,"build.cfg") saParser = SAPaser(buildCfg) try: apkSection = saParser.configParser.sections() except Exception: apkSection = "error" return apkSection def checkProjectRev(projectDir, lastRevLine, lastDateLine): global Project_LASTRev,ProjectUpdate lastRev = int(parseSVNLine(lastRevLine)) lastDate = parseSVNLine(lastDateLine) print("checkProjectRev, params:",projectDir, lastRev, lastDate) if projectDir.endswith("/"): projectDir = os.path.dirname(projectDir) projectName = os.path.basename(projectDir) print("checkProjectRev,projectName:",projectName) fileUtil = FileUtil() jsonStr = fileUtil.readStr(ProjectCFG) strDict = json.loads(jsonStr,encoding="utf8") # print("checkProjectRev,strDict:",strDict) projectDict = strDict["allProjectDict"] if projectName in projectDict: Project_LASTRev = projectDict[projectName]["svn_lastChangedRev"] print("checkProjectRev,Project_LASTRev",Project_LASTRev,"::lastRev:",lastRev) if lastRev > Project_LASTRev: ProjectUpdate = 1 print("checkProjectRev,ProjectUpdate",ProjectUpdate) def updateProjectRev(projectDir, lastRevLine, lastDateLine): lastRev = int(parseSVNLine(lastRevLine)) lastDate = parseSVNLine(lastDateLine) print("updateProjectRev, params:",projectDir, lastRev, lastDate) if projectDir.endswith("/"): projectDir = os.path.dirname(projectDir) projectName = os.path.basename(projectDir) print("updateProjectRev,projectName:",projectName) fileUtil = FileUtil() jsonStr = fileUtil.readStr(ProjectCFG) strDict = json.loads(jsonStr,encoding="utf8") # print("updateProjectRev,strDict:",strDict) projectDict = strDict["allProjectDict"] if projectName in projectDict: projectDict[projectName]["svn_lastChangedRev"] = lastRev projectDict[projectName]["svn_lastChangedDate"] = lastDate else: pDict = releaseInfo pDict["projectName"]=projectName pDict["svn_lastChangedRev"]=lastRev pDict["svn_lastChangedDate"]=lastDate projectDict[projectName]=pDict fileUtil.reWriteJson(ProjectCFG,strDict) def isAppUpgrade(): return ProjectUpdate if __name__ == "__main__": pass # projectDir = "../cacheAndroidSrc/AudioLink" # print("release:",getReleaseName(projectDir));