Fix Ci #44
This file contains hidden or 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: CI | ||
| on: | ||
| workflow_dispatch: | ||
| pull_request: | ||
| branches: | ||
| - main | ||
| push: | ||
| branches: | ||
| - main | ||
| jobs: | ||
| build-windows: | ||
| runs-on: windows-latest | ||
| defaults: | ||
| run: | ||
| shell: msys2 {0} | ||
| steps: | ||
| - name: Checkout code | ||
| uses: actions/checkout@v4 | ||
| with: | ||
| submodules: true | ||
| - name: Setup MSYS2 | ||
| uses: msys2/setup-msys2@v2 | ||
| with: | ||
| msystem: UCRT64 | ||
| update: true | ||
| pacboy: >- | ||
| git:p | ||
| gcc:p | ||
| cmake:p | ||
| ninja:p | ||
| gtk3:p | ||
| glew:p | ||
| - name: Setup Environment Variables | ||
| run: | | ||
| COMMIT_ID=${{ github.event.pull_request.head.sha }} | ||
| COMMIT_ID=${COMMIT_ID:-${{ github.sha }}} | ||
| BUILD_SUFFIX=ci-$(date '+%Y%m%d')-$(git rev-parse --short ${COMMIT_ID}) | ||
| VERSION=$(grep project CMakeLists.txt | awk '{for(i=1;i<=NF;i++) if($i=="VERSION") print $(i+1)}') | ||
| AIRCRAFT_DIR=${build/out/Aircraft/Extra Aircraft/NK_FPVSurfwing} | ||
| OUTPUT_DIR="${${AIRCRAFT_DIR}/plugins/INAV-X-Plane-XITL/64} | ||
| run: | | ||
| COMMIT_ID=${{ github.event.pull_request.head.sha }} | ||
| COMMIT_ID=${COMMIT_ID:-${{ github.sha }}} | ||
| BUILD_SUFFIX=ci-$(date '+%Y%m%d')-$(git rev-parse --short ${COMMIT_ID}) | ||
| VERSION=$(grep project CMakeLists.txt | awk '{for(i=1;i<=NF;i++) if($i=="VERSION") print $(i+1)}') | ||
| AIRCRAFT_DIR=${build/out/Aircraft/Extra Aircraft/NK_FPVSurfwing} | ||
| OUTPUT_DIR="${${AIRCRAFT_DIR}/plugins/INAV-X-Plane-XITL/64} | ||
| echo "OUTPUT_DIR=${OUTPUT_DIR}" >> $GITHUB_ENVshell: msys2 {0} | ||
| echo "AIRCRAFT_DIR=${AIRCRAFT_DIR}" >> $GITHUB_ENV | ||
| echo "BUILD_SUFFIX=${BUILD_SUFFIX}" >> $GITHUB_ENV | ||
| echo "BUILD_NAME=INAV-XITL-${VERSION}-${BUILD_SUFFIX}-Linux" >> $GITHUB_ENV | ||
| - name: Prepare Output Directory | ||
| run: | | ||
| mkdir -p "${{env.OUTPUT_DIR}}" | ||
| cp -r aircraft/NK_FPVSurfwing/* "${{env.AIRCRAFT_DIR}}" | ||
| mkdir -p "${{env.OUTPUT_DIR}}/assets" | ||
| cp -r src/assets/* "${{env.OUTPUT_DIR}}/assets" | ||
| mkdir -p "${{env.OUTPUT_DIR}}/shaders" | ||
| cp -r src/shaders/* "${{env.OUTPUT_DIR}}/shaders" | ||
| - name: Build the Project | ||
| run: | | ||
| cd build | ||
| cmake -GNinja -DOUTPUT_DIR="../${{env.OUTPUT_DIR}}" .. | ||
| ninja | ||
| - name: Upload Artifacts | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: ${{env.BUILD_NAME}} | ||
| path: build/out/** | ||
| build-linux: | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - name: Checkout code | ||
| uses: actions/checkout@v4 | ||
| with: | ||
| submodules: true | ||
| - name: Install dependencies | ||
| run: sudo apt-get update && sudo apt-get -y install -y ninja-build cmake gcc g++ libglew-dev libgl-dev libglu1-mesa-dev libalut-dev libgtk-3-dev pkg-config | ||
| - name: Setup Environment Variables | ||
| run: | | ||
| COMMIT_ID=${{ github.event.pull_request.head.sha }} | ||
| COMMIT_ID=${COMMIT_ID:-${{ github.sha }}} | ||
| BUILD_SUFFIX=ci-$(date '+%Y%m%d')-$(git rev-parse --short ${COMMIT_ID}) | ||
| VERSION=$(grep project CMakeLists.txt | awk '{for(i=1;i<=NF;i++) if($i=="VERSION") print $(i+1)}') | ||
| AIRCRAFT_DIR=${build/out/Aircraft/Extra Aircraft/NK_FPVSurfwing} | ||
| OUTPUT_DIR="${${AIRCRAFT_DIR}/plugins/INAV-X-Plane-XITL/64} | ||
| echo "OUTPUT_DIR=${OUTPUT_DIR}" >> $GITHUB_ENV | ||
| echo "AIRCRAFT_DIR=${AIRCRAFT_DIR}" >> $GITHUB_ENV | ||
| echo "BUILD_SUFFIX=${BUILD_SUFFIX}" >> $GITHUB_ENV | ||
| echo "BUILD_NAME=INAV-XITL-${VERSION}-${BUILD_SUFFIX}-Linux" >> $GITHUB_ENV | ||
| - name: Prepare Output Directory | ||
| run: | | ||
| mkdir -p "${{env.OUTPUT_DIR}}" | ||
| cp -r aircraft/NK_FPVSurfwing/* "${{env.AIRCRAFT_DIR}}" | ||
| mkdir -p "${{env.OUTPUT_DIR}}/assets" | ||
| cp -r src/assets/* "${{env.OUTPUT_DIR}}/assets" | ||
| mkdir -p "${{env.OUTPUT_DIR}}/shaders" | ||
| cp -r src/shaders/* "${{env.OUTPUT_DIR}}/shaders" | ||
| - name: Build the Project | ||
| run: | | ||
| cd build | ||
| cmake -GNinja -DOUTPUT_DIR="../${{env.OUTPUT_DIR}}" .. | ||
| ninja | ||
| - name: Upload Artifacts | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: ${{env.BUILD_NAME}} | ||
| path: build/out/** | ||