adamrehn / ue4-opencv-demo

Demo for integrating OpenCV and UE4 using conan-ue4cli
40 stars 14 forks source link

build.py does not appear to implement ue4-ci-helpers #3

Open dskvr opened 4 years ago

dskvr commented 4 years ago

Correct me if I'm wrong, but build.py does not appear to implement ue4-ci-helpers

This is particularly awkward because ue4-opencv-demo is linked from the ue4-docker documentation under the heading "Usage with Continuous Integration systems."

It is somewhat confusing that ue4-ci-helpers is not being implemented in the demo that is linked to under the guise of CI. Additionally, it makes understanding the architecture and intended usage of the awesome tooling provided by @adamrehn more difficult.

Once I get the demo running I can attempt to port build.py and open a PR, but of course having it provided by the expert would definitely be appreciated :smile:

adamrehn commented 4 years ago

@dskvr apologies for the confusion here, this repository is relatively old and hasn't been updated to reflect subsequent changes to the available infrastructure. At the time of writing, the build script has not been modified since May 4, 2018, which predates the existence of the ue4-ci-helpers Python package by almost an entire year. The script invokes ue4cli and conan-ue4cli directly, which is not inherently a problem, but its invocations do not reflect the current best practices for building and consuming packages with conan-ue4cli since its major overhaul in early 2020. Updating this repository (and other related example repositories) to reflect the current state of the available tooling is a task that is currently in my backlog.

I'd also like to clear up an important misconception inherent in the premise of your question. The Continuous Integration page of the ue4-docker documentation never suggests that use of the ue4-ci-helpers is the only way (or even the preferred way) of performing CI for Unreal Engine projects and plugins. The page simply lists a variety of available options, including command-line use of ue4cli and methods that use the native UE4 build tools directly without the involvement of any third-party infrastructure. The collective purpose of my various infrastructure projects is to provide developers with a number of different (but equally valid) options for use in their own workflows, allowing them to choose the option that best suits their requirements. Unreal Engine CI/CD is not in any way synonymous with, or limited to, use of the ue4-ci-helpers package.

dskvr commented 4 years ago

@adamrehn Thanks for your response!

do not reflect the current best practices for building and consuming packages with conan-ue4cli since its major overhaul in early 2020.

Is there currently a resource for best practices?

never suggests that use of the ue4-ci-helpers is the only way (or even the preferred way) I am aware that ue4-ci-helpers is not the only way, but it is absolutely a simple and clean method for cross-platform scripts.

Is there currently a "preferred" way?

adamrehn commented 4 years ago

@dskvr

Is there currently a resource for best practices?

Until the example repositories are updated, the best bet for using conan-ue4cli would be to follow along with each of the steps outlined in the official documentation.

Is there currently a "preferred" way?

No, and there never will be a single preferred way of building Unreal Engine projects and plugins in CI/CD pipelines, since different developers will find different options better suited to their own requirements. (Even once Admiral launches, it will support all of the available options, rather than forcing users to adopt any given method of building and packaging their code.) In terms of evaluating the available options, here's some basic guidance:

dskvr commented 4 years ago

Thanks @adamrehn !

dskvr commented 4 years ago

Reopened to maintain backlog item.