bitbucket.org/Aishee/synsec@v0.0.0-20210414005726-236fc01a153d/pkg/database/ent/schema/machine.go (about)

     1  package schema
     2  
     3  import (
     4  	"time"
     5  
     6  	"entgo.io/ent"
     7  	"entgo.io/ent/schema/edge"
     8  	"entgo.io/ent/schema/field"
     9  )
    10  
    11  // Machine holds the schema definition for the Machine entity.
    12  type Machine struct {
    13  	ent.Schema
    14  }
    15  
    16  // Fields of the Machine.
    17  func (Machine) Fields() []ent.Field {
    18  	return []ent.Field{
    19  		field.Time("created_at").
    20  			Default(time.Now),
    21  		field.Time("updated_at").
    22  			Default(time.Now),
    23  		field.String("machineId").Unique(),
    24  		field.String("password").Sensitive(),
    25  		field.String("ipAddress"),
    26  		field.String("scenarios").MaxLen(4095).Optional(),
    27  		field.String("version").Optional(),
    28  		field.Bool("isValidated").
    29  			Default(false),
    30  		field.String("status").Optional(),
    31  	}
    32  }
    33  
    34  // Edges of the Machine.
    35  func (Machine) Edges() []ent.Edge {
    36  	return []ent.Edge{
    37  		edge.To("alerts", Alert.Type),
    38  	}
    39  }