function in conditional expression generates parse error
kapilt opened this issue · comments
Kapil Thangavelu commented
❯ cat locals.tf
locals {
raw_bucket_name = var.bucket != "" ? var.bucket : "stacklet-platform-${md5("${data.aws_caller_identity.current.account_id}-${data.aws_region.current.name}")}"
}
tf_data = hcl2.loads(tf.read_text())
File "/home/kapilt/.pyenv/versions/tfresurrect/lib/python3.9/site-packages/hcl2/api.py", line 18, in loads
return hcl2.parse(text + "\n")
File "/home/kapilt/.pyenv/versions/tfresurrect/lib/python3.9/site-packages/lark/lark.py", line 464, in parse
return self.parser.parse(text, start=start)
File "/home/kapilt/.pyenv/versions/tfresurrect/lib/python3.9/site-packages/lark/parser_frontends.py", line 115, in parse
return self._parse(token_stream, start)
File "/home/kapilt/.pyenv/versions/tfresurrect/lib/python3.9/site-packages/lark/parser_frontends.py", line 63, in _parse
return self.parser.parse(input, start, *args)
File "/home/kapilt/.pyenv/versions/tfresurrect/lib/python3.9/site-packages/lark/parsers/lalr_parser.py", line 35, in parse
return self.parser.parse(*args)
File "/home/kapilt/.pyenv/versions/tfresurrect/lib/python3.9/site-packages/lark/parsers/lalr_parser.py", line 88, in parse
action, arg = get_action(token)
File "/home/kapilt/.pyenv/versions/tfresurrect/lib/python3.9/site-packages/lark/parsers/lalr_parser.py", line 66, in get_action
raise UnexpectedToken(token, expected, state=state, puppet=puppet)
lark.exceptions.UnexpectedToken: Unexpected token Token('RPAR', ')') at line 2, column 165.
Expected one of:
* __ANON_0
* __ANON_2
* LESSTHAN
* __ANON_4
* QMARK
* __ANON_3
* __ANON_9
* RBRACE
* SLASH
* STAR
* __ANON_5
* MINUS
* __ANON_1
* PERCENT
* __ANON_6
* PLUS
* __ANON_8
* __ANON_7
* MORETHAN
> /home/kapilt/.pyenv/versions/tfresurrect/lib/python3.9/site-packages/lark/parsers/lalr_parser.py(66)get_action()
-> raise UnexpectedToken(token, expected, state=state, puppet=puppet)
versions:
python3.9.4
lark-parser==0.10.1
python-hcl2==2.0.3