CI: Move the documentation check to a separate job #5
Workflow file for this run
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: "CI - Documentation Check" | |
on: | |
push: | |
paths: | |
# NOTE: GitHub Actions do not allow using YAML references, the same path | |
# list is used below for the pull request event. Keep both lists in sync!! | |
# this file as well | |
- .github/workflows/ci-yardoc.yml | |
# all Ruby files | |
- service/Gemfile* | |
- service/*.gemspec | |
- service/**.rb | |
# the D-Bus introspection files | |
- doc/dbus/**.xml | |
pull_request: | |
paths: | |
# NOTE: GitHub Actions do not allow using YAML references, the same path | |
# list is used above for the push event. Keep both lists in sync!! | |
# this file as well | |
- .github/workflows/ci-yardoc.yml | |
# all Ruby files | |
- service/Gemfile* | |
- service/*.gemspec | |
- service/**.rb | |
# the D-Bus introspection files | |
- doc/dbus/**.xml | |
jobs: | |
ruby_doc: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
distro: [ "tumbleweed" ] | |
container: | |
image: registry.opensuse.org/yast/head/containers_${{matrix.distro}}/yast-ruby | |
steps: | |
- name: Configure and refresh repositories | |
# disable unused repositories to have faster refresh | |
run: zypper modifyrepo -d repo-non-oss repo-openh264 repo-update && zypper ref | |
- name: Install Ruby development files and XML tooling | |
run: zypper --non-interactive install git gcc gcc-c++ make openssl-devel ruby-devel augeas-devel xmlstarlet | |
- name: Git Checkout | |
uses: actions/checkout@v3 | |
- name: Install RubyGems dependencies | |
run: bundle config set --local with 'development' && bundle install && bundle info yardoc | |
working-directory: ./service | |
- name: Generate doc | |
run: bundle exec yardoc --fail-on-warning | |
working-directory: ./service | |
- name: Check that introspected API and its docs have not diverged | |
run: make -C check | |
working-directory: ./doc |