ff555dd2b0
Sphinx 3 adds a number of C and C++ friendly directives, making documenting our code much easier.
51 lines
1.5 KiB
YAML
51 lines
1.5 KiB
YAML
name: Generate Documentation
|
|
|
|
on:
|
|
push:
|
|
paths-ignore:
|
|
- "cmake/**"
|
|
pull_request:
|
|
paths:
|
|
- "docs/sphinx/**"
|
|
|
|
jobs:
|
|
docs:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
- name: Bump Version Number
|
|
shell: bash
|
|
if: github.event_name == 'push'
|
|
run: |
|
|
VERTEST="\#define\sLIBOBS_API_\w+_VER\s([0-9]{1,2})"
|
|
VER=""
|
|
MAJOR=""
|
|
while IFS= read -r l
|
|
do
|
|
if [[ $l =~ $VERTEST ]]; then
|
|
if [[ $VER = '' ]]; then MAJOR="${BASH_REMATCH[1]}"; else VER+="."; fi
|
|
VER+="${BASH_REMATCH[1]}"
|
|
fi
|
|
done < "libobs/obs-config.h"
|
|
|
|
SVER="version = '([0-9\.]+)'"
|
|
RVER="version = '$VER'"
|
|
SREL="release = '([0-9\.]+)'"
|
|
RREL="release = '$VER'"
|
|
SCOPY="copyright = '([A-Za-z0-9, ]+)'"
|
|
RCOPY="copyright = '2017-$(date +"%Y"), Hugh Bailey'"
|
|
sed -i -E -e "s/${SVER}/${RVER}/g" -e "s/${SREL}/${RREL}/g" -e "s/${SCOPY}/${RCOPY}/g" docs/sphinx/conf.py
|
|
- uses: totaldebug/sphinx-publish-action@1.2.0
|
|
with:
|
|
sphinx_src: 'docs/sphinx'
|
|
build_only: True
|
|
target_branch: 'master'
|
|
target_path: '../home/_build'
|
|
- uses: actions/upload-artifact@v3
|
|
with:
|
|
name: OBS Studio Documentation (HTML)
|
|
path: |
|
|
${{ runner.temp }}/_github_home/_build
|
|
!${{ runner.temp }}/_github_home/_build/.doctrees
|