Skip to content

Latest commit

 

History

History
52 lines (30 loc) · 2.15 KB

README.md

File metadata and controls

52 lines (30 loc) · 2.15 KB

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 { /* ... */ }