79 lines
1.6 KiB
HCL
79 lines
1.6 KiB
HCL
|
job "example" {
|
||
|
group "group" {
|
||
|
task "task" {
|
||
|
config {
|
||
|
## arbitrary structures to compare HCLv1 and HCLv2
|
||
|
## HCLv2 must parse the same way HCLv1 parser does
|
||
|
|
||
|
|
||
|
# primitive attrs
|
||
|
attr_string = "b"
|
||
|
attr_int = 3
|
||
|
attr_large_int = 21474836470
|
||
|
attr_float = 3.2
|
||
|
|
||
|
# lists attrs
|
||
|
attr_list_string = ["a", "b"]
|
||
|
attr_list_int = [1, 2, 4]
|
||
|
attr_list_float = [1.2, 2.3, 4.2]
|
||
|
attr_list_hetro = [1, "a", 3.4, { "k" = "v" }]
|
||
|
attr_list_empty = []
|
||
|
|
||
|
# map attrs
|
||
|
attr_map = { "KEY" = "VAL", "KEY2" = "VAL2" }
|
||
|
attr_map_empty = {}
|
||
|
|
||
|
# simple blocks
|
||
|
block1 {
|
||
|
k = "b"
|
||
|
key2 = "v2"
|
||
|
}
|
||
|
labeled_block "label1" {
|
||
|
k = "b"
|
||
|
}
|
||
|
multi_labeled_block "label1" "label2" "label3" {
|
||
|
k = "b"
|
||
|
}
|
||
|
|
||
|
# repeated block
|
||
|
repeated_block_type {
|
||
|
a = 2
|
||
|
}
|
||
|
repeated_block_type {
|
||
|
b = 3
|
||
|
}
|
||
|
|
||
|
# repeated blocks with labels
|
||
|
label_repeated "l1" {
|
||
|
a = 1
|
||
|
}
|
||
|
label_repeated "l1" {
|
||
|
a = 2
|
||
|
}
|
||
|
label_repeated "l2" "l21" {
|
||
|
a = 3
|
||
|
}
|
||
|
label_repeated "l2" "l21" "l23" {
|
||
|
a = 4
|
||
|
}
|
||
|
label_repeated "l3" {
|
||
|
a = 5
|
||
|
}
|
||
|
|
||
|
# nested blocks
|
||
|
outer_block "l1" {
|
||
|
level = 1
|
||
|
inner_block "l2" {
|
||
|
level = 2
|
||
|
most_inner "l3" {
|
||
|
level = 3
|
||
|
|
||
|
inner_map = { "K" = "V" }
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|