Closed cheekuru2023 closed 5 months ago
Where did the template come from? The error is Fn::Split not allowed to be nested in Fn::If.
because the current logic doesn't allow this combination of nested functions. But the AWS docs is really bad about what is and isn't allowed. If your template is from a reputable source, I will allow the combination.
Hi, @shadycuz
I had also stumbled over this issue. The source comes from a trusted party and relates to the Cloud Intelligence Dashboards Framework. The CF yaml is here: https://aws-managed-cost-intelligence-dashboards.s3.amazonaws.com/cfn/cur-aggregation.yaml
Are there any suggestions how to overcome this?
Same issue here, with the same source as @ymitsos. As this is a AWS template, i recon its allowed.
Hi Need your help to convert the
cft
filessm-quicksetup % cf2tf target-account-patch-policies.yml // Converting target-account-patch-policies.yml to Terraform! [###---------------------------------] 8% 00:00:56 code has been checked out.erraform_src... warning: versioning has section in /var/folders/63/_zkxd0vn1xjchqzm4_thr23m0000gq/T/terraform_src/website/docs/r/s3_bucket.html.markdown but section was empty. Traceback (most recent call last): File "/usr/local/bin/cf2tf", line 8, in
sys.exit(cli())
^^^^^
File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1157, in call
return self.main(args, kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1078, in main
rv = self.invoke(ctx)
^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/click/core.py", line 1434, in invoke
return ctx.invoke(self.callback, ctx.params)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/click/core.py", line 783, in invoke
return __callback(args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/cf2tf/app.py", line 44, in cli
config = TemplateConverter(tmpl_path.stem, cf_template, search_manger).convert()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/cf2tf/convert.py", line 92, in convert
tf_resources = self.convert_to_tf(self.manifest)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/cf2tf/convert.py", line 139, in convert_to_tf
tf_resources.extend(converter(resources))
^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/cf2tf/convert.py", line 319, in convert_resources
resolved_values = self.resolve_values(
^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/cf2tf/convert.py", line 172, in resolve_values
data[key] = self.resolve_values(
^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/cf2tf/convert.py", line 180, in resolve_values
value = self.resolve_values(
^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/cf2tf/convert.py", line 191, in resolve_values
resolved_list_values = [
^
File "/usr/local/lib/python3.11/site-packages/cf2tf/convert.py", line 192, in
self.resolve_values(
File "/usr/local/lib/python3.11/site-packages/cf2tf/convert.py", line 180, in resolve_values
value = self.resolve_values(
^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/cf2tf/convert.py", line 191, in resolve_values
resolved_list_values = [
^
File "/usr/local/lib/python3.11/site-packages/cf2tf/convert.py", line 192, in
self.resolve_values(
File "/usr/local/lib/python3.11/site-packages/cf2tf/convert.py", line 180, in resolve_values
value = self.resolve_values(
^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/cf2tf/convert.py", line 191, in resolve_values
resolved_list_values = [
^
File "/usr/local/lib/python3.11/site-packages/cf2tf/convert.py", line 192, in
self.resolve_values(
File "/usr/local/lib/python3.11/site-packages/cf2tf/convert.py", line 180, in resolve_values
value = self.resolve_values(
^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/cf2tf/convert.py", line 191, in resolve_values
resolved_list_values = [
^
File "/usr/local/lib/python3.11/site-packages/cf2tf/convert.py", line 192, in
self.resolve_values(
File "/usr/local/lib/python3.11/site-packages/cf2tf/convert.py", line 191, in resolve_values
resolved_list_values = [
^
File "/usr/local/lib/python3.11/site-packages/cf2tf/convert.py", line 192, in
self.resolve_values(
File "/usr/local/lib/python3.11/site-packages/cf2tf/convert.py", line 172, in resolve_values
data[key] = self.resolve_values(
^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/cf2tf/convert.py", line 178, in resolve_values
raise ValueError(f"{key} not allowed to be nested in {prev_func}.")
ValueError: Fn::Split not allowed to be nested in Fn::If.