On 29.11.2018 06:21, Andy Smith wrote:
Is there a way to apply a tag to all of the import_tasks statements
in a role's tasks/main.yml file without stating it on every
import_tasks line?

That is, given a directory structure a bit like this:

.
├── roles
│   ├── some_server
│   │   └── tasks
│   │       ├── configure_this.yml
│   │       ├── create_that.yml
│   │       ├── main.yml
│   │       └── other_config.yml
│   ├── other_role
.   .
.
└── site.yml

site.yml:

- hosts: all
  roles:
    - {
        role: some_server,
        tags: some_server,
      }

That's what you're do here, add tag some_server on all task in the role role_server.


    - {
        role: other_role,
        tags: other_role,
      }

And this will add tag other_role on all tasks in the role.


And roles/some_server/tasks/main.yml:

- import_tasks: configure_this.yml
- import_tasks: create_that.yml
- import_tasks: other_config.yml

If I tried to conditionally apply only tag "some_server" then it
does process roles/some_server/tasks/main.yml but not any of the
imports within it.

If I add a tag attribute to each of those imports, i.e.:

- import_tasks: configure_this.yml tags=some_server
- import_tasks: create_that.yml tags=some_server
- import_tasks: other_config.yml tags=some_server

Since you are setting the tag on the role in the play, you don't need to tag it here again.


--
Kai Stian Olstad

--
You received this message because you are subscribed to the Google Groups "Ansible 
Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to ansible-project+unsubscr...@googlegroups.com.
To post to this group, send email to ansible-project@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/0528c0debea83ffe9c566692e37931ed%40olstad.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to