Within the current directory:
$ go test -v .
First, run the generator to create openapi_generated.go
file which specifies
the OpenAPIDefinition
for each type, and generate the golden API rule
violation report file . Note that if you do not pass a report
filename (./testdata/golden.report
in the command below) to let the generator
to print API rule violations to the file, the generator will return error to stderr
on API rule violations.
$ go run ../../cmd/openapi-gen/openapi-gen.go \
-i "k8s.io/kube-openapi/test/integration/testdata/listtype,k8s.io/kube-openapi/test/integration/testdata/dummytype,k8s.io/kube-openapi/test/integration/testdata/uniontype" \
-o pkg \
-p generated \
-O openapi_generated \
-r ./testdata/golden.report
The generated file pkg/generated/openapi_generated.go
should have been created.
Next, run the OpenAPI builder to create the Swagger file which includes
the definitions. The output file named golden.json
will be output in
the current directory.
$ go run builder/main.go testdata/golden.json
After the golden spec is generated, please clean up the generated file
pkg/generated/openapi_generated.go
before you commit. It's an intermediate product that doesn't need to be updated in kube-openapi repository. The checked-in file is kept minimum to make sure that test/integration/builder
compiles. Please run:
$ git checkout pkg/generated/openapi_generated.go
to discard any local change.