Skip to content

camaraproject/tooling

Repository files navigation

tooling

Repository to develop and provide shared tooling across the CAMARA project and its API repositories.

Maintained under the supervision of Commonalities Working Group.

Purpose

This repository provides:

  • Reusable GitHub workflows for API repositories (linting, validation)
  • Shared GitHub Actions with cross-repository value
  • Validation scripts and schemas for release planning
  • Configuration files and documentation for workflows

Scope

Belongs here:

  • Reusable CI workflows consumed by API repositories
  • Shared GitHub Actions used by workflows
  • Validation scripts, schemas, and configuration
  • Supporting documentation for the above

Does not belong here:

  • Project-wide campaigns (see project-administration)
  • Cross-repository orchestration
  • Authoritative project-level data

Current Content

Linting

OpenAPI and test definition linting using Spectral and other linters.

Caller Workflow Templates

Templates for API repositories to add to their .github/workflows/ folder:

Validation

Schema and semantic validation for release planning files.

Release Plan Validation

Validates release-plan.yaml and release-metadata.yaml files against CAMARA schemas.

# Basic validation
python3 validation/scripts/validate-release-plan.py path/to/release-plan.yaml

# With file existence checks
python3 validation/scripts/validate-release-plan.py release-plan.yaml --check-files

API Review (Deprecated)

Legacy API review validation system (Fall25 meta-release specific).

  • Location: api-review/, scripts/
  • Status: Deprecated - not maintained for future releases
  • Workflow: api-review-reusable.yml

Shared Actions

Reusable GitHub Actions for cross-repository use.

  • Location: shared-actions/
  • Actions: validate-release-plan (stub - full implementation pending)

Repository Structure

tooling/
├── .github/
│   └── workflows/               # Reusable workflows (public interface)
│       ├── api-review-reusable.yml  # Deprecated
│       ├── pr_validation.yml
│       └── spectral-oas.yml
├── api-review/                  # Deprecated
│   ├── docs/
│   └── workflows/
├── linting/
│   ├── config/                  # Spectral and linting configuration
│   ├── docs/
│   └── workflows/               # Caller workflow templates
├── scripts/                     # Deprecated
│   └── api_review_validator_v0_6.py
├── shared-actions/
│   └── validate-release-plan/   # Composite GitHub Action (stub)
└── validation/
    ├── docs/
    ├── schemas/                 # JSON/YAML schemas
    │   ├── release-plan-schema.yaml
    │   └── release-metadata-schema.yaml
    └── scripts/
        └── validate-release-plan.py

Release Information

The repository has no (pre)releases yet. Work in progress is within the main branch.

  • Tested versions are in the main branch
  • Versions under development are in feature branches

Contributing

Maintained by Commonalities Working Group.

About

Repository for organization wide tooling in CAMARA, supporting Commonalities, e.g. reusable linting workflows

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •