Skip to main content
Version: 0.5.0

Database Schema

TNLCM database, created with MongoDB, consists of several collections that store important information about trial network, resource_manager and user. Below is a description of each collection, along with a graphical representation using SQL syntax created with dbdiagram.io.

Collections

Collection resource_manager

FieldTypeDescription
componentstringComponent over which resources are controlled
tn_idstringID of the trial network
quantityintegerAmount of component available

Collection trial_network

FieldTypeDescription
user_createdstringUser that created the trial network
tn_idstringID of the trial network (primary key)
statestringState of the trial network
date_created_utcdateCreation date and time in UTC
directory_pathstringDirectory where trial network is saved
raw_descriptordictRaw descriptor of the trial network
sorted_descriptordictSorted descriptor
deployed_descriptordictCurrent status of descriptor
jenkins_deploydictInformation about the deploy pipeline
jenkins_destroydictInformation about the destroy pipeline
library_https_urlstringLibrary github https url
library_commit_idstringLibrary commit ID
sites_https_urlstringSites github https url
sites_commit_idstringSites commit ID
deployment_sitestringDeployment site of trial network
reportmarkdownReport related to the trial network
resource_managerstringDetermines if resource manager is applied

Collection user

FieldTypeDescription
emailstringUser's email address
usernamestringUser's username (primary key)
passwordstringUser's hashed password
rolestringUser's role
orgstringUser's organization

Relationships

  • resource_manager.tn_id > trial_network.tn_id // resource_manager references trial_network
  • trial_network.user_created > user.username // A user can have multiple trial_networks (one-to-many)

Model

model