add template for directives
This commit is contained in:
@@ -1,5 +1,10 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 0.6.0 - not yet released
|
||||||
|
|
||||||
|
feature:
|
||||||
|
* add template for expressions
|
||||||
|
|
||||||
## 0.5.0 - 2021-09-15
|
## 0.5.0 - 2021-09-15
|
||||||
|
|
||||||
feature:
|
feature:
|
||||||
|
|||||||
@@ -35,6 +35,8 @@ The directory `fuzz/crashers` contains a set of crashes that were found with fuz
|
|||||||
* [ ] add [template expressions](https://github.com/hashicorp/hcl/blob/main/hclsyntax/spec.md#template-expressions)
|
* [ ] add [template expressions](https://github.com/hashicorp/hcl/blob/main/hclsyntax/spec.md#template-expressions)
|
||||||
* [x] add template interpolations
|
* [x] add template interpolations
|
||||||
* [ ] add template directives
|
* [ ] add template directives
|
||||||
|
* [x] add template for expressions
|
||||||
|
* [ ] add template if expressions
|
||||||
* [x] add quoted templates
|
* [x] add quoted templates
|
||||||
* [x] add heredoc templates
|
* [x] add heredoc templates
|
||||||
* [ ] fuzzing
|
* [ ] fuzzing
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ fuzz: fuzzer hcl.dict
|
|||||||
|
|
||||||
.PHONY: clean
|
.PHONY: clean
|
||||||
clean:
|
clean:
|
||||||
rm fuzzer parser.o scanner.o libtree-sitter.a *.log
|
rm -f fuzzer parser.o scanner.o libtree-sitter.a *.log
|
||||||
|
|
||||||
fuzzer: parser.o scanner.o libtree-sitter.a
|
fuzzer: parser.o scanner.o libtree-sitter.a
|
||||||
clang++ -o fuzzer ${FUZZFLAGS} -std=c++11 fuzzer.cc -Itree-sitter/lib/include scanner.o parser.o libtree-sitter.a
|
clang++ -o fuzzer ${FUZZFLAGS} -std=c++11 fuzzer.cc -Itree-sitter/lib/include scanner.o parser.o libtree-sitter.a
|
||||||
@@ -21,6 +21,8 @@ parser.o: ../src/parser.c
|
|||||||
|
|
||||||
hcl.dict: ../grammar.js
|
hcl.dict: ../grammar.js
|
||||||
python gen-dict.py ../src/grammar.json > hcl.dict
|
python gen-dict.py ../src/grammar.json > hcl.dict
|
||||||
|
echo '"$${"' >> hcl.dict
|
||||||
|
echo '"%{"' >> hcl.dict
|
||||||
|
|
||||||
libtree-sitter.a:
|
libtree-sitter.a:
|
||||||
make -C tree-sitter
|
make -C tree-sitter
|
||||||
|
|||||||
@@ -1,13 +0,0 @@
|
|||||||
// comment
|
|
||||||
# comment
|
|
||||||
/*
|
|
||||||
comment
|
|
||||||
*/
|
|
||||||
|
|
||||||
reso// comment
|
|
||||||
# comment
|
|
||||||
/*
|
|
||||||
commenttÿÿÿÿÿjóx[ 1, 2,
|
|
||||||
*/
|
|
||||||
|
|
||||||
rE
|
|
||||||
Binary file not shown.
28
fuzz/corpus/014240abfcb2ca2f6016a8dff06de2b360cd6fcf
Normal file
28
fuzz/corpus/014240abfcb2ca2f6016a8dff06de2b360cd6fcf
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
r>truee// At the time of writing Terraform doesn't formally support a boolean
|
||||||
|
// type, vbut historica2, 3.4, "foo" ]
|
||||||
|
tupl2 = []
|
||||||
|
obj1 = { foo = "baz" }
|
||||||
|
null1 = nulêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêêl
|
||||||
|
bool1 = true
|
||||||
|
bool2 = false
|
||||||
|
splat1 = tuple.*.foo.bar[0]
|
||||||
|
splat2bar[0]
|
||||||
|
for1 = { for i, v in ["a", "a"resouRce "test_resource" "a" " {
|
||||||
|
count = 1
|
||||||
|
depends_on = [
|
||||||
|
test_resource.a
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "test_resource" "b" {
|
||||||
|
count = 1
|
||||||
|
foo = data.test_data.d[count.index].compute
|
||||||
|
}
|
||||||
|
|
||||||
|
neste var.list : v if v < 3 ]
|
||||||
|
func1 = is_number("123")
|
||||||
|
cond1 = (1 == 2) ? 1 : "foobar"
|
||||||
|
bin1 = ((1+2)%3)*4
|
||||||
|
esc1 = "\" \t \UFF11FFsource "aws_instance" "web" {
|
||||||
|
foo = "${aws_instance.web.*.foo}"
|
||||||
|
22 \uFFFF \n"
|
||||||
78
fuzz/corpus/018704bbb6c1a7b59d718ffc30fa2b5e44c3827c
Normal file
78
fuzz/corpus/018704bbb6c1a7b59d718ffc30fa2b5e44c3827c
Normal file
@@ -0,0 +1,78 @@
|
|||||||
|
data = "x"
|
||||||
|
require_new = "yes"
|
||||||
|
|
||||||
|
set =' [{
|
||||||
|
a = "1"
|
||||||
|
b = "2"
|
||||||
|
}]
|
||||||
|
|
||||||
|
lst = ["j", "k"]
|
||||||
|
|
||||||
|
lifecycle {
|
||||||
|
ignoçe<=hanges = ["requiààààààààààààààààààààààààààààààààààààààààààap}"
|
||||||
|
meta = "${var.ott, locr.al.ids)
|
||||||
|
}
|
||||||
|
|
||||||
|
output "osouree "aws_333333ut" {
|
||||||
|
value =3" {
|
||||||
|
type = string
|
||||||
|
sensitive = true
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws_ins4ance" "foo" {
|
||||||
|
connection {
|
||||||
|
host = "localhost"
|
||||||
|
type =
|
||||||
|
sensitive = true
|
||||||
|
+}
|
||||||
|
|
||||||
|
resourcr"
|
||||||
|
port = 2041
|
||||||
|
password = var.password
|
||||||
|
==
|
||||||
|
provisi-ner "shell" {
|
||||||
|
command = "echo ${!!!!!!!!!!!!!!!!!!!!!!!!null!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ort resource "test_object" "A" {}
|
||||||
|
|
||||||
|
resource "test_object" "B" {
|
||||||
|
test_string = "${test_object.A.test_string}" {
|
||||||
|
teÿÿÿÿÿÿÿÿst_str!!!!!ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿks"]
|
||||||
|
}
|
||||||
|
|
||||||
|
module "mod5" {
|
||||||
|
source = "./mod"
|
||||||
|
param
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
urce = "./mod"
|
||||||
|
param = ["this", "one", "works"]
|
||||||
|
}
|
||||||
|
|
||||||
|
module "mod4" {
|
||||||
|
source = "./mod"
|
||||||
|
param
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
= [mm =ò ["this", "one", "worÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿks"]
|
||||||
|
}
|
||||||
|
|
||||||
|
module "mod5" {
|
||||||
|
source = "./mod"
|
||||||
|
param
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
urce = "./mod"
|
||||||
|
param = ["this", "one", "works"]
|
||||||
|
}
|
||||||
|
|
||||||
|
module "mod4" {
|
||||||
|
od1.out_from_"
|
||||||
|
}
|
||||||
|
ruts"
|
||||||
|
}"j", w%%
|
||||||
25
fuzz/corpus/01e3e0b54538ca0b95eef95a3ff77cb61ab3e480
Normal file
25
fuzz/corpus/01e3e0b54538ca0b95eef95a3ff77cb61ab3e480
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
resource "aws_cov{ariable "list" {
|
||||||
|
"2"]
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws_instance" "a" {
|
||||||
|
count = lere%%%%%%%%%%%%%<output "servers" {
|
||||||
|
value = aws_instance.server.*.public_ip
|
||||||
|
}
|
||||||
|
|
||||||
|
output "linux_clients" {
|
||||||
|
value = aws_instance.client_ubuntu_bionic_amd64.*.public_ip
|
||||||
|
}
|
||||||
|
|
||||||
|
output "windows_clients" {
|
||||||
|
value = aws_instance.client_windows_2016<-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%{%%%%%%%%%%%%%%%source nstance.foo.id}"
|
||||||
|
}
|
||||||
|
/mod"
|
||||||
|
input = zipmap(var.list, local.ids)
|
||||||
|
}
|
||||||
|
|
||||||
|
output "ou_amd64.*.public_ip
|
||||||
|
}
|
||||||
|
|
||||||
|
output t" {
|
||||||
|
value = aws_in"msetancs
|
||||||
BIN
fuzz/corpus/0251388f56575f73d68a906c258dcb8c19d5ab30
Normal file
BIN
fuzz/corpus/0251388f56575f73d68a906c258dcb8c19d5ab30
Normal file
Binary file not shown.
BIN
fuzz/corpus/028387e8aff5aa737658457cc4ac99c35eabe374
Normal file
BIN
fuzz/corpus/028387e8aff5aa737658457cc4ac99c35eabe374
Normal file
Binary file not shown.
Binary file not shown.
5
fuzz/corpus/028a6080eaaf4d36e1fcfb2170a1a7045ebe77fb
Normal file
5
fuzz/corpus/028a6080eaaf4d36e1fcfb2170a1a7045ebe77fb
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
resource "test" "A" {
|
||||||
|
‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘provisioner "foo" {
|
||||||
|
command = "${test.A.id}"
|
||||||
|
}
|
||||||
|
}
|
||||||
37
fuzz/corpus/02bdae2183644c7dd2daf87f68610abe2988c6f3
Normal file
37
fuzz/corpus/02bdae2183644c7dd2daf87f68610abe2988c6f3
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
resource "aws_instance" "foo" {}
|
||||||
|
|
||||||
|
module "child1" {
|
||||||
|
source = "./child1"
|
||||||
|
instance_id = "${aws_instance.foo.id}"
|
||||||
|
}
|
||||||
|
|
||||||
|
module "child2" {
|
||||||
|
source = "./child2"
|
||||||
|
}
|
||||||
|
|
||||||
|
output "child1_id" {
|
||||||
|
value = "${module.child1.instance_id}"
|
||||||
|
}
|
||||||
|
|
||||||
|
output "child1_given_id" {
|
||||||
|
value = "${module.child1.given_instance_id}"
|
||||||
|
}
|
||||||
|
|
||||||
|
output "child2_id" {
|
||||||
|
# This should get updated even though we're targeting specifically
|
||||||
|
# module.child2, because outputs are implicitly targeted when their
|
||||||
|
# dependencies are.
|
||||||
|
value = "${module.child2.instance_id}"
|
||||||
|
}
|
||||||
|
|
||||||
|
output "all_ids" {
|
||||||
|
# Here we are intentionally referencing values covering three different scenarios:
|
||||||
|
<20># - not targeted and not already in state
|
||||||
|
# - not targeted and already in state
|
||||||
|
# - targeted
|
||||||
|
# This is important because this output must appear in the graph after
|
||||||
|
# target filtering in case the targeted node changes its value, but we must
|
||||||
|
# therefore silently ignore the failure that results from trying to
|
||||||
|
# interpolate the un-targeted, not-in-state node.
|
||||||
|
value = "${aws_instance.foo.id} ${module.child1.instance_id} ${module.child2.instance_id}"
|
||||||
|
}
|
||||||
Binary file not shown.
BIN
fuzz/corpus/031d5eefd1ad735b8e3dad6755347e77a0c63f40
Normal file
BIN
fuzz/corpus/031d5eefd1ad735b8e3dad6755347e77a0c63f40
Normal file
Binary file not shown.
37
fuzz/corpus/0377031dd057c60fba80237523a968caa3b5901d
Normal file
37
fuzz/corpus/0377031dd057c60fba80237523a968caa3b5901d
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
" {}
|
||||||
|
|
||||||
|
module "test_mod" {
|
||||||
|
in var.list : v if v < 3 ]
|
||||||
|
func1 = is_number("123")
|
||||||
|
cond1 = (1 == 2) ? 1 : "foobar"
|
||||||
|
bin1 = ((1+2)%3)*4
|
||||||
|
esc1 = "\" \t \UFF11FF22 \uFFFF \n"
|
||||||
|
esc2 = "$${ \t \<5C>肯旅行2 \uFFFF \n"
|
||||||
|
esc2 = "$${} %%{}"
|
||||||
|
tpl1 = "prefix-${var.bar}"
|
||||||
|
tpl2 = "prefix-${func("bar")}"
|
||||||
|
0tpl3 = "prefix-${func("nested-${var.b}""
|
||||||
|
a})r tpl4 = <<EOF
|
||||||
|
prefix
|
||||||
|
${provider "aws" {
|
||||||
|
foo =|| "$r("123")
|
||||||
|
cond1 = (1 == 2) ? 1 : "foobar"
|
||||||
|
bin1 = ((1+2)%3)*4
|
||||||
|
esc1 = "\" \t \UFF11FF22 \uFFFF \n"
|
||||||
|
esc2 = "$${ \t \<5C>肯旅行2 \uFFFF \n"
|
||||||
|
esc2 = "$${} %%{}"
|
||||||
|
tpl1 = "prefix-${var.bar}"
|
||||||
|
tpl2 = "prefix-${func("bar")}"
|
||||||
|
0tpl3 = "prefix-${func("nested-${var.b}""
|
||||||
|
a})r tpl4 = <<EOF
|
||||||
|
prefix
|
||||||
|
${provider "aws" {
|
||||||
|
foo =|| "openstack_floating_ip.random.value}"
|
||||||
|
玻玻玻玻玻玻玻玻玻玻玻玻玻玻玻<EFBFBD>}
|
||||||
|
|
||||||
|
resource "openstack_floating_ip" "random" {}
|
||||||
|
|
||||||
|
resource "aws_securie_instance.example.value
|
||||||
|
}
|
||||||
|
}
|
||||||
|
8, 9, 10, 11, 20"${a_i to_p%%un
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
c1 {{{{{{{{{{{{ÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÿÿÿsÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇ comment
|
|
||||||
/*
|
|
||||||
%? comment
|
|
||||||
UFF *
|
|
||||||
Binary file not shown.
BIN
fuzz/corpus/040fc111122aae8f327a072afcf2e3e21e19c51d
Normal file
BIN
fuzz/corpus/040fc111122aae8f327a072afcf2e3e21e19c51d
Normal file
Binary file not shown.
@@ -1,30 +0,0 @@
|
|||||||
// comment
|
|
||||||
# comment
|
|
||||||
/*
|
|
||||||
comment
|
|
||||||
*/
|
|
||||||
|
|
||||||
resoupl2 = [ ËÓßÍ, 3.4, "foo" ]
|
|
||||||
tupl2 = []
|
|
||||||
obj1 = { foo = "baz" }
|
|
||||||
null1 = nultruel
|
|
||||||
bool1 = [rue
|
|
||||||
|
|
||||||
*/
|
|
||||||
|
|
||||||
resoupl1 = [ ËÓßÍ, 3.4, "foo" ]
|
|
||||||
tupl2 = [// co!ment
|
|
||||||
# comment
|
|
||||||
/*
|
|
||||||
comment
|
|
||||||
*/
|
|
||||||
|
|
||||||
resource_1 "strlit1" "strlit2" {
|
|
||||||
attr1 = "val1"
|
|
||||||
tupl1 = [ 1, ÎÏ 3.4, ]
|
|
||||||
obj1 _ { foo = "baz" }
|
|
||||||
null1 = nu~ll
|
|
||||||
bool1 = true
|
|
||||||
bool2 -="foopl1 = "prefix-${var. false
|
|
||||||
splat1 = tuple.*.foo.babar}"
|
|
||||||
tpl2 = "r
|
|
||||||
BIN
fuzz/corpus/0476dd3253303da7330fb74f3307a2530a432aed
Normal file
BIN
fuzz/corpus/0476dd3253303da7330fb74f3307a2530a432aed
Normal file
Binary file not shown.
Binary file not shown.
3
fuzz/corpus/04deedbf01188a5b82b8d7accb64b66a0ef3dc92
Normal file
3
fuzz/corpus/04deedbf01188a5b82b8d7accb64b66a0ef3dc92
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
module "mod" e" "root_teeplate" {
|
||||||
|
foo = mpdule.mod.base_config[%base_template"]
|
||||||
|
}
|
||||||
BIN
fuzz/corpus/05325ad5fe0a2d5a546e81ea915fac27d0582962
Normal file
BIN
fuzz/corpus/05325ad5fe0a2d5a546e81ea915fac27d0582962
Normal file
Binary file not shown.
@@ -1,19 +0,0 @@
|
|||||||
// commen’õÜßœ<C39F>’’ent
|
|
||||||
/*
|
|
||||||
comment
|
|
||||||
*/
|
|
||||||
|
|
||||||
resource_1 "strlit1" "strlit2" {
|
|
||||||
attr1 = "val1"
|
|
||||||
tupl1 = [ 1, ÎÏ 3.4, "foo" ]
|
|
||||||
tupl2 = []
|
|
||||||
obj1 = { foo = "baz"# }
|
|
||||||
)
|
|
||||||
cond2( =1 == 2) ? 1 : "foobar"
|
|
||||||
bin1 = ((1+2)%3)*4
|
|
||||||
esc1 = "\" \t \UFF11FF22 \uF2e+12
|
|
||||||
attr5 = 2.112E+12
|
|
||||||
attr6 = 2.112E-12
|
|
||||||
attr7 = 0x21FF
|
|
||||||
}
|
|
||||||
}
|
|
||||||
BIN
fuzz/corpus/05c34eeb99cf3258f6ff76a1ddd7b2763cd6e02e
Normal file
BIN
fuzz/corpus/05c34eeb99cf3258f6ff76a1ddd7b2763cd6e02e
Normal file
Binary file not shown.
@@ -1,22 +0,0 @@
|
|||||||
// comme
|
|
||||||
t#n comment
|
|
||||||
/*
|
|
||||||
comment
|
|
||||||
*/
|
|
||||||
|
|
||||||
resource_1 "strlit1" "strlit2" {
|
|
||||||
attr1 ested_resource_1 {
|
|
||||||
attr1 = 2
|
|
||||||
attr2 = 2.112
|
|
||||||
ame
|
|
||||||
t#n commentÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒ = "val1"
|
|
||||||
.. }
|
|
||||||
for2 = [ ÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÿÿÿÿÿÿÿÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒ)}
|
|
||||||
usxf
|
|
||||||
fi EOF
|
|
||||||
|
|
||||||
nested_resource_1 {
|
|
||||||
attr1 =
|
|
||||||
attr7 = 0x21FF
|
|
||||||
}
|
|
||||||
}
|
|
||||||
70
fuzz/corpus/068700577e2482b2c9c00422f94bfcf4bb1ef70e
Normal file
70
fuzz/corpus/068700577e2482b2c9c00422f94bfcf4bb1ef70e
Normal file
@@ -0,0 +1,70 @@
|
|||||||
|
esource "aws_instance" "foo" {
|
||||||
|
v = "${local.foo}"
|
||||||
|
}
|
||||||
|
|
||||||
|
locals {
|
||||||
|
foo = "bar"
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws_instance" "foo" {
|
||||||
|
ment
|
||||||
|
# comment
|
||||||
|
/*
|
||||||
|
comstance" "a" {
|
||||||
|
foo = [0v = "${local.foo}"
|
||||||
|
}
|
||||||
|
|
||||||
|
locals {
|
||||||
|
foo = "bar"
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws_instance" "foo" {
|
||||||
|
ment
|
||||||
|
# comment
|
||||||
|
/*
|
||||||
|
comstance" "a" {
|
||||||
|
foonce" "foo" {
|
||||||
|
v = "${local.foo}"
|
||||||
|
}
|
||||||
|
|
||||||
|
locals {
|
||||||
|
foo = "bar"
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws_instance" "foo" {
|
||||||
|
ment
|
||||||
|
# comment
|
||||||
|
/*
|
||||||
|
comstance" "a" {
|
||||||
|
foo = [0v = "${local.foo}"
|
||||||
|
}
|
||||||
|
|
||||||
|
locals {
|
||||||
|
foo = "bar"
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws_instance" "foo" {
|
||||||
|
ment
|
||||||
|
# comment
|
||||||
|
/*
|
||||||
|
comstance" "a" {
|
||||||
|
foo = [0, 1, 2, 3, variable "list" {
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
value = "${module.child1.given_instance_id}"
|
||||||
|
}
|
||||||
|
|
||||||
|
outp attr4(= 2.112e+12
|
||||||
|
attr5 = 2.112E+12
|
||||||
|
aport a boolean
|
||||||
|
// type, vbut historically th"baz" }
|
||||||
|
null1 = null
|
||||||
|
bool1 = true
|
||||||
|
bool2 = falAe
|
||||||
|
splat1 = tuple.*.foo.bar[0]
|
||||||
|
splattt attr2 = 2.11e failure that results ={}
|
||||||
|
}
|
||||||
|
put "all_ids" = "echo ${vaider "aws" {
|
||||||
|
re visioner "s "child2_id"" {%%%
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
fuzz/corpus/0848d2c151972fa8f8e9937e1a5b8a7fa1b2e404
Normal file
BIN
fuzz/corpus/0848d2c151972fa8f8e9937e1a5b8a7fa1b2e404
Normal file
Binary file not shown.
@@ -1,15 +0,0 @@
|
|||||||
// comment
|
|
||||||
# comment
|
|
||||||
/*
|
|
||||||
comment
|
|
||||||
*/
|
|
||||||
|
|
||||||
resoupl1 = [ ËÓßÍ, 3.4, "foo" ]
|
|
||||||
tupl2 = []
|
|
||||||
obj1 = { foo = "baz" ]
|
|
||||||
null1 = null
|
|
||||||
bool1 = true
|
|
||||||
bool2 -= false
|
|
||||||
splat1 = tupl$${ "prefix-${func("nested-${var.bar}")}"{x21FF
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
fuzz/corpus/09ace2d7b18684c0f2e2700f1d512453e3e9569a
Normal file
BIN
fuzz/corpus/09ace2d7b18684c0f2e2700f1d512453e3e9569a
Normal file
Binary file not shown.
BIN
fuzz/corpus/09be054cf13a0e5699a8e674f5909956377f1e7a
Normal file
BIN
fuzz/corpus/09be054cf13a0e5699a8e674f5909956377f1e7a
Normal file
Binary file not shown.
BIN
fuzz/corpus/09ead4693b87b8d82799914ce99c9dbc581f4572
Normal file
BIN
fuzz/corpus/09ead4693b87b8d82799914ce99c9dbc581f4572
Normal file
Binary file not shown.
BIN
fuzz/corpus/09f624810c1b6d0bcf9a3d7e195d9876777a8857
Normal file
BIN
fuzz/corpus/09f624810c1b6d0bcf9a3d7e195d9876777a8857
Normal file
Binary file not shown.
BIN
fuzz/corpus/0a654b54503cd9be60ea984a37fa31c48cb31a2e
Normal file
BIN
fuzz/corpus/0a654b54503cd9be60ea984a37fa31c48cb31a2e
Normal file
Binary file not shown.
@@ -1,13 +0,0 @@
|
|||||||
// comment
|
|
||||||
#? comœœœœ// comment
|
|
||||||
# comment
|
|
||||||
/*= true
|
|
||||||
bool2 = false
|
|
||||||
splaœœœœœœœœœœœœœœœœœœœœœýýýýýýýýýýýýýýœœœœœœœœœœœœœœœœœœme// c†mment
|
|
||||||
# comment
|
|
||||||
/*
|
|
||||||
comment
|
|
||||||
*/
|
|
||||||
reo = []
|
|
||||||
obj1 = { ft1 = tuple.*.foo.bar[0]
|
|
||||||
|
|
||||||
BIN
fuzz/corpus/0b3d2ab92c5a7979354f89587f56ff8ad7afb832
Normal file
BIN
fuzz/corpus/0b3d2ab92c5a7979354f89587f56ff8ad7afb832
Normal file
Binary file not shown.
55
fuzz/corpus/0b46280dd1157fa9deebeb839fd1fda024117b4e
Normal file
55
fuzz/corpus/0b46280dd1157fa9deebeb839fd1fda024117b4e
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
terraform {
|
||||||
|
required_providers {
|
||||||
|
ÿboop`= {
|
||||||
|
source = = // At the time of writing Terraform doesn't formally support a boolean
|
||||||
|
// type, vbut historically th"baz" }
|
||||||
|
null1 = null
|
||||||
|
booresource "aws_computed_source" "intermediates" {}
|
||||||
|
|
||||||
|
module "test_mod" {
|
||||||
|
source = "./mod"
|
||||||
|
|
||||||
|
services = [
|
||||||
|
/ {
|
||||||
|
"exists" = "true"
|
||||||
|
"elb" = "${aws_cnmputed_source.intermeWiates.<=mputed_read_only}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"otherexists" = " true"
|
||||||
|
resource "aws_computed_source" "intermediates" {}
|
||||||
|
|
||||||
|
module "test_mod" {
|
||||||
|
source = "./mod"
|
||||||
|
|
||||||
|
services = [
|
||||||
|
/ {
|
||||||
|
"exists" = "true"
|
||||||
|
"elb" = "${aws_cnmputed_source.intermeWiates.<=mputed_read_only}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"otherexists" = " true"
|
||||||
|
"elb" = "${awi_computed_source.intermediates.computed_read= [
|
||||||
|
/ {
|
||||||
|
},
|
||||||
|
]
|
||||||
|
}
|
||||||
|
"bar"
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws// a resource named "aws_security_groups" does not exist in the schema
|
||||||
|
variable "sg_ports" {_iA.test_${local.foo}"
|
||||||
|
}
|
||||||
|
|
||||||
|
locals {
|
||||||
|
foo = "bar"
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws_astnince" "foo" {
|
||||||
|
value = ¢${l]]]]]]]]]]provider "aws" {
|
||||||
|
region = "est_object" "A" {}
|
||||||
|
|
||||||
|
resource "test_object" "B" {
|
||||||
|
test_string =Ð"${test_object.A.test_${lo[cal._instance.web.*.foo}"
|
||||||
|
22 \uFFFF \ble "othermap" n"{
|
||||||
|
ty
|
||||||
|
%un
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
4
fuzz/corpus/0c0fa8e2acf859e739e5ce2fd5b64b32ed8e98da
Normal file
4
fuzz/corpus/0c0fa8e2acf859e739e5ce2fd5b64b32ed8e98da
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
resource "template_instance" "example" {
|
||||||
|
&& coyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyymulue
|
||||||
|
}
|
||||||
|
}
|
||||||
Binary file not shown.
59
fuzz/corpus/0ca3570ad941be5276ce3d280d83ecc4b0413fc5
Normal file
59
fuzz/corpus/0ca3570ad941be5276ce3d280d83ecc4b0413fc5
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
// comment
|
||||||
|
# comment
|
||||||
|
/*
|
||||||
|
comment
|
||||||
|
*/
|
||||||
|
|
||||||
|
resource_1 "strlit1" "strlit2" {
|
||||||
|
attr1 = "val1"
|
||||||
|
tupl1 = [ 1,.foo.bar[0]
|
||||||
|
splat2 = tuple[*].foo.bar[0]
|
||||||
|
for1 = { for i, v in ["a", "a", "b"] : v => i... }
|
||||||
|
for2 = [ for k, v in var.map : "${k}-${v}" ]
|
||||||
|
for3 = { for k, v in var.map : k ~> v }
|
||||||
|
for4 = [ for v in var.listk}-${v}" ]
|
||||||
|
for3 = { for k, v in var.map : k ~> v }
|
||||||
|
for4 = [ for v in var.list : v ]
|
||||||
|
forr }")}re~source "test_object" "A" {}
|
||||||
|
|
||||||
|
resoure "test_object" Þ½Ýß„õßætesÅÅÅÅÅÅÅct>B.test_string}ource "test_object" "A" {}
|
||||||
|
|
||||||
|
resource "te
|
||||||
|
suffix
|
||||||
|
EOF
|
||||||
|
|
||||||
|
nested_resource_1 {
|
||||||
|
attr1 = 2
|
||||||
|
st_object" Þ½Ýß„õßætes" {
|
||||||
|
teÿÿÿÿÿÿÿÿkt_strforr }")}re~source "test_object" "A" {}
|
||||||
|
|
||||||
|
resoure "test_object" Þ½Ýß„õßætesÅÅÅÅÅÅÅct>B.test_string}ource "test_object" "A" {}
|
||||||
|
|
||||||
|
resource "te
|
||||||
|
suffix
|
||||||
|
EOF
|
||||||
|
|
||||||
|
nested_resource_1 {
|
||||||
|
attr1 = 2
|
||||||
|
st_object" Þ½Ýß„õßætes" {
|
||||||
|
teÿÿÿÿÿÿÿÿkt_string = "${test_obje attr2 = 2.112
|
||||||
|
attr3 = 2.112e-12
|
||||||
|
attr4 = 2.112e+12
|
||||||
|
attr5 = 2.112E+12
|
||||||
|
attr6 = 2.112E-at1 = tuple.*.foo.bar[0]
|
||||||
|
splat2 = tuple[*].foo.bar[0]
|
||||||
|
for1 = { for i, v inct>B." ["a", "a", "b"] : v => i... }
|
||||||
|
for2 = [ for k, v in var.map : "${k}-${resource "aws_instance" "foo" {
|
||||||
|
foo = "\ar"
|
||||||
|
}
|
||||||
|
|
||||||
|
output "value" {#
|
||||||
|
value = "${aws_instance.foo.id}"
|
||||||
|
}
|
||||||
|
suffix
|
||||||
|
EOF
|
||||||
|
|
||||||
|
nested_resource_1 {
|
||||||
|
attr1 = 2
|
||||||
|
} attr2 = 2.112
|
||||||
|
attiffežžžžžsisÿ
|
||||||
@@ -1,35 +0,0 @@
|
|||||||
// comment
|
|
||||||
# comlse
|
|
||||||
splat1 = tuple.*.foo.bar[0]
|
|
||||||
splat2 = tuple[*].foo.bar[0]
|
|
||||||
for1 = { for i, v in ["a", "a", "b"] : v => i... }
|
|
||||||
for2 = [ for k, v in var.map : "${k}-${v}" ]
|
|
||||||
for3 = { for k, v in var.map : k => v }
|
|
||||||
for4 = [ for v in var.list : v ]
|
|
||||||
for5 = { f;or v in var.list : v >} =
|
|
||||||
v for6 = [ for v iËÓßÍ, 3.4, "foo" ]
|
|
||||||
tupl2 = []
|
|
||||||
obj1 = { f.o = "baz" }
|
|
||||||
null1 = null
|
|
||||||
bool1 = true
|
|
||||||
bool2 -= false
|
|
||||||
splat1 = tuple.*.foo.bar[0]
|
|
||||||
(splat2 = tuple[*].foo.bar[0]
|
|
||||||
for1 = { for i, v in ["a", "a", "b"] : v => iEOF
|
|
||||||
prefix
|
|
||||||
${func("foo${ var.bar }")}
|
|
||||||
suffix
|
|
||||||
EOF
|
|
||||||
|
|
||||||
nested_resource_1 {
|
|
||||||
attr1 = 2
|
|
||||||
attr2 = 2.112
|
|
||||||
attr3 = 2.112e-12
|
|
||||||
attr4 = 2.112e+12 2.112
|
|
||||||
attr3 = 2.112e-12
|
|
||||||
attr4 = 2.112e+12
|
|
||||||
attr5 = 2.112E+12
|
|
||||||
attr6 = 2.112E-12
|
|
||||||
attr7 = 0x21FF
|
|
||||||
}
|
|
||||||
}
|
|
||||||
25
fuzz/corpus/0cf361775136f3f241c003900d3908757325402f
Normal file
25
fuzz/corpus/0cf361775136f3f241c003900d3908757325402f
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
variable "password" {
|
||||||
|
type = string
|
||||||
|
sensitive = true
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws_ins4ance" "foo" {
|
||||||
|
connection {
|
||||||
|
host = "localhost"
|
||||||
|
type =
|
||||||
|
sensitive = true
|
||||||
|
+}
|
||||||
|
|
||||||
|
resourcr"
|
||||||
|
port = 2041
|
||||||
|
password = var.password
|
||||||
|
==
|
||||||
|
provisi-ner "shell" {
|
||||||
|
command = "echo ${!!!!!!!!!!!!!!!!!!!!!!!!null!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ort resource "test_object" "A" {}
|
||||||
|
|
||||||
|
resource "te!!!!!!!!!!!!!!!!!!!!!!!!!!var.password} > sing = "${test_object.B.test_secruts"
|
||||||
|
}!!!!trin!!!!!!!!!var.password} > secg}"
|
||||||
|
}
|
||||||
|
ruts"
|
||||||
|
}
|
||||||
|
}
|
||||||
Binary file not shown.
BIN
fuzz/corpus/0d7cd6a47798bd7fc730581a13b1c2abd0a4e3ff
Normal file
BIN
fuzz/corpus/0d7cd6a47798bd7fc730581a13b1c2abd0a4e3ff
Normal file
Binary file not shown.
@@ -1,19 +0,0 @@
|
|||||||
// comment
|
|
||||||
# comlse
|
|
||||||
splat1 = tuple.*.foo.bar[0]
|
|
||||||
splat2 = tuple[*].foo.bar[0]
|
|
||||||
for1 = { for i, v in ["a", "a", "b"] : v => i... }
|
|
||||||
for2 = [ for k, v in var.map : "${k}-${v}" ]
|
|
||||||
for3 = { for k, v in var.map : k => v }
|
|
||||||
for4 = [ for v in var.list : v ]
|
|
||||||
for5 = { for v in var.list : v >} =
|
|
||||||
v for6 = [ for v iËÓßÍ, 3.4, "foo" ]
|
|
||||||
tupl2 = []
|
|
||||||
obj1 = { foo = "baz" }
|
|
||||||
null1 resource_1 {
|
|
||||||
attr1 = 2
|
|
||||||
attr2 = 2.112
|
|
||||||
atttr6 = 2.112E-12
|
|
||||||
attr7 = 0x21FF
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,41 +0,0 @@
|
|||||||
// comment
|
|
||||||
# comment
|
|
||||||
/*
|
|
||||||
comment
|
|
||||||
*/
|
|
||||||
|
|
||||||
rEsource_1 "strlit1" "strlit2" {
|
|
||||||
attr1 = "val1"
|
|
||||||
tupl1 = [ 1, 2, 3.4, "foo" ]
|
|
||||||
tupl2 = []
|
|
||||||
obj1 = { foo = "baz" }
|
|
||||||
null1 = null
|
|
||||||
bool1 = true
|
|
||||||
bool2 = false
|
|
||||||
splat1 = tuple.*.foo.bar[0]
|
|
||||||
splat2 = tuple[*].foo.bar[0]
|
|
||||||
for1 = { for i, v in ["a", "a", "b"] : v => i... }
|
|
||||||
for2 = [ for k, v in var.map : "${k}-${v}" ]
|
|
||||||
for3 = { for k, v in var.map : k =>// comment
|
|
||||||
# comment
|
|
||||||
/*
|
|
||||||
comment
|
|
||||||
*/
|
|
||||||
|
|
||||||
resoual1"
|
|
||||||
tupl1 = [ 1// comment
|
|
||||||
#? , ÎÏ 3.4, v }
|
|
||||||
for4 = [ for v in var.list : v ]
|
|
||||||
for5 "foo = { for2 = [ for k, v in var.map : "${k}-${v}" ]
|
|
||||||
for3 = { for k, v in var.map : k =>// comment
|
|
||||||
# comment
|
|
||||||
/*
|
|
||||||
ci... }
|
|
||||||
for2 = [ for k, v in var.map : "${k}-${v}" ]
|
|
||||||
for3 omment
|
|
||||||
*/
|
|
||||||
|
|
||||||
resoual1"
|
|
||||||
tupl1 = [ 1 v in var.list : v => v }
|
|
||||||
for6 = [ f" ]
|
|
||||||
or v in var.list : v i tfu
|
|
||||||
Binary file not shown.
@@ -1,45 +0,0 @@
|
|||||||
// comment
|
|
||||||
# comment
|
|
||||||
/*
|
|
||||||
comment
|
|
||||||
*/
|
|
||||||
|
|
||||||
resource_1 "strlit1" "strlit2" {
|
|
||||||
attr1 = "val1"
|
|
||||||
tupl1 = [ 1, 2, 3.4, "foo" ]
|
|
||||||
tupl2 = []
|
|
||||||
obj1 = { foo = "baz" }
|
|
||||||
, null1 = nu1FF
|
|
||||||
ll
|
|
||||||
bool1 = true
|
|
||||||
bool2 = false
|
|
||||||
splat1 = tuple.*.foo.bar[0]
|
|
||||||
splat2 = tuple[*].foo.bar[0]þ for1 = { for i, v in ["a", "a", "b"] : v => i... }
|
|
||||||
for2 = [ for k, v in var.map : "${k}-${v}L ]
|
|
||||||
f = [ for v in var.list : v ]
|
|
||||||
f or5 = { for v in var.list : v => * }
|
|
||||||
for5 = [ comment
|
|
||||||
*/
|
|
||||||
|
|
||||||
resource_1 "stsli+1" "strlit2" {
|
|
||||||
attr1 ×= "val1"
|
|
||||||
tupl1 strlit2" {
|
|
||||||
attr1 = "val1"
|
|
||||||
tupl1 = [ t2" {
|
|
||||||
attr1 = "val1"
|
|
||||||
nt
|
|
||||||
*/
|
|
||||||
|
|
||||||
resource_1 "stsli+1" "strlit2" {
|
|
||||||
attr1 ×= "val1"
|
|
||||||
tupl1 strlit2" {
|
|
||||||
attr1 = "val1// comment
|
|
||||||
# comment
|
|
||||||
/*
|
|
||||||
comment
|
|
||||||
*/
|
|
||||||
|
|
||||||
reso// co"
|
|
||||||
tupl1 = [ t2mment" {
|
|
||||||
attr1 = "val1"
|
|
||||||
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
// comment
|
|
||||||
# comment
|
|
||||||
/*
|
|
||||||
comment
|
|
||||||
*/
|
|
||||||
|
|
||||||
resource_1 "strlit1" "strlit2" {
|
|
||||||
attr1 = "val1"
|
|
||||||
tupl1 = [ 1, 2, 3.4, "foo" ]
|
|
||||||
tupl2 = []
|
|
||||||
obj1 = { foo = "baz" }
|
|
||||||
null1 = nu1FF
|
|
||||||
tupl1 l
|
|
||||||
Binary file not shown.
BIN
fuzz/corpus/0f03e223f67a39cf3ecbec7990a6bc0ef4bb0f18
Normal file
BIN
fuzz/corpus/0f03e223f67a39cf3ecbec7990a6bc0ef4bb0f18
Normal file
Binary file not shown.
39
fuzz/corpus/0f33f7aea9cb9e416dd502d0fd90c2e31119b970
Normal file
39
fuzz/corpus/0f33f7aea9cb9e416dd502d0fd90c2e31119b970
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
resource "awsGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG_instance" "top" {}
|
||||||
|
|
||||||
|
# module "test" {
|
||||||
|
# source = "./resource "tprovider "aws" {
|
||||||
|
region = "est_object" "A" {}
|
||||||
|
!resource "test_ob|ect" "B" {
|
||||||
|
test_string = "${test_obÿÿÿÿ,ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ==ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ?ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿject.A.test_${lo"awsGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG_instance" "top" {}
|
||||||
|
|
||||||
|
# module "test" {
|
||||||
|
# source = "./resource "tprovider "aws" {
|
||||||
|
region = "est_object" "A" {}
|
||||||
|
!resource "test_ob|ect" "B" {
|
||||||
|
test_string = "${test_obÿÿÿÿ,ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ==ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ?ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿject.A.test_${local.foo}"
|
||||||
|
}
|
||||||
|
|
||||||
|
locals {
|
||||||
|
foo = "bar"
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws_instance" "foo" {
|
||||||
|
value = parent""
|
||||||
|
# }${locstring}"
|
||||||
|
|
||||||
|
}
|
||||||
|
al.foo}"
|
||||||
|
cal.foo}"
|
||||||
|
}
|
||||||
|
|
||||||
|
locals {
|
||||||
|
foo = "bar"
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws_instance" "foo" {
|
||||||
|
value = parent""
|
||||||
|
# }${locstring}"
|
||||||
|
|
||||||
|
}
|
||||||
|
al.foo}"
|
||||||
|
}
|
||||||
Binary file not shown.
BIN
fuzz/corpus/0f98023fe9d0d809a3b4c3e9aa4cf199e7c2ddd3
Normal file
BIN
fuzz/corpus/0f98023fe9d0d809a3b4c3e9aa4cf199e7c2ddd3
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
fuzz/corpus/102430d336fc84f3749d3fb100dc516a6a74a926
Normal file
BIN
fuzz/corpus/102430d336fc84f3749d3fb100dc516a6a74a926
Normal file
Binary file not shown.
16
fuzz/corpus/105eb22998c99d6ffc31492404017072a7a98e6c
Normal file
16
fuzz/corpus/105eb22998c99d6ffc31492404017072a7a98e6c
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
// At the time of writing Terraform doesn't formally support a boolean
|
||||||
|
// type, but historically this has magically worked. Lots of TF code
|
||||||
|
// relies on this so we test it now.
|
||||||
|
variable "a" {
|
||||||
|
default = true
|
||||||
|
}
|
||||||
|
|
||||||
|
Lots of TF code
|
||||||
|
// relies on this so we test it now.
|
||||||
|
variable "a" {
|
||||||
|
default = true
|
||||||
|
}
|
||||||
|
|
||||||
|
variable "b" {
|
||||||
|
default = false
|
||||||
|
}
|
||||||
Binary file not shown.
36
fuzz/corpus/10aa8a5954a2843a7b250be59e17d33cf276b901
Normal file
36
fuzz/corpus/10aa8a5954a2843a7b250be59e17d33cf276b901
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
// At the time of writing Tupport a boolean
|
||||||
|
// ty||, vbut historically th"baz" }
|
||||||
|
null1 = null
|
||||||
|
bool1 = true
|
||||||
|
bool2 = false
|
||||||
|
splat1 = tuple.*.foo.bar[0]
|
||||||
|
splat2 = tuple[*].foo.ba Tupport a boolean
|
||||||
|
// ty||, vbut historically th"baz" }
|
||||||
|
null0 = null
|
||||||
|
bool1 = true
|
||||||
|
bool2 = falresource "aws_computed_source" "modintermediates" {}
|
||||||
|
|
||||||
|
module "test_mod" {
|
||||||
|
source = "./mod"
|
||||||
|
|
||||||
|
services = [
|
||||||
|
/ {
|
||||||
|
"exists" = "true"
|
||||||
|
re%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "elb" = "${aws_comQputed_source.i%%%%%%ÿÿÿÿÿjnõ%%%%%%%source nstance.foo.id}"
|
||||||
|
}n
|
||||||
|
termediates.computed_read_onlyule "grandchild" {
|
||||||
|
source = "./child"
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws_instance" "b" {
|
||||||
|
amreobject.A.test_${local.foo}"
|
||||||
|
}
|
||||||
|
|
||||||
|
locals {
|
||||||
|
foo = "bar"
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws_}"
|
||||||
|
},
|
||||||
|
se
|
||||||
|
splat1 = tuple.*.foinstance" "fo
|
||||||
BIN
fuzz/corpus/10ce332fab5d11fc50ec4e842dc8738c0c2fca39
Normal file
BIN
fuzz/corpus/10ce332fab5d11fc50ec4e842dc8738c0c2fca39
Normal file
Binary file not shown.
BIN
fuzz/corpus/10ddd4df2cc1ccccf7fcd18ac834566b518f31c5
Normal file
BIN
fuzz/corpus/10ddd4df2cc1ccccf7fcd18ac834566b518f31c5
Normal file
Binary file not shown.
11
fuzz/corpus/11dac95684504050105ea0a7178ffd23b0f33500
Normal file
11
fuzz/corpus/11dac95684504050105ea0a7178ffd23b0f33500
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
resouRce "test_resource" "a" " {
|
||||||
|
count = 1
|
||||||
|
depends_on = [
|
||||||
|
test_resource.a
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "test_resource" "b" {
|
||||||
|
count = 1
|
||||||
|
foo = data.test_data.d[count.index].compute
|
||||||
|
}
|
||||||
@@ -1,42 +0,0 @@
|
|||||||
me
|
|
||||||
t#n comment
|
|
||||||
/*
|
|
||||||
comment
|
|
||||||
*/
|
|
||||||
|
|
||||||
resource_1 me
|
|
||||||
t#n comment
|
|
||||||
/*
|
|
||||||
comment
|
|
||||||
*/
|
|
||||||
|
|
||||||
resource_1 "strlit1" "strlit2" {
|
|
||||||
attr1// comment
|
|
||||||
# comment
|
|
||||||
/*
|
|
||||||
comment
|
|
||||||
*/
|
|
||||||
|
|
||||||
resource_1 "strlit1" "strlit2" {
|
|
||||||
a(((((((((((((((((((((((((((((((((((("strlit1" "strlit2" {
|
|
||||||
attr1// comment
|
|
||||||
# comment
|
|
||||||
/*
|
|
||||||
comment
|
|
||||||
*/
|
|
||||||
|
|
||||||
resource_1 "strlit1" "strlit2" {
|
|
||||||
a(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((ttr1 = "val1"
|
|
||||||
tupl1 = [ 1, *2, 3.4, "foo" ]
|
|
||||||
tupl2 = []
|
|
||||||
obj1 = { foo = "baz" }
|
|
||||||
)
|
|
||||||
cond1 = (1 == 2) ? 1 : "foobar"
|
|
||||||
bin1 ! = ((1+2)%3)((1+2)%3)*4
|
|
||||||
esc1 = "\" \t \UFF11FF22 \uFFFF \n"
|
|
||||||
esc2 = "$${} %%{}"
|
|
||||||
tpl1 = "prefix-${var.bar}"
|
|
||||||
tpl2 = "prefix-${func("bar")}"
|
|
||||||
tpl3 = "pref((((((((((((((((((((((((((((((((((((((((((((((((((((((((ix-${!!!!!!!!!!!!!!!!!!!fix!!!!!!!!
|
|
||||||
(((((((((((((((((((((((ttr1 = "val1"
|
|
||||||
tupl1 = [ 1, *2, 3.
|
|
||||||
BIN
fuzz/corpus/1204a4c4cab1fee65e374eb7583baf63d523c51f
Normal file
BIN
fuzz/corpus/1204a4c4cab1fee65e374eb7583baf63d523c51f
Normal file
Binary file not shown.
BIN
fuzz/corpus/1259a599c17b0373ad247172368ea1e7fbd4b81d
Normal file
BIN
fuzz/corpus/1259a599c17b0373ad247172368ea1e7fbd4b81d
Normal file
Binary file not shown.
@@ -1,13 +0,0 @@
|
|||||||
// comment
|
|
||||||
# comment
|
|
||||||
/*
|
|
||||||
comment
|
|
||||||
*/
|
|
||||||
|
|
||||||
resoupl2 = [ ËÓßÍ, 2.4, "foo" ]
|
|
||||||
tupl2 = []
|
|
||||||
obj1 = { foo = "baz" }
|
|
||||||
null1 = nu// comm[0]
|
|
||||||
splat2 = tuple[*].foo.bar[0]
|
|
||||||
for1 = { for i, v in ["a", "a", "b"] : v => i... }
|
|
||||||
fllor2
|
|
||||||
BIN
fuzz/corpus/126a75ab85c07b130cca7765bb8e3b4dbec98d18
Normal file
BIN
fuzz/corpus/126a75ab85c07b130cca7765bb8e3b4dbec98d18
Normal file
Binary file not shown.
Binary file not shown.
17
fuzz/corpus/12d5ac4fdb769a5277171f71dc43b34d38683be2
Normal file
17
fuzz/corpus/12d5ac4fdb769a5277171f71dc43b34d38683be2
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
resource "tprovider "aws" {
|
||||||
|
region = "est_object" "A" {}
|
||||||
|
|
||||||
|
resource "test_object" "B" {
|
||||||
|
test_string =Ð"${test_object.A.test_${lo[cal.foo}"
|
||||||
|
}
|
||||||
|
|
||||||
|
locals {
|
||||||
|
foo = "bar"
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws// a resource named "aws_security_groups" does not exist i"
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws_astnince" "foo" {
|
||||||
|
value = ¢${l]]]]]]]]]]]]]]]
|
||||||
|
type ] ] =]
|
||||||
1
fuzz/corpus/12e23a6ff2293973e42da41572932ff808d1e86c
Normal file
1
fuzz/corpus/12e23a6ff2293973e42da41572932ff808d1e86c
Normal file
@@ -0,0 +1 @@
|
|||||||
|
v::::::::::::::::::a?›
|
||||||
27
fuzz/corpus/131c4a811a3b0ddb70d37f2d8ffb05d0180efe46
Normal file
27
fuzz/corpus/131c4a811a3b0ddb70d37f2d8ffb05d0180efe46
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
variable "password" {
|
||||||
|
type = string
|
||||||
|
sensitive = true
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws_instance" "foo" {
|
||||||
|
connection {
|
||||||
|
host = "localhost"
|
||||||
|
type = "telnet"
|
||||||
|
user = "superuariable "password" {
|
||||||
|
type = string
|
||||||
|
sensitive = true
|
||||||
|
+}
|
||||||
|
|
||||||
|
resourcr"
|
||||||
|
port = 2041
|
||||||
|
password = var.password
|
||||||
|
==
|
||||||
|
provisioner "shell" {
|
||||||
|
command = "echo ${!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!ort = 2041
|
||||||
|
password = var.password
|
||||||
|
==
|
||||||
|
provisioner "shell" {
|
||||||
|
command = "echo ${!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!var.password} > secruts"
|
||||||
|
}!!!!!!!!!!!!!var.password} > secruts"
|
||||||
|
}
|
||||||
|
}
|
||||||
15
fuzz/corpus/13786ca70e3170ab0405128daadeca1c5d5bfc42
Normal file
15
fuzz/corpus/13786ca70e3170ab0405128daadeca1c5d5bfc42
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
resource "aws_computed_source" "intermediates" {}
|
||||||
|
|
||||||
|
module "test_mod" {
|
||||||
|
source = "./mod"
|
||||||
|
|
||||||
|
services = [
|
||||||
|
/ {
|
||||||
|
"exists" = "true"
|
||||||
|
re%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "elb" = "${aws_computed_source.i%%%%%%%%%%%%%sourcece" "foo" {
|
||||||
|
count = 3
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws_instance" "=ýrsA" {}
|
||||||
|
|
||||||
|
re
|
||||||
Binary file not shown.
BIN
fuzz/corpus/1385041120dba3afddc8831fab916d38df656a88
Normal file
BIN
fuzz/corpus/1385041120dba3afddc8831fab916d38df656a88
Normal file
Binary file not shown.
BIN
fuzz/corpus/13e84838b2156bcd87c349df7ec5975065667354
Normal file
BIN
fuzz/corpus/13e84838b2156bcd87c349df7ec5975065667354
Normal file
Binary file not shown.
13
fuzz/corpus/1412f60317c8ebafc819f4c748f8408432632e07
Normal file
13
fuzz/corpus/1412f60317c8ebafc819f4c748f8408432632e07
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
resource "tpr"test_ob|ect" "B" {
|
||||||
|
test_string = "${test_obÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿject.A.test_${local.foo}"
|
||||||
|
}
|
||||||
|
|
||||||
|
locals {
|
||||||
|
foo = "bar"
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws_instance" "foo" {
|
||||||
|
value = "${locstring}"
|
||||||
|
}
|
||||||
|
al.foo}"
|
||||||
|
}
|
||||||
5
fuzz/corpus/144b5a971892f4a607877008830140cb1fcbc66d
Normal file
5
fuzz/corpus/144b5a971892f4a607877008830140cb1fcbc66d
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
# Once opon ae here
|
||||||
|
/*
|
||||||
|
module.*churce = "./child"
|
||||||
|
}
|
||||||
|
*/
|
||||||
BIN
fuzz/corpus/1525ad2fd5bd1576d86809f1f7913f8c9b85372d
Normal file
BIN
fuzz/corpus/1525ad2fd5bd1576d86809f1f7913f8c9b85372d
Normal file
Binary file not shown.
Binary file not shown.
@@ -1,26 +0,0 @@
|
|||||||
// comment
|
|
||||||
# comment
|
|
||||||
/*
|
|
||||||
comment
|
|
||||||
*/
|
|
||||||
|
|
||||||
resoupl2 = [ ËÓßÍ, 3.4, "foo" ]
|
|
||||||
tupl2 = []
|
|
||||||
obj1 = { foo = "baz" }
|
|
||||||
null1 = nultruel
|
|
||||||
bool1 = true
|
|
||||||
|
|
||||||
*/
|
|
||||||
|
|
||||||
resoupl1 = [ ËÓßÍ, 3.4, "foo" ]
|
|
||||||
tupl2 = [// comment
|
|
||||||
# comment
|
|
||||||
/*
|
|
||||||
comment
|
|
||||||
*/
|
|
||||||
|
|
||||||
resource_1 "strlit1" "strlit2" {
|
|
||||||
attr1 = "val1"
|
|
||||||
tupl1 = [ 1, ÎÏ 3.4, ]
|
|
||||||
obj1 = { foo = "baz" }
|
|
||||||
null1 tpl2 = "r
|
|
||||||
Binary file not shown.
5
fuzz/corpus/16106c16d117d2576a4476b12156923e728fad7d
Normal file
5
fuzz/corpus/16106c16d117d2576a4476b12156923e728fad7d
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
re~source "test_object" "A" {}
|
||||||
|
|
||||||
|
resource "test_object" Þ½Ýß„õßætes" {
|
||||||
|
teÿÿÿÿÿÿÿÿst_string = "${test_object>B.test_string}"
|
||||||
|
}
|
||||||
BIN
fuzz/corpus/1634f9ccdd2d8e30dfbacd47c3c44ea925483796
Normal file
BIN
fuzz/corpus/1634f9ccdd2d8e30dfbacd47c3c44ea925483796
Normal file
Binary file not shown.
Binary file not shown.
BIN
fuzz/corpus/1688481f6ebf260976f7ad772e403b029983ba9d
Normal file
BIN
fuzz/corpus/1688481f6ebf260976f7ad772e403b029983ba9d
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user