易配置的虚拟自动化工具

buildbot-UnrealEngine的Python项目详细描述


buildbot UnrealEngine版本

Buildbot插件,使用非真实自动化工具运行命令

PyPI versionBuild StatusGitHub license

安装

pip install buildbot_UnrealEngine

这将启用额外的step命令作为buildbot中的插件(通过from buildbot.plugins import steps导入)

用法

frombuildbot.pluginsimportstepsfactory=util.BuildFactory()###### Build commandsfactory.addStep(steps.UEBuild("Engine_Location","Path_To_Project.uproject","TargetName",# Additional Parameters, see below))factory.addStep(steps.UERebuild("Engine_Location","Path_To_Project.uproject","TargetName",# Additional Parameters, see below))factory.addStep(steps.UEClean("Engine_Location","Path_To_Project.uproject","TargetName",# Additional Parameters, see below))###### BuildCookRunfactory.addStep(steps.BuildCookRun("Engine_Location","Path_To_Project.uproject",# Additional Parameters, see below))

参数

所有命令共享以下基本参数:

ParameterType/OptionsDescription
engine_pathstring (required)The location to the used engine, the path needs to point to the root folder of the engine (in this folder are at least the ^{}, ^{}, ^{} and ^{} folders)
project_pathstring (required)The absolute location to the uproject file to be used. (Usually a ^{} to build the path using the current builddir)
build_platformstring (default ^{}), Options: ^{} ^{} ^{}The platform on which the build itself will run, used to determine which scripts to run
engine_typestring (default ^{}), Options: ^{} ^{} ^{}

  • ^{}: Engine is built from GitHub Source
  • ^{}: Engine is self build from GitHub source and made a binary build via the BuildGraph tool
  • ^{}: Pre-built engine from Epic Games via EpicGamesLauncher

生成Cook运行参数

