Read multiple OpenAPI 3.0.x YAML and JSON files and merge them into one large file.
This application is build on cebe/php-openapi
composer require marcelthole/openapi-merge
$ vendor/bin/openapi-merge --help
Usage:
openapi-merge basefile.yml additionalFileA.yml additionalFileB.yml [...] > combined.yml
Argument | Meaning |
---|---|
--match[=MATCH] | Use a RegEx pattern to determine the additionalFiles. If this option is set the additionalFiles could be omitted (multiple values allowed) |
--resolve-references[=RESOLVE-REFERENCES] | Resolve the "$refs" in the given files [default: true] |
-o, --outputfile[=OUTPUTFILE] | Defines the output file for the result. Defaults the result will printed to stdout |
Run the openapi-merge
command within a docker container
docker pull ghcr.io/marcelthole/openapi-merge
docker run -v $PWD:/app --rm ghcr.io/marcelthole/openapi-merge [arguments]
Build the image locally from the sourcecode:
docker build --build-arg COMPOSER_REQUIRE_VERSION=<version> --no-cache -t marcelthole/openapi-merge:dev docker
docker run -v $PWD:/app --rm marcelthole/openapi-merge:dev [arguments]
The output format is determined by the basefile extension.