in providers/ibm/ibm_is_lb.go [225:298]
func (g *LBGenerator) PostConvertHook() error {
for _, r := range g.Resources {
if r.InstanceInfo.Type != "ibm_is_lb" {
continue
}
for i, pool := range g.Resources {
if pool.InstanceInfo.Type != "ibm_is_lb_pool" {
continue
}
if pool.InstanceState.Attributes["lb"] == r.InstanceState.Attributes["id"] {
g.Resources[i].Item["lb"] = "${ibm_is_lb." + r.ResourceName + ".id}"
}
for i, poolMember := range g.Resources {
if poolMember.InstanceInfo.Type != "ibm_is_lb_pool_member" {
continue
}
poolID := strings.Split(pool.InstanceState.Attributes["id"], "/")[1]
if poolMember.InstanceState.Attributes["pool"] == poolID {
g.Resources[i].Item["pool"] = "${ibm_is_lb_pool." + pool.ResourceName + ".id}"
}
}
}
for i, poolMember := range g.Resources {
if poolMember.InstanceInfo.Type != "ibm_is_lb_pool_member" {
continue
}
if poolMember.InstanceState.Attributes["lb"] == r.InstanceState.Attributes["id"] {
g.Resources[i].Item["lb"] = "${ibm_is_lb." + r.ResourceName + ".id}"
}
}
for i, listener := range g.Resources {
if listener.InstanceInfo.Type != "ibm_is_lb_listener" {
continue
}
if listener.InstanceState.Attributes["lb"] == r.InstanceState.Attributes["id"] {
g.Resources[i].Item["lb"] = "${ibm_is_lb." + r.ResourceName + ".id}"
}
}
for i, listenerPolicy := range g.Resources {
if listenerPolicy.InstanceInfo.Type != "ibm_is_lb_listener_policy" {
continue
}
if listenerPolicy.InstanceState.Attributes["lb"] == r.InstanceState.Attributes["id"] {
g.Resources[i].Item["lb"] = "${ibm_is_lb." + r.ResourceName + ".id}"
}
for i, listenerPolicyRule := range g.Resources {
if listenerPolicyRule.InstanceInfo.Type != "ibm_is_lb_listener_policy_rule" {
continue
}
if listenerPolicyRule.InstanceState.Attributes["listener"] == listenerPolicy.InstanceState.Attributes["id"] {
g.Resources[i].Item["listener"] = "${ibm_is_lb_listener_policy." + listenerPolicy.ResourceName + ".id}"
}
}
}
for i, listenerPolicyRule := range g.Resources {
if listenerPolicyRule.InstanceInfo.Type != "ibm_is_lb_listener_policy_rule" {
continue
}
if listenerPolicyRule.InstanceState.Attributes["lb"] == r.InstanceState.Attributes["id"] {
g.Resources[i].Item["lb"] = "${ibm_is_lb." + r.ResourceName + ".id}"
}
}
}
return nil
}