Skip to content

Commit

Permalink
ci: add workflow to build and publish docs
Browse files Browse the repository at this point in the history
Add a workflow that, for now, builds Doxygen docs and published them on
Github pages.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
  • Loading branch information
gmarull authored and carlescufi committed Apr 9, 2024
1 parent 838de92 commit bd518ad
Show file tree
Hide file tree
Showing 2 changed files with 68 additions and 0 deletions.
61 changes: 61 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# Copyright (c) 2024, Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0

name: Documentation

on: [push, pull_request]

env:
DOXYGEN_VERSION: 1.9.6

jobs:
build:
runs-on: ubuntu-22.04
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Install dependencies
run: |
wget --no-verbose "https://github.com/doxygen/doxygen/releases/download/Release_${DOXYGEN_VERSION//./_}/doxygen-${DOXYGEN_VERSION}.linux.bin.tar.gz"
tar xf doxygen-${DOXYGEN_VERSION}.linux.bin.tar.gz
echo "${PWD}/doxygen-${DOXYGEN_VERSION}/bin" >> $GITHUB_PATH
pip install -r doc/requirements.txt
- name: Build
run: |
cd doc
doxygen
SPHINXOPTS="-W" make html
mkdir deploy
mv _build_doxygen/html deploy/doxygen
mv _build_sphinx/html deploy/sphinx
- name: Setup pages
if: github.event_name != 'pull_request'
uses: actions/configure-pages@v4

- name: Upload pages artifact
if: github.event_name != 'pull_request'
uses: actions/upload-pages-artifact@v3
with:
path: doc/deploy

- name: Upload artifacts
if: github.event_name == 'pull_request'
uses: actions/upload-artifact@v4
with:
path: doc/deploy

deploy:
runs-on: ubuntu-22.04
needs: build
if: github.event_name != 'pull_request'
permissions:
pages: write
id-token: write
steps:
- name: Deploy to GitHub Pages
uses: actions/deploy-pages@v4
7 changes: 7 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,11 @@
# Zephyr Example Application

<a href="https://zephyrproject-rtos.github.io/example-application/doxygen">
<img alt="API Documentation" src="https://img.shields.io/badge/API-documentation-3D578C?logo=c&logoColor=white">
</a>
<a href="https://zephyrproject-rtos.github.io/example-application/sphinx">
<img alt="Documentation" src="https://img.shields.io/badge/documentation-3D578C?logo=sphinx&logoColor=white">
</a>

This repository contains a Zephyr example application. The main purpose of this
repository is to serve as a reference on how to structure Zephyr-based
Expand Down

0 comments on commit bd518ad

Please sign in to comment.