build(ci): Add missing '+ffmpeg' label to build job and steps - #3251
build(ci): Add missing '+ffmpeg' label to build job and steps#3251tsunamistate wants to merge 1 commit into
Conversation
PR Summary by QodoShow FFmpeg support in vcpkg workflow labels
AI Description
High-Level Assessment
Files changed (1)
|
Code Review by Qodo
1. Collect step omits FFmpeg
|
|
| Filename | Overview |
|---|---|
| .github/workflows/build-toolchain.yml | Adds consistent conditional +ffmpeg text to workflow display names while leaving commands and artifact identifiers unchanged. |
Reviews (2): Last reviewed commit: "Add '+ffmpeg' label to build job and ste..." | Re-trigger Greptile
61cfcbd to
2d27959
Compare
|
Do we need this at all in the title? What is it good for? |
|
Do we need this extra keyword in the target name? Can we not imply it with vcpkg, that it always has ffmpeg enabled? Why do we build only one of the vcpkg targets with ffmpeg? Should we not build all of them with it? |
I just made FFmpeg optional and disabled by default in 3184, so vcpkg does NOT imply enabled FFmpeg support
@bobtista sorry to bother you, but can you please explain why you asked to enable FFmpeg on only one job? |
|
It shouldn't take this long to merge a missing variable I believe I have explained everything. If you think this change is not worth merging, close it |
xezon
left a comment
There was a problem hiding this comment.
It shouldn't take this long to merge a missing variable
Why?
| cmake --preset ${{ inputs.preset }} $buildFlags | ||
|
|
||
| - name: Build ${{ inputs.game }} with CMake Using ${{ inputs.preset }}${{ inputs.tools && '+t' || '' }}${{ inputs.extras && '+e' || '' }} Preset | ||
| - name: Build ${{ inputs.game }} with CMake Using ${{ inputs.preset }}${{ inputs.tools && '+t' || '' }}${{ inputs.extras && '+e' || '' }}${{ inputs.ffmpeg && '+ffmpeg' || '' }} Preset |
There was a problem hiding this comment.
Instead of duplicating this mega long string concat, can we do it once higher up and then cache it and reuse it under a new name? That then also carries less risk of breaking again in the future when adding another new substring to it.
There was a problem hiding this comment.
I don't know how to do that
There was a problem hiding this comment.
Chat Gippy says:
Yes. In GitHub Actions, you can concatenate strings and store the result in a local variable, but the exact syntax depends on where you want the variable to exist.
Within a shell step
This is usually the simplest:
- name: Build string
run: |
PREFIX="hello"
SUFFIX="world"
RESULT="${PREFIX}-${SUFFIX}"
echo "$RESULT"Persist it for later steps
If you want the variable available in subsequent steps, write it to $GITHUB_ENV:
- name: Build string
run: |
PREFIX="hello"
SUFFIX="world"
echo "RESULT=${PREFIX}-${SUFFIX}" >> "$GITHUB_ENV"
- name: Use string
run: |
echo "$RESULT"Using GitHub Actions expressions
You can also concatenate values directly in expressions using format():
env:
RESULT: ${{ format('{0}-{1}', 'hello', 'world') }}Or, for example:
env:
IMAGE_TAG: ${{ format('{0}:{1}', github.repository, github.sha) }}One important distinction: GitHub Actions expressions don't have general-purpose local variable assignment like let x = .... For temporary variables, use the shell; for values needed by later steps, use $GITHUB_ENV; for job/workflow configuration, use env:.
If you show me the specific string you're trying to construct, I can give you the cleanest syntax for your workflow.


Follow up to #3184
Due to me to not Reading the Freaking Manual enough,
+ffmpeglabel is only added to “Configure” step for the job that has it enabled (GeneralsMD win32-vcpkg)Add it everywhere else (job name and other steps) so that it's clear what build has FFmpeg support enabled
No functional changes