summaryrefslogtreecommitdiff
path: root/test/integration/targets/include_import/tasks/test_templating_IncludeRole_FA.yml
diff options
context:
space:
mode:
authorSloane Hertel <19572925+s-hertel@users.noreply.github.com>2023-04-17 10:22:03 -0400
committerGitHub <noreply@github.com>2023-04-17 09:22:03 -0500
commit62a353c085e10ed8d8713357421a06e00de551f4 (patch)
tree7df1492b080ac215a82259a5b5d97ef6e7f6ebfb /test/integration/targets/include_import/tasks/test_templating_IncludeRole_FA.yml
parent495d48d51eea1ca5eccaecbb4bc96341d759dc2b (diff)
downloadansible-62a353c085e10ed8d8713357421a06e00de551f4.tar.gz
fix using templated values for include/import role FA (#80320) (#80378)
* fix using templated values for include/import role options 'public', 'allow_duplicates', and 'rolespec_validate' * pass templated values without changing the instance * Fix templating by setting always_post_validate to True and calling IncludeRole.post_validate() instead ci_complete * add changelog (cherry picked from commit 666188892ed0833e87803a3e80c58923e4cd6bca)
Diffstat (limited to 'test/integration/targets/include_import/tasks/test_templating_IncludeRole_FA.yml')
-rw-r--r--test/integration/targets/include_import/tasks/test_templating_IncludeRole_FA.yml28
1 files changed, 28 insertions, 0 deletions
diff --git a/test/integration/targets/include_import/tasks/test_templating_IncludeRole_FA.yml b/test/integration/targets/include_import/tasks/test_templating_IncludeRole_FA.yml
new file mode 100644
index 0000000000..cb67a9bb15
--- /dev/null
+++ b/test/integration/targets/include_import/tasks/test_templating_IncludeRole_FA.yml
@@ -0,0 +1,28 @@
+---
+- name: test templating allow_duplicates, public, and rolespec_validate
+ hosts: localhost
+ gather_facts: false
+ tasks:
+ - name: prevent duplicate roles with a templated value
+ block:
+ - import_role:
+ name: dup_allowed_role
+ allow_duplicates: "{{ False | bool }}"
+ - import_role:
+ name: dup_allowed_role
+ allow_duplicates: "{{ False | bool }}"
+
+ - name: prevent leaky vars with a templated value
+ include_role:
+ name: role1
+ public: "{{ False | bool }}"
+ - assert:
+ that:
+ - where_am_i_defined is undefined
+
+ - name: skip role argspec validation with a templated value
+ include_role:
+ name: role_with_argspec
+ rolespec_validate: "{{ False | bool }}"
+ vars:
+ optional_int: wrong_type