gendocs

package
v0.0.0-...-ad0ef51 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 21, 2025 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	BackendOverviewTemplate = `	{{ .Description }}

{{ if .Paths -}}
## Paths
{{   range .Paths }}
{{     if .Link -}}
* ` + "[`{{ .Name }}`]({{ .Link }})" + ` — {{ .Synopsis }}.
{{-     else -}}
* ` + "`{{ .Name }}`" + ` — {{ .Synopsis }}.
{{-     end }}
{{   end }}
{{ end }}
`

	PathTemplate = `{{ .Description }}

{{ range .Methods -}}
## ` + "{{ .Summary }}" + `
{{   if .Description }}
{{ .Description }}
{{   end }}

| Method | Path |
|--------|------|
| ` + "`{{ .Name }}`" + ` | ` + "`{{ .Path }}`" + ` |

{{   if .Parameters -}}
### Parameters

{{     range .Parameters -}}
* ` + "`{{ .Name }}`" + ` ({{ .Type }}, {{ .RequiredOrOptional }}{{ if .DefaultValue }}, default: ` + "`{{ .DefaultValue }}`" + `{{ end }}) — {{ .Description }}.
{{     end -}}
{{   end }}
{{   if .Responses -}}
### Responses

{{     range .Responses -}}
* {{ .StatusCode }} — {{ .Description }}. 
{{     end -}}
{{   end }}
{{   if .Examples -}}
### Examples

{{     range .Examples -}}
#### {{ .Description }}
{{       if eq .Method "GET" }}
    curl  --header \"X-Vault-Token: ...\" http://127.0.0.1:8200/v1/PLUGIN_MOOUNT/{{ .Path }} 
{{       else if eq .Method "POST" }}
    curl  --header \"X-Vault-Token: ...\" --request POST --data '{\"key\": \"value\", ...}' http://127.0.0.1:8200/v1/PLUGIN_MOUNT/{{ .Path }} 
{{       else if eq .Method "DELETE" }}
    curl  --header \"X-Vault-Token: ...\" --request DELETE http://127.0.0.1:8200/v1/PLUGIN_MOUNT/{{ .Path }} 
{{       end }}
{{     end -}}
{{   end }}
{{ end }}
`
)

Functions

func ExecuteTemplate

func ExecuteTemplate(tpl string, data interface{}) (string, error)

func FormatPathName

func FormatPathName(pathName string) string

func FormatPathPatternAsFilesystemMarkdownPath

func FormatPathPatternAsFilesystemMarkdownPath(pattern string) (string, error)

func GeneratePages

func GeneratePages(pagesGenerator PagesGenerator, pages []*BackendReferencePage) error

func GeneratePagesForBackend

func GeneratePagesForBackend(ctx context.Context, pagesGenerator PagesGenerator, backend BackendHandle) error

func SplitFilepath

func SplitFilepath(path string) (result []string)

Types

type BackendHandle

type BackendHandle struct {
	LogicalBackendRef   logical.Backend
	FrameworkBackendRef *framework.Backend
	Storage             logical.Storage
}

func NewBackendHandle

func NewBackendHandle(logicalBackendRef logical.Backend, frameworkBackendRef *framework.Backend, storage logical.Storage) BackendHandle

type BackendReferencePage

type BackendReferencePage struct {
	Path string
	Doc  []byte
}

func GetBackendReferencePages

func GetBackendReferencePages(ctx context.Context, backend BackendHandle, formatPathLink func(markdownPagePath string) string) ([]*BackendReferencePage, error)

type BackendTemplateData

type BackendTemplateData struct {
	Description string
	Paths       []*PathTemplateData
}

func NewBackendTemplateData

func NewBackendTemplateData(backendDoc *framework.OASDocument, frameworkBackendRef *framework.Backend, formatPathLink func(markdownPagePath string) string) (*BackendTemplateData, error)

type JekyllPagesGenerator

type JekyllPagesGenerator struct {
	BasePagesUrl   string
	IncludesDir    string
	PagesDir       string
	SidebarYmlPath string
	// contains filtered or unexported fields
}

func NewJekyllPagesGenerator

func NewJekyllPagesGenerator(basePagesUrl, pagesDir, includesDir, sidebarYmlPath string) *JekyllPagesGenerator

func (*JekyllPagesGenerator) Close

func (g *JekyllPagesGenerator) Close() error
func (g *JekyllPagesGenerator) FormatPathLink(markdownPagePath string) string

func (*JekyllPagesGenerator) HandlePath

func (g *JekyllPagesGenerator) HandlePath(pathPattern string, doc []byte) error
func (g *JekyllPagesGenerator) HasFormatPathLink() bool

type JekyllSidebar

type JekyllSidebar struct {
	Name         string
	BasePagesUrl string
	// contains filtered or unexported fields
}

func NewJekyllSidebar

func NewJekyllSidebar(name, basePagesUrl string) *JekyllSidebar

func (*JekyllSidebar) HandlePath

func (s *JekyllSidebar) HandlePath(pathPattern string, _ []byte) error

func (*JekyllSidebar) WriteFile

func (s *JekyllSidebar) WriteFile(path string) error

type JekyllSidebarNode

type JekyllSidebarNode struct {
	Title string
	URL   string
	F     []*JekyllSidebarNode
}

type MarkdownPagesGenerator

type MarkdownPagesGenerator struct {
	Dir string
}

func NewMarkdownPagesGenerator

func NewMarkdownPagesGenerator(dir string) *MarkdownPagesGenerator

func (*MarkdownPagesGenerator) Close

func (w *MarkdownPagesGenerator) Close() error
func (w *MarkdownPagesGenerator) FormatPathLink(_ string) string

func (*MarkdownPagesGenerator) HandlePath

func (w *MarkdownPagesGenerator) HandlePath(pathPattern string, doc []byte) error
func (w *MarkdownPagesGenerator) HasFormatPathLink() bool

type MethodExampleTemplateData

type MethodExampleTemplateData struct {
	Description string
	Path        string
}

type MethodParameterTemplateData

type MethodParameterTemplateData struct {
	Name               string
	Type               string
	DefaultValue       string
	RequiredOrOptional string
	Description        string
}

func NewMethodParameterTemplateData

func NewMethodParameterTemplateData(paramDesc framework.OASParameter, isUrlPattern bool) *MethodParameterTemplateData

func NewMethodParameterTemplateDataFromSchema

func NewMethodParameterTemplateDataFromSchema(paramName, description string, isUrlPattern, isRequired bool, schemaDesc *framework.OASSchema) *MethodParameterTemplateData

type MethodResponseTemplateData

type MethodResponseTemplateData struct {
	StatusCode  string
	Description string
}

type MethodTemplateData

type MethodTemplateData struct {
	Name        string
	Summary     string
	Description string
	Path        string
	Parameters  []*MethodParameterTemplateData
	Responses   []*MethodResponseTemplateData
	Examples    []*MethodExampleTemplateData
}

func NewMethodTemplateData

func NewMethodTemplateData(name, path string, urlParameters []framework.OASParameter, methodDesc *framework.OASOperation, pathComponentSchema *framework.OASSchema) *MethodTemplateData

type PagesGenerator

type PagesGenerator interface {
	HandlePath(pathPattern string, doc []byte) error
	Close() error
	HasFormatPathLink() bool
	FormatPathLink(pathPattern string) string
}

type PathTemplateData

type PathTemplateData struct {
	Name        string
	Link        string
	Description string
	Synopsis    string
	Methods     []*MethodTemplateData
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL