providerjson

package
v0.0.0-...-0e4e14f Latest Latest
Warning

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

Go to latest
Published: Feb 28, 2025 License: MPL-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const (
	DataSourcesList = "/ProviderSchema-data/v1/data-sources"  // Lists all data sources in the Provider
	ResourcesList   = "/ProviderSchema-data/v1/resources"     // Lists all Resources in the Provider
	DataSourcesPath = "/ProviderSchema-data/v1/data-sources/" // Gets all ProviderSchema data for a data source
	ResourcesPath   = "/ProviderSchema-data/v1/resources/"    // Gets all ProviderSchema data for a Resource
	DumpSchema      = "/ProviderSchema-data/v1/dump/"         // Gets all ProviderSchema
)
View Source
const (
	SchemaTypeSet    = "TypeSet"
	SchemaTypeList   = "TypeList"
	SchemaTypeInt    = "TypeInt"
	SchemaTypeString = "String"
	SchemaTypeBool   = "Bool"
	SchemaTypeFloat  = "Float"
)

Variables

This section is empty.

Functions

func DumpWithWrapper

func DumpWithWrapper(wrapper *ProviderWrapper, data *ProviderJSON) error

func WriteWithWrapper

func WriteWithWrapper(wrapper *ProviderWrapper, data *ProviderJSON, filename string) error

Types

type ProviderJSON

type ProviderJSON schema.Provider

func LoadData

func LoadData() *ProviderJSON

func (*ProviderJSON) DataSources

func (p *ProviderJSON) DataSources() []terraform.DataSource

func (*ProviderJSON) DataSourcesHandler

func (p *ProviderJSON) DataSourcesHandler(w http.ResponseWriter, req *http.Request)

func (*ProviderJSON) DumpAllSchema

func (p *ProviderJSON) DumpAllSchema(w http.ResponseWriter, _ *http.Request)

func (*ProviderJSON) ListDataSources

func (p *ProviderJSON) ListDataSources(w http.ResponseWriter, _ *http.Request)

func (*ProviderJSON) ListResources

func (p *ProviderJSON) ListResources(w http.ResponseWriter, _ *http.Request)

func (*ProviderJSON) Resources

func (p *ProviderJSON) Resources() []terraform.ResourceType

func (*ProviderJSON) ResourcesHandler

func (p *ProviderJSON) ResourcesHandler(w http.ResponseWriter, req *http.Request)

type ProviderSchemaJSON

type ProviderSchemaJSON struct {
	Schema         map[string]SchemaJSON   `json:"schema"`
	ResourcesMap   map[string]ResourceJSON `json:"resources,omitempty"`
	DataSourcesMap map[string]ResourceJSON `json:"dataSources,omitempty"`
}

func ProviderFromRaw

func ProviderFromRaw(input *ProviderJSON) (*ProviderSchemaJSON, error)

type ProviderWrapper

type ProviderWrapper struct {
	ProviderName   string              `json:"providerName"`
	SchemaVersion  string              `json:"schemaVersion"`
	ProviderSchema *ProviderSchemaJSON `json:"providerSchema,omitempty"`
}

func WrappedProvider

func WrappedProvider(input *ProviderJSON, wrapper *ProviderWrapper) (*ProviderWrapper, error)

type ResourceJSON

type ResourceJSON struct {
	Schema   map[string]SchemaJSON `json:"schema"`
	Timeouts *ResourceTimeoutJSON  `json:"timeouts,omitempty"`
}

func ResourceFromMap

func ResourceFromMap(input map[string]interface{}) ResourceJSON

type ResourceTimeoutJSON

type ResourceTimeoutJSON struct {
	Create int `json:"create,omitempty"`
	Read   int `json:"read,omitempty"`
	Delete int `json:"delete,omitempty"`
	Update int `json:"update,omitempty"`
}

type SchemaJSON

type SchemaJSON struct {
	Type        string      `json:"type,omitempty"` // TODO - Needs to be interface{}
	ConfigMode  string      `json:"configMode,omitempty"`
	Optional    bool        `json:"optional,omitempty"`
	Required    bool        `json:"required,omitempty"`
	Default     interface{} `json:"default,omitempty"`
	Description string      `json:"description,omitempty"`
	Computed    bool        `json:"computed,omitempty"`
	ForceNew    bool        `json:"forceNew,omitempty"`
	Elem        interface{} `json:"elem,omitempty"`
	MaxItems    int         `json:"maxItems,omitempty"`
	MinItems    int         `json:"minItems,omitempty"`
}

func SchemaFromMap

func SchemaFromMap(input map[string]interface{}) SchemaJSON

func (*SchemaJSON) UnmarshalJSON

func (b *SchemaJSON) UnmarshalJSON(body []byte) error

Jump to

Keyboard shortcuts

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