Skip to content

Commit

Permalink
Updates resources to verify IAM Enabled on modify operations
Browse files Browse the repository at this point in the history
  • Loading branch information
webbbarker committed May 11, 2021
1 parent d8d6f0b commit 0ca4474
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 7 deletions.
17 changes: 14 additions & 3 deletions resource_alks_iamrole.go
Original file line number Diff line number Diff line change
Expand Up @@ -135,8 +135,11 @@ func resourceAlksIamRoleCreate(d *schema.ResourceData, meta interface{}) error {
}

client := meta.(*alks.Client)
resp, err := client.CreateIamRole(roleName, roleType, templateFields, incDefPol, enableAlksAccess)
if err := validateIAMEnabled(client); err != nil {
return err
}

resp, err := client.CreateIamRole(roleName, roleType, templateFields, incDefPol, enableAlksAccess)
if err != nil {
return err
}
Expand All @@ -158,6 +161,9 @@ func resourceAlksIamTrustRoleCreate(d *schema.ResourceData, meta interface{}) er
var enableAlksAccess = d.Get("enable_alks_access").(bool)

client := meta.(*alks.Client)
if err := validateIAMEnabled(client); err != nil {
return err
}

var resp *alks.IamRoleResponse
err := resource.Retry(2*time.Minute, func() *resource.RetryError {
Expand Down Expand Up @@ -194,9 +200,11 @@ func resourceAlksIamRoleDelete(d *schema.ResourceData, meta interface{}) error {
log.Printf("[INFO] ALKS IAM Role Delete")

client := meta.(*alks.Client)
err := client.DeleteIamRole(d.Id())
if err := validateIAMEnabled(client); err != nil {
return err
}

if err != nil {
if err := client.DeleteIamRole(d.Id()); err != nil {
return err
}

Expand Down Expand Up @@ -276,6 +284,9 @@ func updateAlksAccess(d *schema.ResourceData, meta interface{}) error {
var alksAccess = d.Get("enable_alks_access").(bool)
var roleArn = d.Get("arn").(string)
client := meta.(*alks.Client)
if err := validateIAMEnabled(client); err != nil {
return err
}
// create the machine identity
if alksAccess {
_, err := client.AddRoleMachineIdentity(roleArn)
Expand Down
14 changes: 10 additions & 4 deletions resource_alks_ltk.go
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
package main

import (
"log"

alks "github.com/Cox-Automotive/alks-go"
"github.com/hashicorp/terraform/helper/schema"
"log"
)

func resourceAlksLtk() *schema.Resource {
Expand Down Expand Up @@ -49,8 +50,11 @@ func resourceAlksLtkCreate(d *schema.ResourceData, meta interface{}) error {
var iamUsername = d.Get("iam_username").(string)

client := meta.(*alks.Client)
resp, err := client.CreateLongTermKey(iamUsername)
if err := validateIAMEnabled(client); err != nil {
return err
}

resp, err := client.CreateLongTermKey(iamUsername)
if err != nil {
return err
}
Expand Down Expand Up @@ -88,9 +92,11 @@ func resourceAlksLtkDelete(d *schema.ResourceData, meta interface{}) error {
log.Printf("[INFO] ALKS LTK User Delete")

client := meta.(*alks.Client)
_, err := client.DeleteLongTermKey(d.Id())
if err := validateIAMEnabled(client); err != nil {
return err
}

if err != nil {
if _, err := client.DeleteLongTermKey(d.Id()); err != nil {
return err
}

Expand Down

0 comments on commit 0ca4474

Please sign in to comment.