INNER CODE UNIT · Go

getParentIDs

dikhan/terraform-provider-openapi · openapi/common.go:79

func getParentIDs(openAPIResource SpecResource, data *schema.ResourceData) ([]string, error) {
	if openAPIResource == nil {
		return []string{}, errors.New("can't get parent ids from an empty SpecResource")
	}
	if data == nil {
		return []string{}, errors.New("can't get parent ids from a nil ResourceData")
	}
	parentResourceInfo := openAPIResource.GetParentResourceInfo()
	if parentResourceInfo != nil {
		parentResourceNames := parentResourceInfo.GetParentPropertiesNames()
		parentIDs := []string{}
		for _, parentResourceName := range parentResourceNames {
			parentResourceID := data.Get(parentResourceName)
			if parentResourceID == nil {
				return nil, fmt.Errorf("could not find ID value in the state file for subresource parent property '%s'", parentResourceName)
			}
			parentIDs = append(parentIDs, parentResourceID.(string))
		}

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…