Allow override of UploadSymbolsAutomatically value from an environment variable. #636
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The use-case for this is that we want to upload symbols in some CI builds, but not when developers build and cook locally, so currently we have to edit the config file DefaultConfig.ini as part of the CI process. This is cumbersome, as it has some awkward interactions with Perforce and e.g. TeamCity that make the state of the files on CI agents hard to reason about without adding a preamble script to every job that enforces the correct value, even ones that shouldn't need to touch this config file. It interacts especially poorly when a developer has edited DefaultConfig.ini in their Perforce changelist, and introduces risk when other jobs reusing the same workspace make commits back to Perforce.
Allowing an environment variable to be supplied instead will allow conditional enabling / disabling of symbol upload without having to edit files, making it much easier to implement without having to worry about the state of files on disk, so is much preferable.
I've tested this with Unreal Engine 5.4, and the environment variable is passed through from the call to UnrealAutomationTool through to invoking the post-build script.