Description
Provide an official Docker image for the orval CLI so that projects locked to an older Node LTS version can run orval at build time without requiring a Node version upgrade or additional tooling on developer machines.
Current behavior
Orval requires node >=22.18.0
Although Orval is a code-generation tool installed as a dev dependency, projects that target an older Node LTS (e.g. Node 20) can't run the latest version of Orval (8+) without environment workarounds and tricks (e.g.: mise or extra CI matrix steps).
Thus, every Orval User must own and maintain tooling changes instead of using Orval cleanly.
Proposed behavior
An official Docker image (e.g. ghcr.io/orval-labs/orval:latest and ghcr.io/orval-labs/orval:8.14.0) that bundles the orval CLI with Node 22.
Users invoke code generation by mounting their project directory:
docker run --rm -v $(pwd):/app -w /app ghcr.io/orval-labs/orval orval
No Node installation, no version switching, no CI pipeline changes required on the User side.
Proposed solution
- A minimal Dockerfile at the repo root (FROM node:22-alpine, global install of orval, ENTRYPOINT ["orval"])
- A GitHub Actions workflow triggered on release tags to build and push to ghcr.io/orval-labs/orval with version and latest tags, covering linux/amd64 and linux/arm64
- A short section in the docs / README covering the Docker usage pattern
Other tools like openapi-generator and swagger-codegen both ship official Docker images as their primary consumption method for non-Java projects, for exactly this reason.
Description
Provide an official Docker image for the orval CLI so that projects locked to an older Node LTS version can run orval at build time without requiring a Node version upgrade or additional tooling on developer machines.
Current behavior
Orval requires node >=22.18.0
Although Orval is a code-generation tool installed as a dev dependency, projects that target an older Node LTS (e.g. Node 20) can't run the latest version of Orval (8+) without environment workarounds and tricks (e.g.: mise or extra CI matrix steps).
Thus, every Orval User must own and maintain tooling changes instead of using Orval cleanly.
Proposed behavior
An official Docker image (e.g. ghcr.io/orval-labs/orval:latest and ghcr.io/orval-labs/orval:8.14.0) that bundles the orval CLI with Node 22.
Users invoke code generation by mounting their project directory:
docker run --rm -v $(pwd):/app -w /app ghcr.io/orval-labs/orval orvalNo Node installation, no version switching, no CI pipeline changes required on the User side.
Proposed solution
Other tools like openapi-generator and swagger-codegen both ship official Docker images as their primary consumption method for non-Java projects, for exactly this reason.