#8 - Clone of pr_test_3 #91
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: VoronCI PR Test CI | |
run-name: "#${{github.event.number}} - ${{github.event.pull_request.title}}" | |
on: | |
pull_request: | |
types: [opened, reopened, synchronize, labeled] | |
env: | |
VORON_TOOLKIT_OUTPUT_DIR: ${{ github.workspace }}/workflow_output | |
VORON_TOOLKIT_INPUT_DIR: ${{ github.workspace }}/tests/test_repository_root/printer_mods | |
VORON_TOOLKIT_GH_STEP_SUMMARY: true | |
VORON_TOOLKIT_VERBOSE: true | |
GITHUB_EVENT_CONTEXT: ${{ toJson(github.event) }} | |
jobs: | |
voron_ci_skip: | |
if: ${{ github.event.action != 'labeled' || !contains( github.event.pull_request.labels.*.name, 'Ready for CI')}} | |
runs-on: ubuntu-latest | |
steps: | |
- name: Save Github Event Payload 💾 | |
id: save-payload | |
run: | | |
mkdir -p ${{ env.VORON_TOOLKIT_OUTPUT_DIR }} | |
echo -n "$GITHUB_EVENT_CONTEXT" >> ${{ env.VORON_TOOLKIT_OUTPUT_DIR }}/event.json | |
# Upload Artifact | |
- name: Upload build artifacts 📦 | |
uses: actions/upload-artifact@65d862660abb392b8c4a3d1195a2108db131dd05 | |
with: | |
name: ci_output | |
path: ${{ env.VORON_TOOLKIT_OUTPUT_DIR }} | |
voron_ci_run: | |
if: ${{ github.event.action == 'labeled' && contains( github.event.pull_request.labels.*.name, 'Ready for CI')}} | |
runs-on: ubuntu-latest | |
continue-on-error: true | |
steps: | |
- id: changed-files | |
# Check out files, separate with newlines to catch whitespace in filenames | |
name: Get changed files 🔀 | |
uses: tj-actions/changed-files@v37 | |
with: | |
separator: "\n" | |
- name: Prepare Sparse Checkout 🧹 | |
# Prepare patterns for sparse checkout | |
id: sanitize_file_list | |
uses: docker://ghcr.io/vorondesign/voron_toolkit_docker:latest | |
env: | |
SPARSE_CHECKOUT_HELPER_INPUT: ${{ steps.changed-files.outputs.all_changed_files }} | |
SPARSE_CHECKOUT_HELPER_MOD_SUBFOLDER: tests/test_repository_root/printer_mods | |
with: | |
args: prepare-sparse-checkout | |
- name: Perform sparse checkout ↪️ | |
# Perform a sparse checkout, checking out only the files of the PR | |
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 | |
with: | |
ref: ${{ github.ref }} | |
path: ${{ github.workspace }} | |
sparse-checkout: ${{ steps.sanitize_file_list.outputs.SPARSE_CHECKOUT_HELPER_OUTPUT }} | |
sparse-checkout-cone-mode: false | |
- name: Save Github Event Payload💾 | |
# Save the event payload (do this after the sparse checkout to avoid the file being cleaned) | |
id: save-payload | |
run: | | |
mkdir -p ${{ env.VORON_TOOLKIT_OUTPUT_DIR }} | |
echo -n "$GITHUB_EVENT_CONTEXT" >> ${{ env.VORON_TOOLKIT_OUTPUT_DIR }}/event.json | |
- name: Check files for whitespace/licenses/file sizes 🔍 | |
# Run whitespace/licenses/file sizes check based on files in the test directory | |
uses: docker://ghcr.io/vorondesign/voron_toolkit_docker:latest | |
continue-on-error: true | |
env: | |
FILE_CHECKER_IGNORE_WARNINGS: true | |
FILE_CHECKER_CHECK_LICENSE: true | |
FILE_CHECKER_CHECK_FILE_SIZE_MB: 2 | |
with: | |
args: check-files | |
- name: Check correct mod/file structure 🔍 | |
# Check the mod structure | |
uses: docker://ghcr.io/vorondesign/voron_toolkit_docker:latest | |
continue-on-error: true | |
env: | |
MOD_STRUCTURE_CHECKER_IGNORE_WARNINGS: false | |
with: | |
args: check-mod-structure | |
- name: Check for STL corruption 🔍 | |
# Run the corruption checker | |
uses: docker://ghcr.io/vorondesign/voron_toolkit_docker:latest | |
continue-on-error: true | |
env: | |
CORRUPTION_CHECKER_IGNORE_WARNINGS: true | |
with: | |
args: check-stl-corruption | |
- name: Check for incorrect STL rotation 🔍 | |
# Run the rotation checker | |
uses: docker://ghcr.io/vorondesign/voron_toolkit_docker:latest | |
continue-on-error: true | |
env: | |
ROTATION_CHECKER_IGNORE_WARNINGS: true | |
ROTATION_CHECKER_IMAGEKIT_ENDPOINT: https://ik.imagekit.io/vorondesign | |
ROTATION_CHECKER_IMAGEKIT_SUBFOLDER: ci_${{github.event.number}} | |
with: | |
args: check-stl-rotation | |
- name: Generate README 📒 | |
# Generate a README | |
uses: docker://ghcr.io/vorondesign/voron_toolkit_docker:latest | |
continue-on-error: true | |
env: | |
README_GENERATOR_MARKDOWN: false | |
README_GENERATOR_JSON: false | |
with: | |
args: generate-readme | |
- name: Upload build artifacts 📦 | |
# Upload Artifact | |
uses: actions/upload-artifact@65d862660abb392b8c4a3d1195a2108db131dd05 | |
with: | |
name: ci_output | |
path: ${{ env.VORON_TOOLKIT_OUTPUT_DIR }} |