Honestly i've spent the better part of two days on this, and the solution was to pass in: pulumi.ToStringMap(map[string]string{}) instead of nil
clusterArgs.UserAssignedIdentityId: pulumi.ToStringMap(map[string]string{})
Still can't get the ID directly unfortunately, i have to construct the string myself... But its the next best thing i guess
Would have been real awesome if the example here https://www.pulumi.com/registry/packages/azure-native/api-docs/containerservice/managedcluster/#createupdate-managed-cluster-with-enableahub was even remotely correct