Contributing templates

Maintaining templates #

For its code generation features, go-swagger uses a bunch of go text/templates.

You’ll find them all there: https://github.com/go-swagger/go-swagger/blob/master/generator/templates

The go-swagger executable is built with an in-memory image of templates. Binary encoded assets are auto-generated from the generator/templates directory using go:embed.

Most templates can be overriden at run time with a config setup.

NOTE: we are carrying out unit tests on codegen mostly by asserting lines in generated code. There is a bunch of test utility functions for this. See generator/*_test.go.

If you want to bring in more advanced testing go programs with your fixtures, please tag those so they don’t affect the go ./... command (e.g. with // +build +integration).

Copyright 2015-2024 the go-swagger maintainers. This documentation is under an Apache 2.0 license.

Site built with HUGO using hugo-book