Skip to content

Phase 1.3: CI/CD Modernization #107

@oberstet

Description

@oberstet

Objective

Implement comprehensive GitHub Actions workflows for automated testing, building, and publishing as part of the WAMP Python stack modernization effort.

See https://github.com/crossbario/crossbar/blob/master/MODERNIZATION.md

Background

This is Phase 1.3 of the modernization roadmap documented in MODERNIZATION.md. Phase 1.2 (Build Tooling & Wheel Building) has been completed and merged.

Tasks

GitHub Actions Workflows

  • Audit current GitHub Actions workflows
  • Add/update main.yml (quality checks, tests, coverage on push/PR)
  • Add/update release.yml (wheel building, PyPI publishing on tag)
  • Integrate reusable actions from .cicd submodule (if applicable)

Matrix Testing

  • Enable CPython matrix testing (3.11, 3.12, 3.13, 3.14)
  • Enable PyPy 3.11 testing
  • Enable multi-OS testing (ubuntu-latest, macos-latest, windows-latest)

Quality Gates

  • Enable ruff lint/format checking in CI
  • Enable mypy type checking in CI
  • Enable pytest with coverage reporting in CI
  • Configure coverage thresholds (if applicable)

Deferred Items from Phase 1.2

  • Phase 1.2.3: Documentation modernization (Furo theme, sphinx-autoapi)
  • Phase 1.2.4: Unit test coverage baseline improvements

Deliverables

  • Comprehensive GitHub Actions workflows (main.yml, release.yml)
  • Matrix testing across Python versions and operating systems
  • Automated quality gates (lint, type check, test, coverage)
  • Updated documentation infrastructure (if time permits)

References

  • Modernization roadmap: MODERNIZATION.md
  • Phase 1.2 PR: #XXX (replace with actual PR number)
  • Branch: modernization-phase-1.3

Notes

This work will be completed with AI assistance per AI_POLICY.md. An audit file will be created at .audit/oberstet_modernization-phase-13.md.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions