Skip to content

Data Model

Kim edited this page Aug 13, 2016 · 3 revisions

Links

Data Model ``` ` enum NodeStatus { DISABLED, STOPPED, WAITING, RUNNING } enum WorkerStatus { STOPPED, RUNNING } enum ActionStatus { PENDING, COMPLETED, ERROR } enum Actions { KILL, START_WORKER, STOP_WORKER } enum ConfigurationKeys { VERSION, MAX_WORKERS }

entity Node { name String required, secret String required, status NodeStatus, date ZonedDateTime, hostname String, ip String, os String, }

entity Worker { status WorkerStatus, }

entity Command { description String, command String, args String, }

entity Config { key ConfigurationKeys required, value String required, }

entity Output { message String required, }

entity Action { action Actions required, args String, status ActionStatus, date ZonedDateTime, }

relationship OneToMany { Node{worker} to Worker{node(name)} } relationship OneToMany { Node{action(name)} to Action{node(name)} } relationship OneToMany { Node{output(message)} to Output{node(name)} } relationship OneToMany { Node{config(key)} to Config{node(name)} }

relationship OneToMany { Worker{output(message)} to Output{worker} } relationship OneToOne { Worker{command(description)} to Command{worker} }

paginate Config, Worker, Output, Node with pagination service Config, Worker, Output, Node with serviceClass

Clone this wiki locally