factory.addStep(steps.BuildCookRun(engine_path,project_path,target_platform="Win64",target_config="Development",no_compile_editor=False,compile=None,cook=None,cook_on_the_fly=None,build=False,clean=False,archive=False,archive_directory=None,p4=None,unversioned_cooked_content=False,encrypt_ini_files=False,release_version=None,base_version=None,compressed=False,distribution=False,iterate=False,run=False,devices=None,null_rhi=False,nativize=False,stage=False,map=None,pak=False,prereqs=False,package=False,crash_reporter=False,title_id=None,dlc_name=None,dlc_include_engine=False,extra_args=None,))
ParameterType/OptionsDescription
no_compile_editorboolIf true adds ^{} to the command line. Skip compiling the editor target for game (needed for cooking), useful if already done before.
compileboolIf true adds ^{} to the command line. ^{} if false. This switch is usually required on source builds. It tells the UAT to compile itself before running any commandlets, however on Installed/Rocket builds this will result in an error as the sources for UAT are not part of those engine distributions.
cookboolIf true adds ^{} to the command line. ^{} if false. Enables or disables the cook step.
cook_on_the_flyboolIf true adds ^{} to the command line. ^{} if false. Does not cook the content, but starts the cook process in servermode, where a game can connect to using the ^{} parameter to connect to this server. The server will then cook requested content on the fly.
buildboolIf true adds ^{} to the command line. Enables the build step, compiling the game for the target platform.
cleanboolIf true adds ^{} to the command line. Perform a clean build
archiveboolIf true adds ^{} to the command line. Archive the build after completion.
archive_directorystringIf true adds ^{} to the command line. Specify the archive directory. If omitted, the path in the configuration file will be used.
p4boolIf true adds ^{} to the command line, ^{} if false. Enables disabled interaction with Perforce.
unversioned_cooked_contentboolIf true adds ^{} to the command line. This writes no version into the cooked assets.
encrypt_ini_filesboolIf true adds ^{} to the command line. Encrypts the packaged ini files.
release_versionstringIf set adds ^{} to the command line. This creates a releasee version of the game for later patching (see BasedOnReleaseVersion)
base_versionstringIf set adds ^{} to the command line. This creates a patch or dlc based on the given release version, containing only changes that differ from the release version.
compressedboolIf true adds ^{} to the command line. This compressed your pak files to be to use fewer disk space, but increased loading times.
distributionboolIf true adds ^{} to the command line. Creates a distribution build (used for mobile)
iterateboolIf true adds ^{} to the command line. Only cooks changed files if run on the same directory as before
runboolIf true adds ^{} to the command line. Runs the packaged game after completion.
devicesstring arrayIf set adds ^{} to the command line. Specifies on which devices the game will be run upon completion.
null_rhiboolIf true adds ^{} to the command line. Runs the packaged games with no renderer.
nativizeboolIf true adds ^{} to the command line. Runs blueprint nativization during the cook process
stageboolIf true adds ^{} to the command line. Save the cooked result in a staging directory
mapstring arrayIf set adds `-Map=<The+String+Array> to the command line. Sets the map to include for the cook process. If omitted, used the one specified on the project documentation.
pakboolIf true adds ^{} to the command line. Use pak files for packaging, if omitted uassets file will be directly in the content directory.
prereqsboolIf true adds ^{} to the command line. Include prerequisites in the packaged game.
packageboolIf true adds ^{} to the command line. Package the game for the target platform (app file on Mac, apk on Android or ipa on iPhone)
crash_reporterboolIf true adds ^{} to the command line. Includes the crash reporter during packaging.
dlc_namestringIf set adds -DLCName=<DLCName> to the command line. This will cook the specified Plugin as DLC.
dlc_include_engineboolIf true adds ^{} to the command line. DLC should include Engine content.
title_idstring or list of stringsIf true adds ^{} to the command line. PS4 specific title id command.
extra_argsstring or list of stringsIf set adds the given arguments to the command line. Can be used for custom or missing command line parameters.

Windows下的开发安装

  • 下载并安装Python 2.7

  • 安装virtualenv

    pip install virtualenv
    
  • .workspace\venv中创建一个virtualenv

    mkdir .workspace
    cd workspace
    C:\Python27\Scripts\virtualenv.exe venv
    cd ..\..\
    .workspace\venv\Scripts\activate.bat
    pip install -r requirements.txt
    
  • 下载PyWin32(对于twisted)并将其安装到您的venv中

    easy_install <PATH_TO_pywin32-220.win32-py2.7.exe>
    
  • 将buildbot(0.9.1版)克隆到某个位置并安装它及其测试设置

    git clone https://github.com/buildbot/buildbot.git -b v0.9.1
    cd buildbot\master
    pip install -e .
    python setup.py test
    
  • 安装buildbot unrelengine(在buildbot unrelengine repo中)

    pip install -e .
    
  • 现在您可以通过编写

    trial buildbot_UnrealEngine.test
    
  • 对于代码覆盖率,请安装txcovreport:

    easy_install http://darcs.idyll.org/~t/projects/figleaf-latest.tar.gz
    pip install git+https://github.com/jrydberg/txcovreport.git
    

    现在您可以使用

    trial --reporter=tree-coverage buildbot_UnrealEngine.test
    

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何为ConcurrentHashMap使用并设置适当的并发级别?   java泛型方法,运行时错误,   java在页面上显示加载的图像   java Paypal定期直接支付问题   java如何延迟重新绘制组件   JavaSpringBoot+Hibernate如何维护@Transient字段   java在其方法中获取关于类的信息   在java中将别名添加到枚举   java如何解决向google报告成绩时“需要重新连接客户端”的问题   清晰的java图像背景   java未找到适合JDateChooser的构造函数(字符串、字符串、字符)   java LRU缓存实现。某些测试用例的代码失败   if语句Java嵌套的if/Else条件   java JSoup“wrap”并非每次都按预期工作   Java Spring引导循环依赖于一个环境   ssl证书无法通过Java和IntelliJ连接到SOAP服务   带整数验证的Java扫描器   java在Flex中呈现具有动态列的datagrid   java Android:通过用户选择的选项将文件上载到服务器   子类中的java抛出错误、异常和运行时异常