moved Debug from derive to impl_ptr in bevy_ptr (#18042) #1
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Example Run | |
on: | |
merge_group: | |
pull_request: | |
# also run when pushed to main to update reference screenshots | |
push: | |
branches: | |
- main | |
env: | |
CARGO_TERM_COLOR: always | |
CARGO_INCREMENTAL: 0 | |
CARGO_PROFILE_TEST_DEBUG: 0 | |
CARGO_PROFILE_DEV_DEBUG: 0 | |
jobs: | |
run-examples-macos-metal: | |
runs-on: macos-latest | |
timeout-minutes: 30 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@stable | |
- name: Disable audio | |
# Disable audio through a patch. on github m1 runners, audio timeouts after 15 minutes | |
run: git apply --ignore-whitespace tools/example-showcase/disable-audio.patch | |
- name: Run examples | |
run: | | |
for example in .github/example-run/*.ron; do | |
example_name=`basename $example .ron` | |
echo -n $example_name > last_example_run | |
echo "running $example_name - "`date` | |
time TRACE_CHROME=trace-$example_name.json CI_TESTING_CONFIG=$example cargo run --example $example_name --features "bevy_ci_testing,trace,trace_chrome" | |
sleep 10 | |
if [ `find ./ -maxdepth 1 -name 'screenshot-*.png' -print -quit` ]; then | |
mkdir screenshots-$example_name | |
mv screenshot-*.png screenshots-$example_name/ | |
fi | |
done | |
mkdir traces && mv trace*.json traces/ | |
mkdir screenshots && mv screenshots-* screenshots/ | |
- name: save traces | |
uses: actions/upload-artifact@v4 | |
with: | |
name: example-traces-macos | |
path: traces | |
- name: Save PR number | |
if: ${{ github.event_name == 'pull_request' }} | |
run: | | |
echo ${{ github.event.number }} > ./screenshots/PR | |
- name: save screenshots | |
uses: actions/upload-artifact@v4 | |
with: | |
name: screenshots-macos | |
path: screenshots | |
- uses: actions/upload-artifact@v4 | |
if: ${{ failure() && github.event_name == 'pull_request' }} | |
with: | |
name: example-run-macos | |
path: example-run/ | |
compare-macos-screenshots: | |
if: ${{ github.event_name != 'pull_request' }} | |
name: Compare Macos screenshots | |
needs: [run-examples-macos-metal] | |
uses: ./.github/workflows/send-screenshots-to-pixeleagle.yml | |
with: | |
commit: ${{ github.sha }} | |
branch: ${{ github.ref_name }} | |
artifact: screenshots-macos | |
os: macos | |
secrets: inherit | |
run-examples-linux-vulkan: | |
if: ${{ github.event_name != 'pull_request' }} | |
runs-on: ubuntu-latest | |
timeout-minutes: 30 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Linux dependencies | |
uses: ./.github/actions/install-linux-deps | |
# At some point this may be merged into `install-linux-deps`, but for now it is its own step. | |
- name: Install additional Linux dependencies for Vulkan | |
run: | | |
sudo add-apt-repository ppa:kisak/turtle -y | |
sudo apt-get install --no-install-recommends libxkbcommon-x11-0 xvfb libgl1-mesa-dri libxcb-xfixes0-dev mesa-vulkan-drivers | |
- uses: actions/cache@v4 | |
with: | |
path: | | |
~/.cargo/bin/ | |
~/.cargo/registry/index/ | |
~/.cargo/registry/cache/ | |
~/.cargo/git/db/ | |
target/ | |
key: ${{ runner.os }}-cargo-run-examples-${{ hashFiles('**/Cargo.toml') }} | |
- uses: dtolnay/rust-toolchain@stable | |
- name: Run examples | |
run: | | |
for example in .github/example-run/*.ron; do | |
example_name=`basename $example .ron` | |
echo -n $example_name > last_example_run | |
echo "running $example_name - "`date` | |
time TRACE_CHROME=trace-$example_name.json CI_TESTING_CONFIG=$example xvfb-run cargo run --example $example_name --features "bevy_ci_testing,trace,trace_chrome" | |
sleep 10 | |
if [ `find ./ -maxdepth 1 -name 'screenshot-*.png' -print -quit` ]; then | |
mkdir screenshots-$example_name | |
mv screenshot-*.png screenshots-$example_name/ | |
fi | |
done | |
mkdir traces && mv trace*.json traces/ | |
mkdir screenshots && mv screenshots-* screenshots/ | |
- name: save traces | |
uses: actions/upload-artifact@v4 | |
with: | |
name: example-traces-linux | |
path: traces | |
- name: save screenshots | |
uses: actions/upload-artifact@v4 | |
with: | |
name: screenshots-linux | |
path: screenshots | |
- uses: actions/upload-artifact@v4 | |
if: ${{ failure() && github.event_name == 'pull_request' }} | |
with: | |
name: example-run-linux | |
path: example-run/ | |
compare-linux-screenshots: | |
name: Compare Linux screenshots | |
needs: [run-examples-linux-vulkan] | |
uses: ./.github/workflows/send-screenshots-to-pixeleagle.yml | |
with: | |
commit: ${{ github.sha }} | |
branch: ${{ github.ref_name }} | |
artifact: screenshots-linux | |
os: linux | |
secrets: inherit | |
run-examples-on-windows-dx12: | |
if: ${{ github.event_name != 'pull_request' }} | |
runs-on: windows-latest | |
timeout-minutes: 30 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@stable | |
- name: Run examples | |
shell: bash | |
run: | | |
for example in .github/example-run/*.ron; do | |
example_name=`basename $example .ron` | |
echo -n $example_name > last_example_run | |
echo "running $example_name - "`date` | |
time WGPU_BACKEND=dx12 TRACE_CHROME=trace-$example_name.json CI_TESTING_CONFIG=$example cargo run --example $example_name --features "statically-linked-dxc,bevy_ci_testing,trace,trace_chrome" | |
sleep 10 | |
if [ `find ./ -maxdepth 1 -name 'screenshot-*.png' -print -quit` ]; then | |
mkdir screenshots-$example_name | |
mv screenshot-*.png screenshots-$example_name/ | |
fi | |
done | |
mkdir traces && mv trace*.json traces/ | |
mkdir screenshots && mv screenshots-* screenshots/ | |
- name: save traces | |
uses: actions/upload-artifact@v4 | |
with: | |
name: example-traces-windows | |
path: traces | |
- name: save screenshots | |
uses: actions/upload-artifact@v4 | |
with: | |
name: screenshots-windows | |
path: screenshots | |
- uses: actions/upload-artifact@v4 | |
if: ${{ failure() && github.event_name == 'pull_request' }} | |
with: | |
name: example-run-windows | |
path: example-run/ | |
compare-windows-screenshots: | |
name: Compare Windows screenshots | |
needs: [run-examples-on-windows-dx12] | |
uses: ./.github/workflows/send-screenshots-to-pixeleagle.yml | |
with: | |
commit: ${{ github.sha }} | |
branch: ${{ github.ref_name }} | |
artifact: screenshots-windows | |
os: windows | |
secrets: inherit |