Skip to main content

Unreal Engine 4 Continuous Integration helper functionality

Project description

UE4 Continuous Integration helper functionality

The ue4-ci-helpers Python package builds on the ue4cli and conan-ue4cli packages to provide infrastructure for Continuous Integration (CI) use cases for Unreal projects and plugins. It aims to simplify the process of writing platform-agnostic build scripts that can then be run as part of a CI pipeline.

Although the package works best inside the ue4-full Docker image produced by the ue4-docker project, the core functionality will work on any system where ue4cli has been correctly configured.

To install the package, run: pip install ue4-ci-helpers

A simple build script for packaging a nightly build of an Unreal project might look like so:

#!/usr/bin/env python3
from ue4helpers import ProjectPackager, VersionHelpers
from os.path import abspath, dirname

# Create our project packager
packager = ProjectPackager(

	# The root directory for the project
	# (This example assumes this script is in a subdirectory)
	root = dirname(dirname(abspath(__file__))),

	# Use the date of the most recent git commit as our version string
	version = VersionHelpers.from_git_commit(),

	# The filename template for our generated .zip file
	archive = '{name}-Nightly-{version}-{platform}',

	# Don't strip debug symbols from the packaged build
	strip_debug = False,

	# Don't strip manifest files from the packaged build
	strip_manifests = False
)

# Clean any previous build artifacts
packager.clean()

# Package the project
packager.package()

# Compress the packaged distribution
# (The CI system can then tag the generated .zip file as a build artifact)
packager.archive()

Check out the docstring for the constructor of the PackagerBase class to see the full list of supported parameters and their uses.

Legal

Copyright © 2019, Adam Rehn. Licensed under the MIT License, see the file LICENSE for details.

Initial development of this package was funded by Deepdrive, Inc.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

ue4_ci_helpers-0.0.11-py3-none-any.whl (19.4 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page