The openconfig/qualification-reporter repository defines specifications and
automated tooling for qualifying Network Operating System (NOS) images against
OpenConfig Feature Profiles.
It ingests Ondatra test execution results, release intent specifications, NOS image metadata, and platform integrity measurements (PCR) to generate standardized, auditable qualification reports in protobuf/textproto format.
The repository contains:
- Protobuf Specifications (
proto/):qualification_report.proto: Core data model representing the overall qualification report, test verdicts, software image metadata, and hardware targets.release_intent.proto: Defines the expected feature profile test suite requirements, targets, and criteria for a release qualification.pcr.proto: Platform Configuration Register (PCR) measurements for platform security and attestation validation.
- Report Generator CLI (
cmd/generate_report):- Aggregates Ondatra JSON-Lines test results, image metadata, and release
intent into a unified
QualificationReport. - Validates results against required criteria and checks cryptographic image signatures and digests.
- Aggregates Ondatra JSON-Lines test results, image metadata, and release
intent into a unified
- Go 1.22 or higher
- Protocol Buffers compiler (
protoc) with Go code generation plugins (protoc-gen-go)
Build the generate_report CLI:
go build -o bin/generate_report ./cmd/generate_reportRun the report generator tool:
bin/generate_report \
-intent=path/to/release_intent.textproto \
-test_results=path/to/ondatra_results.jsonl \
-image_metadata=path/to/image_metadata.textproto \
-vendor=ARISTA \
-featureprofiles_commit=<git-sha> \
-out=qualification_report.textprotoSee CONTRIBUTING.md for details on submitting contributions and the Contributor License Agreement (CLA).
Eligibility for the Google Open Source Software Vulnerability Rewards Program is determined by the Google Open Source Software Vulnerability Reward Program Rules.
This project is licensed under the Apache 2.0 License - see the LICENSE file for details.