mirror of
				https://github.com/raysan5/raylib.git
				synced 2025-11-04 01:34:19 +00:00 
			
		
		
		
	[workflows] (almost) rewrite update_examples.yml workflow (#5130)
* debug print the working directory * trigger it on any branch (temporarily) * nope, wrong fix * dummy commit to trigger the workflow * lets see if this works * trigger the workflow when updating it * nice typo * add missing dollar signs * debug list the contents of the repository * dir/s instead of ls * remove this, no longer needed * backslashes maybe? windows... * this should be a forward slash * remove no longer needed spam * debug check if examples dir exists * LOG is disabled apparently * ... * temporarily disable this step to save time * ubuntu maybe * bash * install deps * link libc * link libm * now to test the rest * emsdk is back * add missing shaders * Update examples collection * add indentation * remove emsdk cache * ignore emsdk cache * Update examples collection * fix errors with the find command * remove emsdk cache now * i forgot to actually add it to gitignore * fix error with git not finding anything to commit * global config instead of repo specific * clone raylib.com repo under the same owner as the raylib repo owner * add proper access token * reorganize it all * remove non-existent example * clone raylib.com before running rexm * no extra slash * Update examples collection * copy updated examples to the right place * remove unnecessary debug line from rexm.c * Update examples collection * Update examples collection * use hardcoded absolute path to make * add debug line * semicolon * fix wrong handling of make path * fix wrong cwd * rebuild raylib for web after installing it * cleanuo * conditionally push to repos, never on PR * build rexm with make for consistency * remove workflow run results * add back the examples report files * pause automatic commits * revert makefile changes * readd removed vs2022 project file --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
This commit is contained in:
		
							
								
								
									
										86
									
								
								.github/workflows/update_examples.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										86
									
								
								.github/workflows/update_examples.yml
									
									
									
									
										vendored
									
									
								
							@@ -4,14 +4,18 @@ on:
 | 
			
		||||
  workflow_dispatch:
 | 
			
		||||
  push:
 | 
			
		||||
    paths:
 | 
			
		||||
      - '.github/workflows/update_examples.yml'
 | 
			
		||||
      - 'examples/**'
 | 
			
		||||
      - 'tools/rexm/**'
 | 
			
		||||
  pull_request:
 | 
			
		||||
    paths:
 | 
			
		||||
      - '.github/workflows/update_examples.yml'
 | 
			
		||||
      - 'examples/**'
 | 
			
		||||
      - 'tools/rexm/**'
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  build:
 | 
			
		||||
    runs-on: windows-latest
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    
 | 
			
		||||
    steps:
 | 
			
		||||
    - name: Checkout
 | 
			
		||||
@@ -22,51 +26,51 @@ jobs:
 | 
			
		||||
      with:
 | 
			
		||||
        version: 'latest'
 | 
			
		||||
        actions-cache-folder: 'emsdk-cache'
 | 
			
		||||
        
 | 
			
		||||
    - name: Setup MSBuild
 | 
			
		||||
      uses: microsoft/setup-msbuild@v2
 | 
			
		||||
        
 | 
			
		||||
    - name: Clone raylib.com repo to update files
 | 
			
		||||
      env:
 | 
			
		||||
        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
 | 
			
		||||
 | 
			
		||||
    - name: Clone raylib.com repo
 | 
			
		||||
      run: |
 | 
			
		||||
        git clone https://x-access-token:${GITHUB_TOKEN}@github.com/raysan5/raylib.com.git
 | 
			
		||||
      shell: cmd
 | 
			
		||||
        
 | 
			
		||||
    - name: Build and run rexm tool (VS2022 solution)
 | 
			
		||||
        git clone https://x-access-token:${{ secrets.RAYLIB_DOT_COM_REPO_TOKEN }}@github.com/$GITHUB_REPOSITORY_OWNER/raylib.com.git
 | 
			
		||||
      shell: bash
 | 
			
		||||
 | 
			
		||||
    - name: Build and run rexm tool (GNU Makefile)
 | 
			
		||||
      # rexm should update all required files in raylib and even raylib.com repo,
 | 
			
		||||
      # but not sure if it can do that from an Action, maybe it requires manual copy 
 | 
			
		||||
      run: |
 | 
			
		||||
        cd tools/rexm/VS2022
 | 
			
		||||
        msbuild.exe rexm.sln /target:rexm /property:Configuration=Release /property:Platform=x64
 | 
			
		||||
        cd ${{ github.workspace }}\tools\rexm\VS2022\build\rexm\bin\x64\Release
 | 
			
		||||
        set REXM_EXAMPLES_BASE_PATH=${{ github.workspace }}\examples
 | 
			
		||||
        set REXM_EXAMPLES_WEB_PATH=${{ github.workspace }}\..\raylib.com\examples
 | 
			
		||||
        set REXM_EXAMPLES_TEMPLATE_FILE_PATH=${{ github.workspace }}\examples\examples_template.c
 | 
			
		||||
        set REXM_EXAMPLES_TEMPLATE_SCREENSHOT_PATH=${{ github.workspace }}\examples\examples_template.png
 | 
			
		||||
        set REXM_EXAMPLES_COLLECTION_FILE_PATH=${{ github.workspace }}\examples\examples_list.txt
 | 
			
		||||
        set REXM_EXAMPLES_VS2022_SLN_FILE=${{ github.workspace }}\projects\VS2022\raylib.sln
 | 
			
		||||
        set EMSDK_PATH=${{ github.workspace }}/emsdk-cache/emsdk-main
 | 
			
		||||
        dir
 | 
			
		||||
        rexm.exe build core_basic_window
 | 
			
		||||
        cd ${{ github.workspace }}\..
 | 
			
		||||
        dir
 | 
			
		||||
      shell: cmd
 | 
			
		||||
  
 | 
			
		||||
    - name: Commit changes to raylib repo
 | 
			
		||||
      run: |
 | 
			
		||||
        #git config user.name "github-actions[bot]"
 | 
			
		||||
        #git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
 | 
			
		||||
        #git add -A
 | 
			
		||||
        #git commit -m "Update examples collection"
 | 
			
		||||
        #git push
 | 
			
		||||
        sudo apt-get update && sudo apt-get install -y libopengl0 libglu1-mesa libx11-dev libxrandr-dev libxcursor-dev libxi-dev libxinerama-dev libgl1-mesa-dev libglu1-mesa-dev
 | 
			
		||||
        cd "${{ github.workspace }}/src"
 | 
			
		||||
        make
 | 
			
		||||
        sudo make install
 | 
			
		||||
        make clean
 | 
			
		||||
        make PLATFORM=PLATFORM_WEB
 | 
			
		||||
        cd ../tools/rexm/
 | 
			
		||||
        make
 | 
			
		||||
        export REXM_EXAMPLES_BASE_PATH="${{ github.workspace }}/examples"
 | 
			
		||||
        export REXM_EXAMPLES_WEB_PATH="${{ github.workspace }}/raylib.com/examples"
 | 
			
		||||
        export REXM_EXAMPLES_TEMPLATE_FILE_PATH="${{ github.workspace }}/examples/examples_template.c"
 | 
			
		||||
        export REXM_EXAMPLES_TEMPLATE_SCREENSHOT_PATH="${{ github.workspace }}/examples/examples_template.png"
 | 
			
		||||
        export REXM_EXAMPLES_COLLECTION_FILE_PATH="${{ github.workspace }}/examples/examples_list.txt"
 | 
			
		||||
        export REXM_EXAMPLES_VS2022_SLN_FILE="${{ github.workspace }}/projects/VS2022/raylib.sln"
 | 
			
		||||
        export EMSDK_PATH="${{ github.workspace }}/emsdk-cache/emsdk-main"
 | 
			
		||||
        ./rexm update
 | 
			
		||||
      shell: bash
 | 
			
		||||
 | 
			
		||||
    - name: Push changes to raylib.com repo
 | 
			
		||||
    - name: Commit changes to raylib repo
 | 
			
		||||
      if: github.event_name == 'push' && false
 | 
			
		||||
      env:
 | 
			
		||||
        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
 | 
			
		||||
      run: |
 | 
			
		||||
        #git config --global user.name "github-actions[bot]"
 | 
			
		||||
        #git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
 | 
			
		||||
        #git add examples
 | 
			
		||||
        #git commit -m "Update web examples"
 | 
			
		||||
        #git push origin
 | 
			
		||||
        git config --global user.name "github-actions[bot]"
 | 
			
		||||
        git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
 | 
			
		||||
        git add -A
 | 
			
		||||
        git commit -m "Update examples collection" || echo "git exited with code 1, nothing changed"
 | 
			
		||||
        git push
 | 
			
		||||
      shell: bash
 | 
			
		||||
 | 
			
		||||
    - name: Push changes to raylib.com repo
 | 
			
		||||
      if: github.event_name == 'push' && false
 | 
			
		||||
      run: |
 | 
			
		||||
        cd raylib.com
 | 
			
		||||
        git add -A
 | 
			
		||||
        git commit -m "Update web examples" || echo "git exited with code 1, nothing changed"
 | 
			
		||||
        git push origin
 | 
			
		||||
      shell: bash
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										3
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							@@ -116,3 +116,6 @@ tools/parser/raylib_parser
 | 
			
		||||
tools/rexm/rexm.exe
 | 
			
		||||
tools/rexm/rexm
 | 
			
		||||
 | 
			
		||||
# CI
 | 
			
		||||
emsdk-cache/
 | 
			
		||||
raylib.com/
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user