package statemgr import ( "fmt" uuid "github.com/hashicorp/go-uuid" ) // NewLineage generates a new lineage identifier string. A lineage identifier // is an opaque string that is intended to be unique in space and time, chosen // when state is recorded at a location for the first time and then preserved // afterwards to allow Terraform to recognize when one state snapshot is a // predecessor or successor of another. func NewLineage() string { lineage, err := uuid.GenerateUUID() if err != nil { panic(fmt.Errorf("Failed to generate lineage: %v", err)) } return lineage }