This repo was created to integrate the OpenAPI code generation CLI with Bazel.
If you find this project useful, please kindly consider supporting this project financially via https://opencollective.com/openapi_generator :pray:
To use the Bazel bindings provided by this repo within a Bazel workspace, you must do the following steps:
Add the following code to your WORKSPACE file at the root of your repository
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "openapi_tools_generator_bazel",
sha256 = "ada94694b10f2503c52a48427bd8589323bff5910bd1a7e5212ce34702d0af65",
urls = ["https://github.com/OpenAPITools/openapi-generator-bazel/releases/download/v0.1.6/openapi-tools-generator-bazel-0.1.6.tar.gz"],
)
load("@openapi_tools_generator_bazel//:defs.bzl", "openapi_tools_generator_bazel_repositories")
# You can provide any version of the CLI that has been uploaded to Maven
openapi_tools_generator_bazel_repositories(
openapi_generator_cli_version = "5.1.0",
sha256 = "62f9842f0fcd91e4afeafc33f19a7af41f2927c7472c601310cedfc72ff1bb19"
)
Create a BUILD.bazel file next to the .yaml file you wish to generate code from.
The below example generates a go library within a generated directory named petstore_go
load("@openapi_tools_generator_bazel//:defs.bzl", "openapi_generator")
openapi_generator(
name = "petstore_go",
generator = "go",
spec = "petstore.yaml",
)