From af5da7d412a6d1e262715a05d40e091d8ed6b08b Mon Sep 17 00:00:00 2001 From: Yann Soubeyrand Date: Fri, 24 Nov 2023 21:30:31 +0100 Subject: [PATCH] fix(modules/terraform): handle multiline strings correctly in complex variables (#7535) --- ...aform-fix-multiline-string-handling-in-complex-variables.yml | 2 ++ plugins/modules/terraform.py | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 changelogs/fragments/7535-terraform-fix-multiline-string-handling-in-complex-variables.yml diff --git a/changelogs/fragments/7535-terraform-fix-multiline-string-handling-in-complex-variables.yml b/changelogs/fragments/7535-terraform-fix-multiline-string-handling-in-complex-variables.yml new file mode 100644 index 0000000000..b991522dd6 --- /dev/null +++ b/changelogs/fragments/7535-terraform-fix-multiline-string-handling-in-complex-variables.yml @@ -0,0 +1,2 @@ +bugfixes: + - "terraform - fix multiline string handling in complex variables (https://github.com/ansible-collections/community.general/pull/7535)." diff --git a/plugins/modules/terraform.py b/plugins/modules/terraform.py index 90948cd50b..f6190493d1 100644 --- a/plugins/modules/terraform.py +++ b/plugins/modules/terraform.py @@ -513,7 +513,7 @@ def main(): def format_args(vars): if isinstance(vars, str): - return '"{string}"'.format(string=vars.replace('\\', '\\\\').replace('"', '\\"')) + return '"{string}"'.format(string=vars.replace('\\', '\\\\').replace('"', '\\"')).replace('\n', '\\n') elif isinstance(vars, bool): if vars: return 'true'