Skip to content

Commit fb98c3c

Browse files
committed
optimize
1 parent 59f5fcc commit fb98c3c

File tree

9 files changed

+723
-1871
lines changed

9 files changed

+723
-1871
lines changed

MODULE.bazel.lock

+140-401
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

extension.bzl

+19-9
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,26 @@
11
"modules extension to use with openapi-generator-bazel"
2+
23
load("@bazel_tools//tools/build_defs/repo:jvm.bzl", "jvm_maven_import_external")
34

4-
def _openapi_generator_impl(module_ctx):
5+
def get_wanted_module(module_ctx):
6+
wanted_module = None
57
for mod in module_ctx.modules:
6-
for install in mod.tags.client:
7-
jvm_maven_import_external(
8-
name = "openapi_tools_generator_bazel_cli",
9-
artifact_sha256 = install.sha256,
10-
artifact = "org.openapitools:openapi-generator-cli:" + install.version,
11-
server_urls = install.server_urls,
12-
)
8+
if mod.is_root and mod.tags.client:
9+
return mod
10+
if wanted_module == None and mod.tags.client:
11+
wanted_module = mod
12+
return wanted_module
13+
14+
def _openapi_generator_impl(module_ctx):
15+
wanted_module = get_wanted_module(module_ctx)
16+
17+
for install in wanted_module.tags.client:
18+
jvm_maven_import_external(
19+
name = "openapi_tools_generator_bazel_cli",
20+
artifact_sha256 = install.sha256,
21+
artifact = "org.openapitools:openapi-generator-cli:" + install.version,
22+
server_urls = install.server_urls,
23+
)
1324

1425
_cli = tag_class(attrs = {
1526
"version": attr.string(
@@ -26,4 +37,3 @@ openapi_gen = module_extension(
2637
implementation = _openapi_generator_impl,
2738
tag_classes = {"client": _cli},
2839
)
29-

internal/test/bcr/MODULE.bazel.lock

+148-1,461
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
bazel-bcr
2+
bazel-bin
3+
bazel-out
4+
bazel-testlogs

internal/test/older-version/BUILD

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
load("@openapi_tools_generator_bazel//:defs.bzl", "openapi_generator")
2+
3+
openapi_generator(
4+
name = "pylib",
5+
config = "config.yaml",
6+
generator = "java",
7+
spec = "petstore.yaml",
8+
)
+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
module(
2+
name = "openapi_tools_generator_bazel_bcr_tests",
3+
version = "1.2.3",
4+
)
5+
6+
bazel_dep(name = "openapi_tools_generator_bazel", version = "")
7+
local_path_override(
8+
module_name = "openapi_tools_generator_bazel",
9+
path = "../../..",
10+
)
11+
12+
openapi_gen = use_extension("@openapi_tools_generator_bazel//:extension.bzl", "openapi_gen")
13+
openapi_gen.client(
14+
sha256 = "f18d771e98f2c5bb169d1d1961de4f94866d2901abc1e16177dd7e9299834721",
15+
version = "6.5.0",
16+
)
17+
use_repo(openapi_gen, "openapi_tools_generator_bazel_cli")

internal/test/older-version/MODULE.bazel.lock

+274
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# openapi-generator configuration
2+
---
3+
generatorName: python-flask
4+
packageName: openapi.bazel.test
5+
enablePostProcessFile: false
6+
globalProperties:
7+
skipFormModel: false
8+
additionalProperties:
9+
generated: generated
10+
packageRoot: openapi.bazel
+103
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,103 @@
1+
# Copyright 2019 OpenAPI-Generator-Bazel Contributors
2+
3+
swagger: "2.0"
4+
info:
5+
version: 1.0.0
6+
title: Swagger Petstore
7+
license:
8+
name: MIT
9+
host: petstore.swagger.io
10+
basePath: /v1
11+
schemes:
12+
- http
13+
consumes:
14+
- application/json
15+
produces:
16+
- application/json
17+
paths:
18+
/pets:
19+
get:
20+
summary: List all pets
21+
operationId: listPets
22+
tags:
23+
- pets
24+
parameters:
25+
- name: limit
26+
in: query
27+
description: How many items to return at one time
28+
required: false
29+
type: integer
30+
format: int32
31+
responses:
32+
"200":
33+
description: An paged array of pets
34+
headers:
35+
x-next:
36+
type: string
37+
description: A link to the next page of responses
38+
schema:
39+
$ref: "#/definitions/Pets"
40+
default:
41+
description: unexpected error
42+
schema:
43+
$ref: "#/definitions/Error"
44+
post:
45+
summary: Create a pet
46+
operationId: createPets
47+
tags:
48+
- pets
49+
responses:
50+
"201":
51+
description: Null response
52+
default:
53+
description: unexpected error
54+
schema:
55+
$ref: "#/definitions/Error"
56+
/pets/{petId}:
57+
get:
58+
summary: Info for a specific pet
59+
operationId: showPetById
60+
tags:
61+
- pets
62+
parameters:
63+
- name: petId
64+
in: path
65+
required: true
66+
description: The id of the pet to retrieve
67+
type: string
68+
responses:
69+
"200":
70+
description: Expected response to a valid request
71+
schema:
72+
$ref: "#/definitions/Pets"
73+
default:
74+
description: unexpected error
75+
schema:
76+
$ref: "#/definitions/Error"
77+
definitions:
78+
Pet:
79+
required:
80+
- id
81+
- name
82+
properties:
83+
id:
84+
type: integer
85+
format: int64
86+
name:
87+
type: string
88+
tag:
89+
type: string
90+
Pets:
91+
type: array
92+
items:
93+
$ref: "#/definitions/Pet"
94+
Error:
95+
required:
96+
- code
97+
- message
98+
properties:
99+
code:
100+
type: integer
101+
format: int32
102+
message:
103+
type: string

0 commit comments

Comments
 (0)