Skip to content

Reusable CI does not cover polyglot or monorepo repos #32

Description

@gavinbee

reusable-python-ci.yml assumes a flat, single-package Python repo: it installs requirements-dev.txt from the root, then runs ruff check . and pytest -q there.

swimblocks/officials-admin is the org's first polyglot monorepo — packages/core and services/api in Python, services/web in Next.js, plus per-artifact Docker builds. It needs:

  • A working-directory input on the Python workflow, so several Python packages in one repo can each be linted and tested.
  • mypy, which the current workflow does not run.
  • A Node/TypeScript equivalentreusable-node-ci.yml — for vitest, eslint and tsc --noEmit.

Without these, officials-admin writes its own CI from scratch and the org standard stops being the standard on its largest repo. Its plan of record (S1.4) currently specifies bespoke pipelines for exactly this reason.

Worth deciding whether the reusable workflows grow these inputs, or whether a monorepo is simply out of scope for them and officials-admin documents a deviation.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions