YAML
From Teknologisk videncenter
Structure
Block and flow style
Block style
Lists:
fruits:
- apple
- banana
- orange
Maps/dictionary:
address:
street: "H.C. Andersens vej 9"
city: Viborg
zip: 8800
Flow style
Lists:
fruits: [apple, banana, orange]
Maps:/dictionary:
address: {street: "H.C. Andersens vej 9", city: Viborg, zip: 8800 }
Data types
Scalars
- Strings
- text1: "This is a string"
- text2: 'This is also a string'
- text3: This is a string too
- text4: "2999"
- text5: | #Multiline string - Preserve new line chars
Line1 Line2
- text6: > #Multiline string - Convert new line to space
Line1 Line2
- Numbers
- 2999
- 2e+10
- Booleans
- true
- false
- Dates
- "2025-01-01" # ISO-8601 standard
- Null
- Name: null
- Name: ~
- Name:
examples
db_connect:
host: "127.0.0.1"
user: "USERNAME"
password: "PASSWORD"
port: "3306"
database: "nmsdb"
db_create:
# Equipment - devices under network management
equipment: >
CREATE TABLE `equipment` (
`hostname_id` INT NOT NULL AUTO_INCREMENT,
`hostname` VARCHAR(128) DEFAULT NULL,
`name` VARCHAR(128) DEFAULT NULL,
`date_created` date DEFAULT NULL,
`community` VARCHAR(128) DEFAULT NULL,
`snmp_ver` TINYINT DEFAULT NULL,
`interval` INT UNSIGNED DEFAULT NULL,
PRIMARY KEY (`hostname_id`),
UNIQUE(`hostname`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
oids: >
CREATE TABLE `oids` (
`oid_id` INT NOT NULL AUTO_INCREMENT,
`oid` VARCHAR(256),
`easyname` VARCHAR(64),
`description` VARCHAR(512),
PRIMARY KEY (`oid_id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
# Only numeric data allowed in this version
probes: >
CREATE TABLE `probes` (
`probe_id` INT NOT NULL AUTO_INCREMENT,
`oid` INT NOT NULL,
`hostname` INT NOT NULL,
PRIMARY KEY (`probe_id`),
CONSTRAINT `fk_oid_id` FOREIGN KEY (`oid`) REFERENCES `oids` (`oid_id`),
CONSTRAINT `fk_hostname` FOREIGN KEY (`hostname`) REFERENCES `equipment` (`hostname_id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
probe_data: >
CREATE TABLE `probe_data` (
`probe_data_id` INT NOT NULL AUTO_INCREMENT,
`probe` INT NOT NULL,
`timestamp` BIGINT NOT NULL,
`value` BIGINT NOT NULL,
PRIMARY KEY (`probe_data_id`),
CONSTRAINT `fk_probe` FOREIGN KEY (`probe`) REFERENCES `probes` (`probe_id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;