UPDATE_CFG_PATH = '../'+sys.argv[8]
GenerateDiffAttr = "TRUE"
- elif UPDATE_TYPE in [DELTA_IMG, DELTA_IMG_AB, FULL_IMG]:
+ elif UPDATE_TYPE in [DELTA_IMG, DELTA_IMG_AB, FULL_IMG, PRE_UA]:
if len(sys.argv) == 7:
#Use path in better way
UPDATE_CFG_PATH = '../'+sys.argv[6]
print('UPDATE_TYPE ---- EXTRA')
elif UPDATE_TYPE == PRE_UA:
print('UPDATE_TYPE ---- PRE_UA')
+ SS_pre_ua_update_checksum(PART_NAME, BASE_NEW, UPDATE_CFG_PATH)
else:
print('UPDATE_TYPE ---- UNKNOWN FORMAT')
logging.error('Usage: {} <Update_Type> <Part_Name> <OLD_Base> <NEW_Base> <OUT_DIR>'.format(os.path.basename(sys.argv[0])))
raise
+def SS_pre_ua_update_checksum(PART_NAME, BASE_NEW, UPDATE_CFG_PATH):
+ newsize_d= os.path.getsize(BASE_NEW)
+ SHA_BIN_DEST= hash_file(BASE_NEW)
+
+ #incase UPDATE CFG is empty
+ DELTA = PART_NAME
+ #Should throw error if PART NAME NOT found??
+ print("newsize: {} sha_bin_dest: {}".format(newsize_d, SHA_BIN_DEST))
+ if not UPDATE_CFG_PATH == EMPTY:
+ f = open(UPDATE_CFG_PATH, 'r')
+ lines = f.readlines()
+ f.close()
+ f = open(UPDATE_CFG_PATH, 'w')
+ for line in lines:
+ ConfigItems = line.split()
+ if ConfigItems[0] == PART_NAME:
+ logging.info ('Updating %s config' % PART_NAME)
+ DELTA = ConfigItems[1]
+ line = line.rstrip('\n')
+ line = line.replace(line, line+'\t'+str(0)+'\t\t'+str(newsize_d)+'\t\t'+str(0)+'\t\t'+str(SHA_BIN_DEST)+'\n')
+ print("new line: {}".format(line))
+ f.write(line)
+ else:
+ f.write(line)
+ f.close()
def SS_update_cfg(DELTA_BIN, UPDATE_CFG_PATH):
f = open(UPDATE_CFG_PATH, 'r')