Skip to content

Latest commit

 

History

History
36 lines (34 loc) · 4.7 KB

File metadata and controls

36 lines (34 loc) · 4.7 KB

Operational Excellence

🧠 This project was scaffolded using the template oe-python-template with copier, thereby applying the following toolchain:

  1. Linting with Ruff
  2. Static type checking with mypy and pyright
  3. Complete set of pre-commit hooks including detect-secrets and pygrep
  4. Unit and E2E testing with pytest including parallel test execution
  5. Matrix testing in multiple environments with nox
  6. Test coverage reported with Codecov and published as release artifact
  7. CI/CD pipeline automated with GitHub Actions with parallel and reusable workflows, including scheduled testing, release automation, and multiple reporting channels and formats
  8. CI/CD pipeline can be run locally with act
  9. Code quality and security checks with SonarQube and GitHub CodeQL
  10. Dependency monitoring and vulnerability scanning with pip-audit, trivy, Renovate, GitHub Dependabot and Ketryx
  11. Error monitoring and profiling with Sentry (optional)
  12. Logging and metrics with Logfire (optional)
  13. Prepared for uptime monitoring and scheduled tests with betterstack or alternatives
  14. Licenses of dependencies extracted with pip-licenses, matched with allow list, and published as release artifacts in CSV and JSON format for further compliance checks
  15. Generation of attributions from extracted licenses
  16. Software Bill of Materials (SBOM) generated in CycloneDX and SPDX formats with cyclonedx-python resp. trivy, published as release artifacts
  17. Version and release management with bump-my-version
  18. Changelog and release notes generated with git-cliff
  19. Documentation generated with Sphinx including reference documentation for the library, CLI, and API
  20. Documentation published to Read The Docs including generation of PDF and single page HTML versions
  21. Documentation including dynamic badges, setup instructions, contribution guide and security policy
  22. Interactive OpenAPI specification with Swagger
  23. Python package published to PyPI
  24. Multi-stage build of fat (all extras) and slim (no extras) multi-arch (arm64 and amd64) Docker images, running non-root within immutable container
  25. Docker images published to Docker.io and GitHub Container Registry with artifact attestations
  26. One-click development environments with Dev Containers and GitHub Codespaces
  27. Settings for use with VSCode
  28. Settings and custom instructions for use with GitHub Copilot
  29. Automated Pull Request Reviews with Claude Code
  30. ISO compliant Application Lifecycle Management (ALM) with Ketryx

See oe-python-template for how to bootstrap multi-headed applications with the template. Example code generated applies the modulith software architecture pattern with dependency injection, enabling auto-discovery of domain services, CLI commands, API operations and GUI pages.