drop dataverse test if exists;
create dataverse test;
use dataverse test;

create nodegroup group1 if not exists on nc1, nc2;

// Create a type in test dataverse.
// This type will be referred to in a subsequent script.
create type TestType as closed {
  id: int32,
  name: string
}