Thank you every much, that worked, although I am not certain why echo with shell module wouldnt work , but thank you! On Friday, 14 April 2023 at 02:24:25 UTC-4 Vladimir Botka wrote:
> On Thu, 13 Apr 2023 21:14:42 -0700 (PDT) > "[email protected]" <[email protected]> wrote: > > > --- > > - name: Read Users > > gather_facts: True > > hosts: localhost > > > > tasks: > > - name: Read users > > read_csv: > > path: users.csv > > delimiter: "," > > register: s3list > > > > - name: Running command > > command: > > echo "aws s3 cp {{ s3.source }}" {{ s3.destination }} -- recursive > --acl-parameters ---profile prod' > > loop: "{{ s3list.list }}" > > loop_control: > > loop_var: s3 > > > > the csv file contents: > > source,destination > > S3://mybucket/puppy/test.jpg,S3://mybucket2/trying/ > > S3://mybucket/puppy/ds.jpg,S3://mybucket3/trying/ > > S3://mybucket/puppy/as.jpg,S3://mybucket4/trying/ > > S3://mybucket/puppy/was.jpg,S3://mybucket5/trying/ > > S3://mybucket/puppy/qaes.jpg,S3://mybucket6/trying/ > > > > When I run the playbook I am getting the following > > TASK [Running command] > > > ********************************************************************************************************************* > > changed: [localhost] => (item={'source': 'S3://mybucket/puppy/test.jpg', > > 'destination': 'S3://mybucket2/trying/'}) > > changed: [localhost] => (item={'source': 'S3://mybucket/puppy/ds.jpg', > > 'destination': 'S3://mybucket3/trying/'}) > > changed: [localhost] => (item={'source': 'S3://mybucket/puppy/as.jpg', > > 'destination': 'S3://mybucket4/trying/'}) > > changed: [localhost] => (item={'source': 'S3://mybucket/puppy/was.jpg', > > 'destination': 'S3://mybucket5/trying/'}) > > changed: [localhost] => (item={'source': 'S3://mybucket/puppy/qaes.jpg', > > 'destination': 'S3://mybucket6/trying/'}) > > You're not running the *aws* command. You're testing the *aws* command > with *echo*. Actually, this is a good idea to see the commands before > you run them. Register the results and take a look at *stdout*. > > In the module *command*, there is a couple of syntax problems > in the run-string. To make the syntax both simpler and easier to read > use the *folded style*. See > https://yaml.org/spec/1.2.2/#813-folded-style > > The tasks below > > - command: >- > echo > aws s3 cp > {{ item.source }} > {{ item.destination }} > --recursive --acl parameters --profile prod > loop: "{{ s3list.list }}" > register: out > - debug: > msg: "{{ out.results|map(attribute='stdout')|list }}" > > should give you what you want > > msg: > - aws s3 cp S3://mybucket/puppy/test.jpg S3://mybucket2/trying/ > --recursive --acl parameters --profile prod > - aws s3 cp S3://mybucket/puppy/ds.jpg S3://mybucket3/trying/ > --recursive --acl parameters --profile prod > - aws s3 cp S3://mybucket/puppy/as.jpg S3://mybucket4/trying/ > --recursive --acl parameters --profile prod > - aws s3 cp S3://mybucket/puppy/was.jpg S3://mybucket5/trying/ > --recursive --acl parameters --profile prod > - aws s3 cp S3://mybucket/puppy/qaes.jpg S3://mybucket6/trying/ > --recursive --acl parameters --profile prod > > If this is what you want remove *echo* and run the *aws* command with > the option *--dryrun* > > - command: >- > aws s3 cp > {{ item.source }} > {{ item.destination }} > --dryrun --recursive --acl parameters --profile prod > loop: "{{ s3list.list }}" > register: out > - debug: > var: out > > If everything is alright copy the files > > - command: >- > aws s3 cp > {{ item.source }} > {{ item.destination }} > --recursive --acl parameters --profile prod > loop: "{{ s3list.list }}" > register: out > - debug: > var: out > > Notes: > > * You can remove the option *--recursive* as long as you copy single > files > * You'll have to replace *parameters* with actual values. See > https://docs.aws.amazon.com/cli/latest/reference/s3/cp.html > > > -- > Vladimir Botka > -- 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 [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/de345992-1a92-4648-b2e4-4bd4dfe10f66n%40googlegroups.com.
