Skip to content

Commit 6ab188b

Browse files
committed
add import to random_pet resource #184
1 parent 6b7230a commit 6ab188b

File tree

2 files changed

+29
-0
lines changed

2 files changed

+29
-0
lines changed

internal/provider/resource_pet.go

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package provider
22

33
import (
4+
"context"
45
"fmt"
56
"strings"
67

@@ -20,6 +21,9 @@ func resourcePet() *schema.Resource {
2021
Create: CreatePet,
2122
Read: schema.Noop,
2223
Delete: schema.RemoveFromState,
24+
Importer: &schema.ResourceImporter{
25+
StateContext: importPet,
26+
},
2327

2428
Schema: map[string]*schema.Schema{
2529
"keepers": {
@@ -71,3 +75,19 @@ func CreatePet(d *schema.ResourceData, meta interface{}) error {
7175

7276
return nil
7377
}
78+
79+
func importPet(ctx context.Context, d *schema.ResourceData, _ interface{}) ([]*schema.ResourceData, error) {
80+
81+
val := d.Id()
82+
d.SetId(val)
83+
84+
if err := d.Set("length", len(val)); err != nil {
85+
return nil, fmt.Errorf("error setting result: %w", err)
86+
}
87+
88+
if err := d.Set("separator", "-"); err != nil {
89+
return nil, fmt.Errorf("error setting result: %w", err)
90+
}
91+
92+
return []*schema.ResourceData{d}, nil
93+
}

website/docs/r/pet.html.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,3 +64,12 @@ The following arguments are supported:
6464
The following attributes are supported:
6565

6666
* `id` - (string) The random pet name
67+
68+
## Import
69+
70+
Random Pet can be imported by just specifying the value:
71+
72+
Example:
73+
```
74+
$ terraform import random_pet.example pet_name
75+
```

0 commit comments

Comments
 (0)