name: Cygwin Build on: [push, pull_request, workflow_dispatch] concurrency: group: ci-${{github.workflow}}-${{ github.ref }} cancel-in-progress: true jobs: build: runs-on: 'windows-latest' steps: - uses: actions/checkout@v2 with: submodules: 'recursive' - name: Install cygwin env: HOME: ${{ runner.workspace }}/ardupilot run: | choco install cygwin --params "/InstallDir:C:\Cygwin /NoStartMenu /NoAdmin" choco install cygwin32-gcc-g++ python37 python37-future python37-lxml python37-pip python37-setuptools python37-wheel git libexpat procps gettext --source cygwin C:\Cygwin\bin\bash --login -c "ln -sf /usr/bin/python3.7 /usr/bin/python && ln -sf /usr/bin/pip3.7 /usr/bin/pip" C:\Cygwin\bin\bash --login -c "python -m pip install empy pexpect" C:\Cygwin\bin\bash --login -c "python -m pip install dronecan --upgrade" - name: Build SITL env: HOME: ${{ runner.workspace }}/ardupilot run: | C:\Cygwin\bin\bash --login -c "Tools/scripts/cygwin_build.sh" - name: Check build files id: check_files uses: andstor/file-existence-action@v1 with: files: "artifacts/ArduPlane.elf.exe, artifacts/ArduCopter.elf.exe, artifacts/ArduHeli.elf.exe, artifacts/ArduRover.elf.exe, artifacts/ArduSub.elf.exe" allow_failure: true - name: Archive build uses: actions/upload-artifact@v2 with: name: binaries path: artifacts retention-days: 7