Update documentation-workflow.yml #3
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Awesome Documentation Build | |
on: | |
workflow_dispatch: # Allow manual triggers | |
push: | |
branches: [ master ] | |
jobs: | |
ubuntu-build: | |
name: Ubuntu Build | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Create build directory and run CMake | |
run: | | |
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y | |
sudo apt-get -y update | |
sudo apt-get -y install gcc-13 doxygen graphviz freeglut3-dev qtbase5-dev qttools5-dev libxi-dev | |
mkdir cmake_download_dir | |
DOWNLOAD_FILE_COIN=coin-latest-Ubuntu2204-gcc13-x64.tar.gz | |
RELEASE_ID=`curl -s -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" https://api.github.com/repos/coin3d/coin/releases | jq -r --arg COIN_REPO_TAG_NAME "CI-builds" '.[] | select(.tag_name==$COIN_REPO_TAG_NAME) | .id'` | |
ASSET_ID=`curl -s -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" https://api.github.com/repos/coin3d/coin/releases/$RELEASE_ID | jq -r --arg DOWNLOAD_FILE_COIN "$DOWNLOAD_FILE_COIN" '.assets[] | select(.name==$DOWNLOAD_FILE_COIN) | .id'` | |
export DOWNLOAD_ADDRESS_COIN=https://api.github.com/repos/coin3d/coin/releases/assets/$ASSET_ID | |
echo download file $DOWNLOAD_FILE_COIN from address $DOWNLOAD_ADDRESS_COIN | |
curl -s -S -L -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" -H "Accept: application/octet-stream" -o $DOWNLOAD_FILE_COIN $DOWNLOAD_ADDRESS_COIN | |
tar xzf $DOWNLOAD_FILE_COIN -C cmake_download_dir | |
DOWNLOAD_FILE_SOQT=soqt-latest-Qt5.15-Ubuntu2204-gcc13-x64.tar.gz | |
RELEASE_ID=`curl -s -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" https://api.github.com/repos/coin3d/soqt/releases | jq -r --arg SOQT_REPO_TAG_NAME "CI-builds" '.[] | select(.tag_name==$SOQT_REPO_TAG_NAME) | .id'` | |
ASSET_ID=`curl -s -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" https://api.github.com/repos/coin3d/soqt/releases/$RELEASE_ID | jq -r --arg DOWNLOAD_FILE_SOQT "$DOWNLOAD_FILE_SOQT" '.assets[] | select(.name==$DOWNLOAD_FILE_SOQT) | .id'` | |
export DOWNLOAD_ADDRESS_SOQT=https://api.github.com/repos/coin3d/soqt/releases/assets/$ASSET_ID | |
echo download file $DOWNLOAD_FILE_SOQT from address $DOWNLOAD_ADDRESS_SOQT | |
curl -s -S -L -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" -H "Accept: application/octet-stream" -o $DOWNLOAD_FILE_SOQT $DOWNLOAD_ADDRESS_SOQT | |
tar xzf $DOWNLOAD_FILE_SOQT -C cmake_download_dir | |
curl -L -o doxygen-1.10.0.linux.bin.tar.gz https://github.com/doxygen/doxygen/releases/download/Release_1_10_0/doxygen-1.10.0.linux.bin.tar.gz | |
tar xzf doxygen-1.10.0.linux.bin.tar.gz | |
export PATH=${{ github.workspace }}/doxygen-1.10.0/bin:$PATH | |
cmake -S . -B cmake_build_dir -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=cmake_install_dir -DCMAKE_PREFIX_PATH=cmake_download_dir/Coin3D -DNUTSNBOLTS_BUILD_AWESOME_DOCUMENTATION=ON | |
- name: Build project | |
run: | | |
export PATH=${{ github.workspace }}/doxygen-1.10.0/bin:$PATH | |
doxygen --version | |
cmake --build cmake_build_dir --target documentation_awesome --config Release -- -j4 | |
- name: Deploy Awesome Documentation to Github Pages | |
uses: peaceiris/actions-gh-pages@v4 | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
publish_dir: cmake_build_dir/html_awesome |