All Projects → OpenAPITools → openapi-generator-bazel

OpenAPITools / openapi-generator-bazel

Licence: Apache-2.0 license
Bazel plugin for OpenAPI Generator

Programming Languages

Starlark
911 projects

OpenAPI Generator Bazel

This repo was created to integrate the OpenAPI code generation CLI with Bazel.

Quickstart

To use the Bazel bindings provided by this repo within a Bazel workspace, you must do the following steps:

  1. 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 = "c6e4c253f1ae0fbe4d4ded8a719f6647273141d0dc3c0cd8bb074aa7fc3c8d1c",
        urls = ["https://github.com/OpenAPITools/openapi-generator-bazel/releases/download/0.1.5/openapi-tools-generator-bazel-0.1.5.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"
    )
    
  2. 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",
)
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].