package utils import ( "net" "strconv" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) func IncrementIP(ip net.IP) net.IP { if ip == nil { return ip } ip = ip.To4() ip[3]++ return ip } func IDtoInt(val string) (int, error) { i, err := strconv.Atoi(val) return i, err } func IDtoIntPtr(val string) (*int, error) { i, err := strconv.Atoi(val) return &i, err } // Convert pulumi.IDOutput to pulumi.InOutput // // Some hcloud ID's are int based, but pulumi.IDOutput doesn't have a ToIntOutput method func IDtoIntOutput(val pulumi.IDInput) pulumi.IntOutput { return val.ToIDOutput().ToStringOutput().ApplyT(IDtoInt).(pulumi.IntOutput) } // Convert pulumi.IDOutput to pulumi.InOutput // // Some hcloud ID's are int based, but pulumi.IDOutput doesn't have a ToIntOutput method func IDtoIntPtrOutput(val pulumi.IDInput) pulumi.IntPtrOutput { return val.ToIDOutput().ToStringOutput().ApplyT(IDtoIntPtr).(pulumi.IntPtrOutput) }