73 lines · yaml
1name: Release Doxygen2 3permissions:4 contents: read5 6on:7 workflow_dispatch:8 inputs:9 release-version:10 description: 'Release Version'11 required: true12 type: string13 upload:14 description: 'Upload documentation'15 required: false16 type: boolean17 18 workflow_call:19 inputs:20 release-version:21 description: 'Release Version'22 required: true23 type: string24 upload:25 description: 'Upload documentation'26 required: false27 type: boolean28 secrets:29 RELEASE_TASKS_USER_TOKEN:30 description: "Secret used to check user permissions."31 required: false32 33jobs:34 release-doxygen:35 name: Build and Upload Release Doxygen36 runs-on: ubuntu-24.0437 permissions:38 contents: write39 env:40 upload: ${{ inputs.upload && !contains(inputs.release-version, 'rc') }}41 steps:42 - name: Checkout LLVM43 uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.044 45 - name: Setup Python env46 uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.047 with:48 cache: 'pip'49 cache-dependency-path: './llvm/docs/requirements.txt'50 51 - name: Install Dependencies52 run: |53 sudo apt-get update54 sudo apt-get install -y \55 doxygen \56 graphviz \57 python3-github \58 ninja-build \59 texlive-font-utils60 pip3 install --user -r ./llvm/docs/requirements.txt61 62 - name: Build Doxygen63 run: |64 ./llvm/utils/release/build-docs.sh -release "${{ inputs.release-version }}" -no-sphinx65 66 - name: Upload Doxygen67 if: env.upload68 env:69 GITHUB_TOKEN: ${{ github.token }}70 USER_TOKEN: ${{ secrets.RELEASE_TASKS_USER_TOKEN }}71 run: |72 ./llvm/utils/release/github-upload-release.py --token "$GITHUB_TOKEN" --release "${{ inputs.release-version }}" --user "${{ github.actor }}" --user-token "$USER_TOKEN" upload --files ./*doxygen*.tar.xz73