Skip to content

feat: official Docker image for running orval CLI independently of host Node version #3510

@HenriKCorrea

Description

@HenriKCorrea

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.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or requesthelp wantedExtra attention is needed
No fields configured for Feature.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions