Skip to content

feat: support arm platforms and custom binaries #58

feat: support arm platforms and custom binaries

feat: support arm platforms and custom binaries #58

Workflow file for this run

name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
tests:
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
subdir: [base, kwargs, doxyfile, latex, nested, custom, awesome]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Build ${{ matrix.subdir }}
run: bazel build //${{ matrix.subdir }}:doxygen
working-directory: examples
- name: Check output
uses: andstor/file-existence-action@v3
with:
files: "examples/bazel-bin/${{ matrix.subdir }}/html/index.html"
fail: true
- name: Check doxygen version in produced index.html
run: grep 'Doxygen 1.12.0' examples/bazel-bin/${{ matrix.subdir }}/html/index.html
shell: bash
tests-system-installation:
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
subdir: [base, kwargs, doxyfile, latex, nested, custom, awesome]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Install doxygen
uses: ssciwr/doxygen-install@v1
with:
version: "1.9.7"
- name: Enable use of system doxygen by decommenting the module extension line
uses: richardrigutins/replace-in-files@v2
with:
search-text: '# doxygen_extension.configuration(version = "0.0.0")'
replacement-text: doxygen_extension.configuration(version = "0.0.0")
files: examples/MODULE.bazel
- name: Build ${{ matrix.subdir }}
run: bazel build //${{ matrix.subdir }}:doxygen
working-directory: examples
- name: Check output
uses: andstor/file-existence-action@v3
with:
files: "examples/bazel-bin/${{ matrix.subdir }}/html/index.html"
fail: true
- name: Check doxygen version in produced index.html
run: grep 'Doxygen 1.9.7' examples/bazel-bin/${{ matrix.subdir }}/html/index.html
shell: bash
tests-multiple-installations:
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
subdir: [base, kwargs, doxyfile, latex, nested, custom, awesome]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Install doxygen
uses: ssciwr/doxygen-install@v1
- name: Enable use of windows doxygen by decommenting the module extension line
uses: richardrigutins/replace-in-files@v2
with:
search-text: '# doxygen_extension.configuration(version = "1.11.0", sha256 = "478fc9897d00ca181835d248a4d3e5c83c26a32d1c7571f4321ddb0f2e97459f", platform = "windows")'
replacement-text: doxygen_extension.configuration(version = "1.11.0", sha256 = "478fc9897d00ca181835d248a4d3e5c83c26a32d1c7571f4321ddb0f2e97459f", platform = "windows")
files: examples/MODULE.bazel
- name: Enable use of mac doxygen by decommenting the module extension line
uses: richardrigutins/replace-in-files@v2
with:
search-text: '# doxygen_extension.configuration(version = "1.12.0", sha256 = "6ace7dde967d41f4e293d034a67eb2c7edd61318491ee3131112173a77344001", platform = "mac")'
replacement-text: doxygen_extension.configuration(version = "1.12.0", sha256 = "6ace7dde967d41f4e293d034a67eb2c7edd61318491ee3131112173a77344001", platform = "mac")
files: examples/MODULE.bazel
- name: Enable use linux doxygen by decommenting the module extension line
uses: richardrigutins/replace-in-files@v2
with:
search-text: '# doxygen_extension.configuration(version = "1.10.0", sha256 = "dcfc9aa4cc05aef1f0407817612ad9e9201d9bf2ce67cecf95a024bba7d39747", platform = "linux")'
replacement-text: doxygen_extension.configuration(version = "1.10.0", sha256 = "dcfc9aa4cc05aef1f0407817612ad9e9201d9bf2ce67cecf95a024bba7d39747", platform = "linux")
files: examples/MODULE.bazel
- name: Build ${{ matrix.subdir }}
run: bazel build //${{ matrix.subdir }}:doxygen
working-directory: examples
- name: Check output
uses: andstor/file-existence-action@v3
with:
files: "examples/bazel-bin/${{ matrix.subdir }}/html/index.html"
fail: true
- name: Check doxygen version in produced index.html (windows)
if: matrix.os == 'windows-latest'
run: grep 'Doxygen 1.11.0' examples/bazel-bin/${{ matrix.subdir }}/html/index.html
shell: bash
- name: Check doxygen version in produced index.html (mac)
if: matrix.os == 'macos-latest'
run: grep 'Doxygen 1.12.0' examples/bazel-bin/${{ matrix.subdir }}/html/index.html
shell: bash
- name: Check doxygen version in produced index.html (linux)
if: matrix.os == 'ubuntu-latest'
run: grep 'Doxygen 1.10.0' examples/bazel-bin/${{ matrix.subdir }}/html/index.html
shell: bash
tests-local-executable:
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
subdir: [base]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Install doxygen
uses: ssciwr/doxygen-install@v1
with:
version: "1.9.7"
- name: Move binary to examples folder
run: cp $(which doxygen) examples/doxygen
shell: bash
- name: Enable use of local doxygen by decommenting the module extension line
uses: richardrigutins/replace-in-files@v2
with:
search-text: '# doxygen_extension.configuration(executable = "@@//:doxygen")'
replacement-text: doxygen_extension.configuration(executable = "@@//:doxygen")
files: examples/MODULE.bazel
- name: Export doxygen binary
uses: richardrigutins/replace-in-files@v2
with:
search-text: '# exports_files(["doxygen"])'
replacement-text: exports_files(["doxygen"])
files: examples/BUILD.bazel
- name: Build ${{ matrix.subdir }}
run: bazel build //${{ matrix.subdir }}:doxygen
working-directory: examples
- name: Check output
uses: andstor/file-existence-action@v3
with:
files: "examples/bazel-bin/${{ matrix.subdir }}/html/index.html"
fail: true
- name: Check doxygen version in produced index.html
run: grep 'Doxygen 1.9.7' examples/bazel-bin/${{ matrix.subdir }}/html/index.html
shell: bash