Documentation
¶
Index ¶
- Variables
- func CamelToPascalCase(s string) string
- func GenArray_Datasource(d datasource.Attributes, pName string) string
- func GenArray_Resource(d resource.Attributes, pName string) string
- func GenObject_Datasource(d datasource.Attributes, pName string) string
- func GenObject_Resource(d resource.Attributes, pName string) string
- func Gen_ConvertOAStoTFTypes_Datasource(data datasource.Attributes) (string, string, error)
- func Gen_ConvertOAStoTFTypes_Resource(data resource.Attributes) (string, string, error)
- func MakeDataSourceTestTFConfig(readParams *util.RequestParameters) string
- func MakeRefreshFromResponse(attr resource.Attributes, resourceName string) string
- func MakeTestTFConfig(c *util.NcloudCommonRequestType) string
- func NcloudParse(ctx context.Context, document []byte) (util.NcloudSpecification, error)
- func PascalToSnakeCase(s string) string
- func WriteNcloudDataSourceRefresh(resourcesSchema map[string][]byte, spec util.NcloudSpecification, ...) error
- func WriteNcloudDataSourceTests(dataSourcesSchema map[string][]byte, spec util.NcloudSpecification, ...) error
- func WriteNcloudDataSources(dataSourcesSchema map[string][]byte, spec util.NcloudSpecification, ...) error
- func WriteNcloudResourceRefresh(resourcesSchema map[string][]byte, spec util.NcloudSpecification, ...) error
- func WriteNcloudResourceTests(resourcesSchema map[string][]byte, spec util.NcloudSpecification, ...) error
- func WriteNcloudResources(resourcesSchema map[string][]byte, spec util.NcloudSpecification, ...) error
- type BaseTemplate
- type DataSourceTemplate
- func (d *DataSourceTemplate) RenderCreate() []byte
- func (d *DataSourceTemplate) RenderDelete() []byte
- func (d *DataSourceTemplate) RenderImportState() []byte
- func (d *DataSourceTemplate) RenderInitial() []byte
- func (d *DataSourceTemplate) RenderModel() []byte
- func (d *DataSourceTemplate) RenderRead() []byte
- func (d *DataSourceTemplate) RenderRefresh() []byte
- func (d *DataSourceTemplate) RenderTest() []byte
- func (d *DataSourceTemplate) RenderUpdate() []byte
- func (d *DataSourceTemplate) RenderWait() []byte
- type OptionalRequestBody
- type RequestType
- type Template
- func (t *Template) RenderCreate() []byte
- func (t *Template) RenderDelete() []byte
- func (t *Template) RenderImportState() []byte
- func (t *Template) RenderInitial() []byte
- func (t *Template) RenderModel() []byte
- func (t *Template) RenderRead() []byte
- func (t *Template) RenderRefresh() []byte
- func (t *Template) RenderTest() []byte
- func (t *Template) RenderUpdate() []byte
- func (t *Template) RenderWait() []byte
Constants ¶
This section is empty.
Variables ¶
var CreateTemplate string
var DeleteTemplate string
var ImportStateTemplate string
var InitialTemplate string
var InitialTemplateDataSource string
var ModelTemplate string
var ModelTemplateDataSource string
var ReadTemplate string
var ReadTemplateDataSource string
var RefreshTemplate string
var RefreshTemplateDataSource string
var TestTemplate string
var TestTemplateDataSource string
var UpdateTemplate string
var WaitTemplate string
Functions ¶
func CamelToPascalCase ¶
func GenArray_Datasource ¶
func GenArray_Datasource(d datasource.Attributes, pName string) string
func GenArray_Resource ¶
func GenArray_Resource(d resource.Attributes, pName string) string
func GenObject_Datasource ¶
func GenObject_Datasource(d datasource.Attributes, pName string) string
func GenObject_Resource ¶
func GenObject_Resource(d resource.Attributes, pName string) string
func Gen_ConvertOAStoTFTypes_Datasource ¶
func Gen_ConvertOAStoTFTypes_Datasource(data datasource.Attributes) (string, string, error)
generate converter that convert openapi.json schema to terraform type
func Gen_ConvertOAStoTFTypes_Resource ¶
func Gen_ConvertOAStoTFTypes_Resource(data resource.Attributes) (string, string, error)
generate converter that convert openapi.json schema to terraform type
func MakeDataSourceTestTFConfig ¶
func MakeDataSourceTestTFConfig(readParams *util.RequestParameters) string
Data source test file only requires
func MakeRefreshFromResponse ¶
func MakeRefreshFromResponse(attr resource.Attributes, resourceName string) string
func MakeTestTFConfig ¶
func MakeTestTFConfig(c *util.NcloudCommonRequestType) string
func NcloudParse ¶
Parse returns a Specification from the JSON document contents, or any validation errors.
func PascalToSnakeCase ¶
func WriteNcloudDataSourceTests ¶
func WriteNcloudDataSourceTests(dataSourcesSchema map[string][]byte, spec util.NcloudSpecification, outputDir, packageName string) error
WriteDataSources uses the packageName to determine whether to create a directory and package per data source. If packageName is an empty string, this indicates that the flag was not set, and the default behaviour is then to create a package and directory per data source. If packageName is set then all generated code is placed into the same directory and package.
func WriteNcloudDataSources ¶
func WriteNcloudDataSources(dataSourcesSchema map[string][]byte, spec util.NcloudSpecification, outputDir, packageName string) error
WriteDataSources uses the packageName to determine whether to create a directory and package per data source. If packageName is an empty string, this indicates that the flag was not set, and the default behaviour is then to create a package and directory per data source. If packageName is set then all generated code is placed into the same directory and package.
func WriteNcloudResourceTests ¶
func WriteNcloudResourceTests(resourcesSchema map[string][]byte, spec util.NcloudSpecification, outputDir, packageName string) error
WriteResources uses the packageName to determine whether to create a directory and package per resource. If packageName is an empty string, this indicates that the flag was not set, and the default behaviour is then to create a package and directory per resource. If packageName is set then all generated code is placed into the same directory and package.
func WriteNcloudResources ¶
Types ¶
type BaseTemplate ¶
type BaseTemplate interface { // RenderInitial generates small code blocks needed initially. RenderInitial() []byte // RenderCreate generates the Create function. RenderCreate() []byte // RenderRead generates the Read function. RenderRead() []byte // RenderUpdate generates the Update function. RenderUpdate() []byte // RenderDelete generates the Delete function. RenderDelete() []byte // RenderModel generates the model. RenderModel() []byte // RenderRefresh generates the Refresh function. RenderRefresh() []byte // RenderWait generates the Waiting Logic. // Will be Rendered in refresh file. RenderWait() []byte // RenderTest generates the Test logic. RenderTest() []byte // RenderImportState generates the ImportState function. RenderImportState() []byte }
To generate actual data, extract data from config.yml and code-spec.json, and render code for each receiver based on that data.
func NewDataSources ¶
func NewDataSources(spec *util.NcloudSpecification, datasourceName, packageName string) BaseTemplate
func NewResource ¶
func NewResource(spec util.NcloudSpecification, resourceName, packageName string) BaseTemplate
Extracts the data needed for code generation. Currently, it extracts data from config.yml and code-spec.json, but it is planned to unify everything into code-spec.json in the future.
type DataSourceTemplate ¶
type DataSourceTemplate struct {
// contains filtered or unexported fields
}
func (*DataSourceTemplate) RenderCreate ¶
func (d *DataSourceTemplate) RenderCreate() []byte
RenderCreate implements BaseTemplate.
func (*DataSourceTemplate) RenderDelete ¶
func (d *DataSourceTemplate) RenderDelete() []byte
RenderDelete implements BaseTemplate.
func (*DataSourceTemplate) RenderImportState ¶
func (d *DataSourceTemplate) RenderImportState() []byte
RenderImportState implements BaseTemplate.
func (*DataSourceTemplate) RenderInitial ¶
func (d *DataSourceTemplate) RenderInitial() []byte
RenderInitial implements BaseTemplate.
func (*DataSourceTemplate) RenderModel ¶
func (d *DataSourceTemplate) RenderModel() []byte
RenderModel implements BaseTemplate.
func (*DataSourceTemplate) RenderRead ¶
func (d *DataSourceTemplate) RenderRead() []byte
RenderRead implements BaseTemplate.
func (*DataSourceTemplate) RenderRefresh ¶
func (d *DataSourceTemplate) RenderRefresh() []byte
RenderRefresh implements BaseTemplate.
func (*DataSourceTemplate) RenderTest ¶
func (d *DataSourceTemplate) RenderTest() []byte
RenderTest implements BaseTemplate.
func (*DataSourceTemplate) RenderUpdate ¶
func (d *DataSourceTemplate) RenderUpdate() []byte
RenderUpdate implements BaseTemplate.
func (*DataSourceTemplate) RenderWait ¶
func (d *DataSourceTemplate) RenderWait() []byte
RenderWait implements BaseTemplate.
type OptionalRequestBody ¶
type RequestType ¶
type RequestType struct { Parameters []string `json:"parameters,omitempty"` RequestBody *OptionalRequestBody `json:"request_body,omitempty"` Response string `json:"response,omitempty"` }
type Template ¶
type Template struct {
// contains filtered or unexported fields
}