Skip to content

secboot: complete the decision for auto-repair/reprovision #5124

secboot: complete the decision for auto-repair/reprovision

secboot: complete the decision for auto-repair/reprovision #5124

# SPDX-FileCopyrightText: 2026 Canonical Ltd
# SPDX-License-Identifier: GPL-3.0-only
name: Prepare the REST OpenAPI Specification
on:
pull_request:
push:
branches: [ master ]
jobs:
check-api:
runs-on: ubuntu-latest
name: Check REST API documentation changes
outputs:
api_changed: ${{ steps.changed-api.outputs.any_changed }}
steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 2
- name: Check if changes occurred in the API documentation
id: changed-api
uses: tj-actions/changed-files@22103cc46bda19c2b464ffe86db46df6922fd323 # v47.0.5
with:
files: docs/api/**
process-specification:
needs: check-api
if: |
github.ref == 'refs/heads/master' || needs.check-api.outputs.api_changed == 'true'
runs-on: ubuntu-latest
name: Bundle REST API documentation
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Check licensing/copyright compliance
uses: docker://fsfe/reuse
with:
entrypoint: /bin/sh
args: -c "cd docs/api && reuse lint"
- name: Lint API specification
uses: docker://redocly/cli
with:
args: lint ./docs/api/openapi.yaml
- name: Bundle OpenAPI to JSON
uses: docker://redocly/cli
with:
args: bundle ./docs/api/openapi.yaml --output ./docs/api/openapi.json --ext json
- name: Store generated JSON artifact
uses: actions/upload-artifact@v7
with:
name: openapi-spec
path: docs/api/openapi.json