Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // Version for the swagger command Version string // Commit for the swagger command Commit string )
Functions ¶
This section is empty.
Types ¶
type ExpandSpec ¶
type ExpandSpec struct { Compact bool `long:"compact" description:"applies to JSON formatted specs. When present, doesn't prettify the json"` Output flags.Filename `long:"output" short:"o" description:"the file to write to"` Format string `long:"format" description:"the format for the spec document" default:"json" choice:"yaml" choice:"json"` }
ExpandSpec is a command that expands the $refs in a swagger document.
There are no specific options for this expansion.
func (*ExpandSpec) Execute ¶
func (c *ExpandSpec) Execute(args []string) error
Execute expands the spec
type FlattenSpec ¶
type FlattenSpec struct { Compact bool `long:"compact" description:"applies to JSON formatted specs. When present, doesn't prettify the json"` Output flags.Filename `long:"output" short:"o" description:"the file to write to"` Format string `long:"format" description:"the format for the spec document" default:"json" choice:"yaml" choice:"json"` generate.FlattenCmdOptions }
FlattenSpec is a command that flattens a swagger document which will expand the remote references in a spec and move inline schemas to definitions after flattening there are no complex inlined anymore
func (*FlattenSpec) Execute ¶
func (c *FlattenSpec) Execute(args []string) error
Execute flattens the spec
type Generate ¶
type Generate struct { Model *generate.Model `command:"model"` Operation *generate.Operation `command:"operation"` Support *generate.Support `command:"support"` Server *generate.Server `command:"server"` Spec *generate.SpecFile `command:"spec"` Client *generate.Client `command:"client"` }
Generate command to group all generator commands together
type MixinSpec ¶
type MixinSpec struct { ExpectedCollisionCount uint `` /* 130-byte string literal not displayed */ Compact bool `long:"compact" description:"applies to JSON formatted specs. When present, doesn't prettify the json"` Output flags.Filename `long:"output" short:"o" description:"the file to write to"` Format string `long:"format" description:"the format for the spec document" default:"json" choice:"yaml" choice:"json"` }
MixinSpec holds command line flag definitions specific to the mixin command. The flags are defined using struct field tags with the "github.com/jessevdk/go-flags" format.
func (*MixinSpec) Execute ¶
Execute runs the mixin command which merges Swagger 2.0 specs into one spec
Use cases include adding independently versioned metadata APIs to application APIs for microservices.
Typically, multiple APIs to the same service instance is not a problem for client generation as you can create more than one client to the service from the same calling process (one for each API). However, merging clients can improve clarity of client code by having a single client to given service vs several.
Server skeleton generation, ie generating the model & marshaling code, http server instance etc. from Swagger, becomes easier with a merged spec for some tools & target-languages. Server code generation tools that natively support hosting multiple specs in one server process will not need this tool.
func (*MixinSpec) MixinFiles ¶
func (c *MixinSpec) MixinFiles(primaryFile string, mixinFiles []string, w io.Writer) ([]string, error)
MixinFiles is a convenience function for Mixin that reads the given swagger files, adds the mixins to primary, calls FixEmptyResponseDescriptions on the primary, and writes the primary with mixins to the given writer in JSON. Returns the warning messages for collisions that occurred during mixin process and any error.
type PrintVersion ¶
type PrintVersion struct { }
PrintVersion the command
func (*PrintVersion) Execute ¶
func (p *PrintVersion) Execute(args []string) error
Execute this command
type ServeCmd ¶
type ServeCmd struct { BasePath string `long:"base-path" description:"the base path to serve the spec and UI at"` Flavor string `` /* 129-byte string literal not displayed */ DocURL string `long:"doc-url" description:"override the url which takes a url query param to render the doc ui"` NoOpen bool `long:"no-open" description:"when present won't open the the browser to show the url"` NoUI bool `long:"no-ui" description:"when present, only the swagger spec will be served"` Port int `long:"port" short:"p" description:"the port to serve this site" env:"PORT"` Host string `long:"host" description:"the interface to serve this site, defaults to 0.0.0.0" env:"HOST"` }
ServeCmd to serve a swagger spec with docs ui
type ValidateSpec ¶
type ValidateSpec struct { // SchemaURL string `long:"schema" description:"The schema url to use" default:"http://swagger.io/v2/schema.json"` SkipWarnings bool `long:"skip-warnings" description:"when present will not show up warnings upon validation"` StopOnError bool `long:"stop-on-error" description:"when present will not continue validation after critical errors are found"` }
ValidateSpec is a command that validates a swagger document against the swagger specification
func (*ValidateSpec) Execute ¶
func (c *ValidateSpec) Execute(args []string) error
Execute validates the spec