Skip to content

Commit

Permalink
fix: correct handling of ipds import
Browse files Browse the repository at this point in the history
fix: correct handling of ipds import
  • Loading branch information
stebenz authored May 16, 2023
2 parents fc1ae9c + c0bac51 commit 1298854
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 3 deletions.
3 changes: 2 additions & 1 deletion zitadel/v2/org_idp_jwt/resource.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import (
"github.com/zitadel/zitadel-go/v2/pkg/client/zitadel/idp"

"github.com/zitadel/terraform-provider-zitadel/zitadel/v2/helper"
"github.com/zitadel/terraform-provider-zitadel/zitadel/v2/org_idp_utils"
)

func GetResource() *schema.Resource {
Expand Down Expand Up @@ -62,6 +63,6 @@ func GetResource() *schema.Resource {
CreateContext: create,
UpdateContext: update,
DeleteContext: delete,
Importer: &schema.ResourceImporter{StateContext: schema.ImportStatePassthroughContext},
Importer: &schema.ResourceImporter{StateContext: org_idp_utils.ImportIDPWithOrg()},
}
}
3 changes: 2 additions & 1 deletion zitadel/v2/org_idp_oidc/resource.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import (
"github.com/zitadel/zitadel-go/v2/pkg/client/zitadel/idp"

"github.com/zitadel/terraform-provider-zitadel/zitadel/v2/helper"
"github.com/zitadel/terraform-provider-zitadel/zitadel/v2/org_idp_utils"
)

func GetResource() *schema.Resource {
Expand Down Expand Up @@ -77,6 +78,6 @@ func GetResource() *schema.Resource {
UpdateContext: update,
CreateContext: create,
DeleteContext: delete,
Importer: &schema.ResourceImporter{StateContext: schema.ImportStatePassthroughContext},
Importer: &schema.ResourceImporter{StateContext: org_idp_utils.ImportIDPWithOrgAndSecret(clientSecretVar)},
}
}
21 changes: 20 additions & 1 deletion zitadel/v2/org_idp_utils/funcs.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,10 @@ import (

"github.com/hashicorp/terraform-plugin-sdk/v2/diag"
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
"github.com/zitadel/terraform-provider-zitadel/zitadel/v2/helper"
"github.com/zitadel/zitadel-go/v2/pkg/client/zitadel/management"

"github.com/zitadel/terraform-provider-zitadel/zitadel/v2/helper"

"github.com/zitadel/terraform-provider-zitadel/zitadel/v2/idp_utils"
)

Expand All @@ -29,6 +30,24 @@ func Delete(ctx context.Context, d *schema.ResourceData, m interface{}) diag.Dia
return nil
}

func ImportIDPWithOrg() schema.StateContextFunc {
return func(ctx context.Context, data *schema.ResourceData, i interface{}) ([]*schema.ResourceData, error) {
id := data.Id()
if id == "" {
return nil, fmt.Errorf("%s is not set", idp_utils.IdpIDVar)
}
parts := strings.SplitN(id, ":", 2)
if len(parts) != 2 || parts[0] == "" || parts[1] == "" {
return nil, fmt.Errorf("unexpected format of ID (%s), expected %s:%s", id, OrgIDVar, idp_utils.IdpIDVar)
}
if err := data.Set(OrgIDVar, parts[0]); err != nil {
return nil, err
}
data.SetId(parts[1])
return []*schema.ResourceData{data}, nil
}
}

func ImportIDPWithOrgAndSecret(secretVar string) schema.StateContextFunc {
return func(ctx context.Context, data *schema.ResourceData, i interface{}) ([]*schema.ResourceData, error) {
id := data.Id()
Expand Down

0 comments on commit 1298854

Please sign in to comment.