-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathMakefile
More file actions
49 lines (43 loc) · 1.94 KB
/
Makefile
File metadata and controls
49 lines (43 loc) · 1.94 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
VERSION = 1.1.0
GENERATOR_VERSION = 7.17.0
COMMON_PROPS = packageName=flightctl,useOneOfDiscriminatorLookup=true,packageVersion=$(VERSION)
GIT_USER = flightctl
GIT_REPO = python-client
.PHONY: generate-client generate-core generate-v1alpha1 generate-imagebuilder bundle-specs
# Bundle specs (resolve $refs into self-contained files)
bundle-specs:
@mkdir -p api/bundled
npx @redocly/cli bundle api/core/v1beta1/openapi.yaml -o api/bundled/core-v1beta1.yaml
npx @redocly/cli bundle api/core/v1alpha1/openapi.yaml -o api/bundled/core-v1alpha1.yaml
npx @redocly/cli bundle api/imagebuilder/v1alpha1/openapi.yaml -o api/bundled/imagebuilder-v1alpha1.yaml
# Core v1beta1
generate-core: bundle-specs
npx @openapitools/openapi-generator-cli version-manager set $(GENERATOR_VERSION)
npx @openapitools/openapi-generator-cli generate \
-g python \
-i api/bundled/core-v1beta1.yaml \
-o . \
--additional-properties=$(COMMON_PROPS) \
--git-user-id $(GIT_USER) \
--git-repo-id $(GIT_REPO)
# Core v1alpha1
generate-v1alpha1: bundle-specs
npx @openapitools/openapi-generator-cli version-manager set $(GENERATOR_VERSION)
npx @openapitools/openapi-generator-cli generate \
-g python \
-i api/bundled/core-v1alpha1.yaml \
-o . \
--additional-properties=packageName=flightctl.v1alpha1,useOneOfDiscriminatorLookup=true,generateSourceCodeOnly=true,packageVersion=$(VERSION) \
--git-user-id $(GIT_USER) \
--git-repo-id $(GIT_REPO)
# ImageBuilder v1alpha1
generate-imagebuilder: bundle-specs
npx @openapitools/openapi-generator-cli version-manager set $(GENERATOR_VERSION)
npx @openapitools/openapi-generator-cli generate \
-g python \
-i api/bundled/imagebuilder-v1alpha1.yaml \
-o . \
--additional-properties=packageName=flightctl.imagebuilder,useOneOfDiscriminatorLookup=true,generateSourceCodeOnly=true,packageVersion=$(VERSION) \
--git-user-id $(GIT_USER) \
--git-repo-id $(GIT_REPO)
generate-client: generate-core generate-v1alpha1 generate-imagebuilder