Skip to content

Bump externals/googletest from 3d787f5 to d83fee1 #562

Bump externals/googletest from 3d787f5 to d83fee1

Bump externals/googletest from 3d787f5 to d83fee1 #562

Workflow file for this run

name: Pull Request
on: pull_request
permissions:
contents: read
concurrency:
group: pull-request-${{github.ref}}
cancel-in-progress: true
jobs:
label:
name: Label
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: write
timeout-minutes: 5
steps:
- name: Apply labels
uses: actions/[email protected]
with:
repo-token: ${{github.token}}
analyze-changes:
name: Analyze Changes
timeout-minutes: 5
runs-on: ubuntu-latest
outputs:
run-build: ${{steps.analyze-changes.outputs.run-build}}
run-check-licenses: ${{steps.analyze-changes.outputs.run-check-licenses}}
run-format-check-c-cpp: ${{steps.analyze-changes.outputs.run-format-check-c-cpp}}
run-format-check-md: ${{steps.analyze-changes.outputs.run-format-check-md}}
changes-externals: ${{steps.analyze-changes.outputs.changes-externals}}
changes-c-cpp: ${{steps.analyze-changes.outputs.changes-c-cpp}}
changes-md: ${{steps.analyze-changes.outputs.changes-md}}
steps:
- name: Checkout
uses: actions/[email protected]
with:
fetch-depth: 0
- name: Analyze changes
id: analyze-changes
shell: bash
run: |
build_ignore=()
while IFS= read -r line || [[ "$line" ]]; do
build_ignore+=(':!'"$line")
done < .build-ignore
build_changes=$(
git diff --name-status origin/master HEAD -- ${build_ignore[@]} |
sort
)
if [ -z "$build_changes" ]; then
build=false
else
build=true
fi
changes_externals=$(
git diff --name-only origin/master HEAD -- \
externals/ ':!externals/CMakeLists.txt' ':!externals/*/*' ':!externals/RmlUI.txt'
)
if [ -z "$changes_externals" ]; then
check_licenses=false
else
check_licenses=true
fi
changes_c_cpp=$(
git diff --diff-filter=d --name-only origin/master HEAD -- \
'*.c' '*.cpp' '*.h' '*.hpp' '*.inl' .clang-format
)
if [ -z "$changes_c_cpp" ]; then
format_check_c_cpp=false
else
format_check_c_cpp=true
changes_c_cpp=$(
echo "$changes_c_cpp" | grep -v .clang-format || true | sort
)
fi
changes_md=$(
git diff --diff-filter=d --name-only origin/master HEAD -- \
'*.md' .markdownlintrc .markdownlintignore
)
if [ -z "$changes_md" ]; then
format_check_md=false
else
format_check_md=true
changes_md=$(
echo "$changes_md" | grep -v .markdownlint || true | sort
)
fi
echo "Run build: $build"
echo "Run license check: $check_licenses"
echo "Run format check (C/C++): $format_check_c_cpp"
echo "Run format check (Markdown): $format_check_md"
if [ -z "$build_changes" ]; then
echo 'Changes affecting build: [none]'
else
echo -e "Changes affecting build:\n$build_changes"
fi
if [ -z "$changes_externals" ]; then
echo 'Changes (Externals): [none]'
else
echo -e "Changes (Externals):\n$changes_externals"
fi
if [ -z "$changes_c_cpp" ]; then
echo 'Changes (C/C++): [none]'
else
echo -e "Changes (C/C++):\n$changes_c_cpp"
fi
if [ -z "$changes_md" ]; then
echo 'Changes (Markdown): [none]'
else
echo -e "Changes (Markdown):\n$changes_md"
fi
delimiter=$(head -c 16 /dev/urandom | base64)
echo "run-build=$build" >> $GITHUB_OUTPUT
echo "run-check-licenses=$check_licenses" >> $GITHUB_OUTPUT
echo "run-format-check-c-cpp=$format_check_c_cpp" >> $GITHUB_OUTPUT
echo "run-format-check-md=$format_check_md" >> $GITHUB_OUTPUT
echo "changes-externals<<$delimiter" >> $GITHUB_OUTPUT
echo "$changes_externals" >> $GITHUB_OUTPUT
echo "$delimiter" >> $GITHUB_OUTPUT
echo "changes-c-cpp<<$delimiter" >> $GITHUB_OUTPUT
echo "$changes_c_cpp" >> $GITHUB_OUTPUT
echo "$delimiter" >> $GITHUB_OUTPUT
echo "changes-md<<$delimiter" >> $GITHUB_OUTPUT
echo "$changes_md" >> $GITHUB_OUTPUT
echo "$delimiter" >> $GITHUB_OUTPUT
ci:
name: CI
needs:
- analyze-changes
uses: ./.github/workflows/.shared-ci.yml
secrets: inherit
with:
run-build: ${{needs.analyze-changes.outputs.run-build == 'true'}}
run-check-licenses: ${{needs.analyze-changes.outputs.run-check-licenses == 'true'}}
run-format-check-c-cpp: ${{needs.analyze-changes.outputs.run-format-check-c-cpp == 'true'}}
run-format-check-md: ${{needs.analyze-changes.outputs.run-format-check-md == 'true'}}
changes-externals: ${{needs.analyze-changes.outputs.changes-externals}}
changes-c-cpp: ${{needs.analyze-changes.outputs.changes-c-cpp}}
changes-md: ${{needs.analyze-changes.outputs.changes-md}}
use-sccache: ${{github.actor != 'dependabot[bot]'}}