# coding=utf-8 import datetime import os def cp_file(rsc, des): file_list = os.listdir(rsc) for i in file_list: if i in ['venv', '.idea', '.gitignore', 'static', 'migrations', '.git', '__pycache__', 'upload', 'templates', 'logs', 'upload-video', 'build.py', 'move.sh']: continue if os.path.isfile(os.path.join(rsc, i)): os.system('copy /Y %s %s' % (os.path.join(rsc, i), os.path.join(des, i))) else: os.makedirs(os.path.join(des, i)) cp_file(os.path.join(rsc, i), os.path.join(des, i)) # 程序执行会将前后端程序复制到部署文件夹 if __name__ == '__main__': os.system('chcp 65001') build_dir = r'C:\Users\m1582\Documents\vmshare\build' date = datetime.datetime.today().date().strftime('%Y-%m-%d') # 公共api rsc_dir = r'..\..\api_django' des_dir = r'%s\api_django' % build_dir if os.path.exists(des_dir): if not os.path.exists(r'%s\zzzz_bak' % build_dir): os.makedirs(r'%s\zzzz_bak' % build_dir) if os.path.exists(r'%s\zzzz_bak\%s_api_django' % (build_dir, date)): os.system(r'rd /s /q %s\zzzz_bak\%s_api_django' % (build_dir, date)) os.system(r'move %s %s\zzzz_bak\%s_api_django' % (des_dir, build_dir, date)) os.makedirs(des_dir) cp_file(rsc_dir, des_dir) # 后端 rsc_dir = r'..\..\api_iris' des_dir = r'%s\api_iris' % build_dir if os.path.exists(des_dir): if not os.path.exists(r'%s\zzzz_bak' % build_dir): os.makedirs(r'%s\zzzz_bak' % build_dir) if os.path.exists(r'%s\zzzz_bak\%s_api_iris' % (build_dir, date)): os.system(r'rd /s /q %s\zzzz_bak\%s_api_iris' % (build_dir, date)) os.system(r'move %s %s\zzzz_bak\%s_api_iris' % (des_dir, build_dir, date)) os.makedirs(des_dir) cp_file(rsc_dir, des_dir) # 前端 rsc_dir_web = r'C:\Users\m1582\Documents\project\web_ylsa\web_vue\dist' if os.path.exists(rsc_dir_web): if os.path.exists(r'%s\dist' % build_dir): if os.path.exists(r'%s\zzzz_bak\%s_dist' % (build_dir, date)): os.system(r'rd /s /q %s\zzzz_bak\%s_dist' % (build_dir, date)) os.system(r'move %s/dist %s\zzzz_bak\%s_dist' % (build_dir, build_dir, date)) os.system('move %s %s' % (rsc_dir_web, build_dir)) # 配置文件 cp_file(r".\\", build_dir)