コード例 #1
0
ファイル: frontend.py プロジェクト: idrunk/dcpt
 def __build(self):
     interface.print('正在打包' + self.name + '前端代码')
     func.loading()
     stdout, stderr = func.popen_read('npm run build')
     func.loading(0)
     if self.__is_build_failed(stdout):
         func.exit(self.name + '前端代码打包失败')  # 如果打包失败, 挂起
     interface.print('前端代码打包成功')
コード例 #2
0
 def __export(self):
     if not self.c['output']: return
     output = self.c['output']
     app = self.__get_ipa_path(output)
     export = output['distribute'] if self.c[
         'is_export_distribute'] else output['export']
     if not os.path.exists(app) or not os.path.exists(
             os.path.dirname(export)):
         return interface.print('源包路径不对或导出目录不存在, 未导出')
     shutil.copy(app, export)  # 将应用复制到目标目录
     self.__clear_source()  # 清除所打包
     interface.print(self.c['name'] + self.platform['name'] + '已导出到:' +
                     export)
コード例 #3
0
 def __build_android(self):
     interface.print('正在打包安卓' + self.c['name'])
     func.loading()
     func.popen_read('cordova prepare android')
     cmd = 'cordova build android'
     if not self.c['is_debug']:  # 如果是打发布包
         cmd += ' --release'  # 加上发布标签
         if self.c['keystore']:  # 如果有配置签名, 则对应用签名
             keystore = self.c['keystore']
             cmd += ' -- --keystore="' + keystore[
                 'path'] + '" --storePassword='******'store_password'] + ' --password='******'password'] + ' --alias=' + keystore['alias']
     stdout, stderr = func.popen_read(cmd)
     func.loading(0)
     if self.__is_build_failed(stdout):
         func.exit(self.c['name'] + '安卓打包失败')  # 如果打包失败, 挂起
     interface.print(self.c['name'] + '安卓打包成功')
コード例 #4
0
 def __build_ios(self):
     interface.print('正在打包苹果' + self.c['name'])
     func.loading()
     func.popen_read('cordova prepare ios')
     if self.c['is_export_distribute']:  # 苹果暂不自动打发布包
         func.loading(0)
     elif func.get(self.c, 'is_semi_automatic'):  # 如果是半自动, 则等待手动打包后继续操作
         func.loading(0)
         is_continue = interface.wait_package()
         if not is_continue:
             func.exit(self.c['name'] + '苹果打包失败')  # 用户终止, 退出程序
     else:
         cmd = 'cordova build ios --device'
         if not self.c['is_debug']: cmd += ''  # 如果是打发布包
         if self.c['build_config']:
             cmd += ' --buildConfig'  # 如果有配置创建配置, 则补上创建配置
         stdout, stderr = func.popen_read(cmd)
         func.loading(0)
         if self.__is_build_failed(stdout):
             func.exit(self.c['name'] + '苹果打包失败')  # 如果打包失败, 挂起
     interface.print(self.c['name'] + '苹果打包成功')
コード例 #5
0
ファイル: frontend.py プロジェクト: idrunk/dcpt
 def __pull(self):
     self.__checkout()
     stdout, stderr = func.popen_read(self.c['vcs']['pull'])
     if self.__is_git_failed(stdout):
         func.exit(self.name + '拉取失败')  # 如果拉取失败, 挂起
     interface.print(self.name + '拉取成功')