1+ # #
2+ # # Copyright (c) 2025 The Johns Hopkins University Applied Physics
3+ # # Laboratory LLC.
4+ # #
5+ # # This file is part of the Bundle Protocol Security Library (BSL).
6+ # #
7+ # # Licensed under the Apache License, Version 2.0 (the "License");
8+ # # you may not use this file except in compliance with the License.
9+ # # You may obtain a copy of the License at
10+ # # http://www.apache.org/licenses/LICENSE-2.0
11+ # # Unless required by applicable law or agreed to in writing, software
12+ # # distributed under the License is distributed on an "AS IS" BASIS,
13+ # # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+ # # See the License for the specific language governing permissions and
15+ # # limitations under the License.
16+ # #
17+ # # This work was performed for the Jet Propulsion Laboratory, California
18+ # # Institute of Technology, sponsored by the United States Government under
19+ # # the prime contract 80NM0018D0004 between the Caltech and NASA under
20+ # # subcontract 1700763.
21+ # #
122name : API documentation
223on :
324 schedule :
829 - ' apl-fy[0-9][0-9]'
930 pull_request : {} # any target
1031
11- # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
12- permissions :
13- contents : read
14- pages : write
15- id-token : write
16-
17- # Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
18- # However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
19- concurrency :
20- group : " pages"
21- cancel-in-progress : false
22-
2332jobs :
2433 apidoc :
25- runs-on : ubuntu-22.04
34+ runs-on : ubuntu-24.04
35+ permissions :
36+ contents : read
2637 steps :
2738 - name : Checkout repository
2839 uses : actions/checkout@v4
3546 cmake ninja-build ruby build-essential \
3647 libssl-dev \
3748 doxygen graphviz plantuml texlive texlive-latex-extra dblatex
49+ - name : Dependency build
50+ run : ./deps.sh
3851 - name : Prep
39- run : ./deps.sh && ./ prep.sh -DBUILD_TESTING=OFF -DTEST_MEMCHECK=OFF -DTEST_COVERAGE=OFF -DBUILD_DOCS_API=ON
52+ run : ./prep.sh -DBUILD_TESTING=OFF -DTEST_MEMCHECK=OFF -DTEST_COVERAGE=OFF -DBUILD_DOCS_API=ON
4053 - name : Build
4154 run : |
4255 ./build.sh --target docs-api-html docs-api-pdf
@@ -51,20 +64,30 @@ jobs:
5164 path : testroot/usr/share/doc/bsl/api.tar
5265
5366 deploy :
67+ # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
68+ permissions :
69+ contents : read
70+ pages : write
71+ id-token : write
72+ # Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
73+ # However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
74+ concurrency :
75+ group : " pages"
76+ cancel-in-progress : false
5477 environment :
5578 name : github-pages
5679 url : ${{ steps.deployment.outputs.page_url }}
5780 needs : apidoc
5881 if : github.ref == 'refs/heads/main'
59- runs-on : ubuntu-latest
82+ runs-on : ubuntu-24.04
6083 steps :
6184 - uses : actions/download-artifact@v4
6285 with :
6386 name : bsl-api
6487 path : testroot/usr/share/doc/bsl/
6588 - name : Decompress
6689 working-directory : testroot/usr/share/doc/bsl
67- run : ls -a . && tar -xf api.tar
90+ run : tar -xf api.tar
6891 - name : Setup Pages
6992 uses : actions/configure-pages@v3
7093 - name : Upload artifact
0 commit comments