Skip to content

Add Windows to CI

Add Windows to CI #680

Workflow file for this run

name: Build
on: [pull_request, push]
jobs:
archlinux:
if: false
runs-on: ubuntu-24.04
container: archlinux/archlinux:base-devel
timeout-minutes: 30
steps:
- name: Install Git
run: sudo pacman -Sy --needed --noconfirm git
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Add Git repo as a safe directory
run: git config --global --add safe.directory `pwd`
- name: Install system dependencies
run: |
sudo pacman -Syu --noconfirm
./setup_archlinux.sh
- name: Generate PDF
run: |
# Add perl modules (biber) to PATH
source /etc/profile
make -j$(nproc) ebook
- uses: actions/upload-artifact@v4
with:
name: e-book PDF (Arch Linux)
path: controls-engineering-in-frc-ebook.pdf
ubuntu:
if: false
runs-on: ubuntu-24.04
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-python@v4
with:
python-version: '3.11'
- name: Install system dependencies
run: ./setup_ubuntu.sh
- name: Generate PDF
run: make -j$(nproc) ebook
- uses: actions/upload-artifact@v4
with:
name: e-book PDF (Ubuntu)
path: controls-engineering-in-frc-ebook.pdf
windows:
runs-on: windows-latest
defaults:
run:
shell: bash
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-python@v4
with:
python-version: '3.11'
- name: Install system dependencies
run: ./setup_windows.sh
- name: Generate PDF
run: |
setx path "%PATH%;C:\texlive\2024\bin\win32"
make -j1 ebook
- uses: actions/upload-artifact@v4
with:
name: e-book PDF (Windows)
path: controls-engineering-in-frc-ebook.pdf
macos:
if: false
runs-on: macos-14
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install system dependencies
run: ./setup_macos.sh
- name: Generate PDF
run: |
eval `/usr/libexec/path_helper`
make -j4 ebook
- uses: actions/upload-artifact@v4
with:
name: e-book PDF (macOS)
path: controls-engineering-in-frc-ebook.pdf