56 lines
1.3 KiB
YAML
56 lines
1.3 KiB
YAML
name: Meson Build and Deploy
|
|
|
|
on:
|
|
push:
|
|
branches: ["lisp"]
|
|
pull_request:
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: home-1
|
|
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v4
|
|
with:
|
|
tokens: ${{ secrets.GITEA_TOKEN }}
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install -y meson ninja-build gcc
|
|
|
|
- name: Configure Meson
|
|
run: meson setup build
|
|
|
|
- name: Build project
|
|
run: meson compile -C build
|
|
|
|
- name: Run tests
|
|
run: meson test -C build --print-errorlogs || true
|
|
|
|
- name: Upload artifact
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: beluga
|
|
path: build/
|
|
|
|
- name: Install Doxygen
|
|
run: sudo apt-get update && sudo apt-get install -y doxygen graphviz
|
|
|
|
- name: Build Doxygen Docs
|
|
run: doxygen Doxyfile
|
|
|
|
- name: Deploy to Pages
|
|
run: |
|
|
git config user.name "CI Bot"
|
|
git config user.email "ci-bot@homelinuxserver"
|
|
git fetch origin
|
|
git checkout --orphan pages
|
|
git rm -rf .
|
|
cp -r docs/html/* .
|
|
git add .
|
|
git commit -m "Update docs" || echo "No changes to commit"
|
|
git push https://$USERNAME:${{ secrets.GITEA_TOKEN }}@homelinuxserver.ddns.net/git/<username>/<repo>.git pages --force
|
|
|