I’m looking for some help or guidance in trying to create a list of volumes to pass along to docker container, before that actual command.
So, the format for this is:
volumes:
- '{{ dir1 }}:{{ dir1 }}'
- '/tmp:/tmp'
And so on…
But I’m looking at a case where the volumes are dynamic. And I’d like to put them in a variable before this step and then pass that variable along.
The alternative right now is a bunch of separate docker_container
steps with a when
condition, which is not very efficient.
Hi
I’m looking for some help or guidance in trying to create a list of volumes to pass along to docker container, before that actual command.
So, the format for this is:
volumes:
- '{{ dir1 }}:{{ dir1 }}'
- '/tmp:/tmp'
And so on…
But I’m looking at a case where the volumes are dynamic. And I’d like to put them in a variable before this step and then pass that variable along.
Yes that is possible.
But it’s not clear what the problem is, or what is the question you have with this?
I.E. what exactly are you looking for?
The question is: how do you do it? I’m looking for an example.
Nothing I’ve found so far in the documentation says outright “this is how it’s done”.
I’m uncertain what kind of variable I need to produce, in what way, so that it is the correct one for this field to accept it.
This may be obvious to a lot of people, but not to me.
You have this
volumes:
- '{{ dir1 }}:{{ dir1 }}'
- '/tmp:/tmp'
The dashes indicates it's a list, and pretty sure if you check the documentation it says that volumes takes a list.
So create a variable with a list in it and provide that variable to volumes.
Define a variable
vars:
myvar:
- '{{ dir1 }}:{{ dir1 }}'
- '/tmp:/tmp'
and then use it
volumes: '{{ myvar }}'
Apologies for the late reply.
What I’m looking for is more something for use inside a role, and also additive.
So, if I already have a list, to be able to specificy a “when” condition and if the condition is met, add something to the list.