Skip to content

Latest commit

 

History

History

R014

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

R014

The R014 analyzer reports when CreateFunc, CreateContextFunc, DeleteFunc, DeleteContextFunc, ReadFunc, ReadContextFunc, UpdateFucn, and UpdateContextFunc declarations do not use d as the name for the *schema.ResourceData parameter or meta as the name for the interface{} parameter. This parameter naming is the standard convention for resources.

Flagged Code

// Non-Context Functions

func resourceExampleThingCreate(invalid *schema.ResourceData, meta interface{}) error { /* ... */ }

func resourceExampleThingRead(d *schema.ResourceData, invalid interface{}) error { /* ... */ }

func resourceExampleThingDelete(invalid *schema.ResourceData, invalid interface{}) error { /* ... */ }

// Context Functions

func resourceExampleThingCreate(ctx context.Context, invalid *schema.ResourceData, meta interface{}) diag.Diagnostics { /* ... */ }

func resourceExampleThingRead(ctx context.Context, d *schema.ResourceData, invalid interface{}) diag.Diagnostics { /* ... */ }

func resourceExampleThingDelete(ctx context.Context, invalid *schema.ResourceData, invalid interface{}) diag.Diagnostics { /* ... */ }

Passing Code

// Non-Context Functions

func resourceExampleThingCreate(d *schema.ResourceData, meta interface{}) error { /* ... */ }

func resourceExampleThingRead(d *schema.ResourceData, meta interface{}) error { /* ... */ }

func resourceExampleThingDelete(d *schema.ResourceData, meta interface{}) error { /* ... */ }

// Context Functions

func resourceExampleThingCreate(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { /* ... */ }

func resourceExampleThingRead(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { /* ... */ }

func resourceExampleThingDelete(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { /* ... */ }

Ignoring Reports

Singular reports can be ignored by adding the a //lintignore:R014 Go code comment at the end of the offending line or on the line immediately proceding, e.g.

//lintignore:R014
func resourceExampleThingCreate(invalid *schema.ResourceData, meta interface{}) error { /* ... */ }