Hii

You are trying to execute multiple commands with the win_shell module,
but according to the docs
(https://docs.ansible.com/ansible/latest/modules/win_shell_module.html#synopsis)
that support one at a time:

"The win_shell module takes the command name followed by a list of
space-delimited arguments."

Simple solution: use multiple win_shell tasks.

Dick

On Sun, 23 Feb 2020 at 12:46, Yehuda Pinhas <[email protected]> wrote:
>
> Hi guys.
>
> This is my code:
> ---
>   - name: Multi-line shell
>     win_shell:
>     ## Creating Scopes
>       Add-DhcpServerv4Scope -Name "{{ hebrew_site_name }}" -StartRange "{{ 
> DHCP_computers_segment }}.61" -EndRange "{{ DHCP_computers_segment }}.243" 
> -SubnetMask "255.255.255.0" -LeaseDuration "8.00:00:00"
>       Add-DhcpServerv4Scope -Name "{{ hebrew_site_name }} טלפוניה" 
> -StartRange "{{ DHCP_telephony_segment }}.61" -EndRange "{{ 
> DHCP_telephony_segment }}.243" -SubnetMask "255.255.255.0" -LeaseDuration 
> "8.00:00:00"
>
> Error:
> 2020-02-23 13:33:51,237 p=54513 u=ansible n=ansible | PLAY [---------------   
> Creating VLAN 2,5 IP pools on dhcp1   ---------------] ********************
> 2020-02-23 13:33:51,251 p=54513 u=ansible n=ansible | TASK [set_fact] 
> ***********************************************************************************
> 2020-02-23 13:33:51,270 p=54513 u=ansible n=ansible | ok: [dhcp-test]
> 2020-02-23 13:33:51,275 p=54513 u=ansible n=ansible | TASK [include_vars] 
> *******************************************************************************
> 2020-02-23 13:33:51,293 p=54513 u=ansible n=ansible | ok: [dhcp-test]
> 2020-02-23 13:33:51,297 p=54513 u=ansible n=ansible | TASK [include_role : 
> new_branch] ******************************************************************
> 2020-02-23 13:33:51,612 p=54513 u=ansible n=ansible | TASK [new_branch : 
> Multi-line shell] 
> **************************************************************
> 2020-02-23 13:33:51,742 p=54528 u=ansible 
> n=requests.packages.urllib3.connectionpool | Starting new HTTPS connection 
> (1): dhcp-test
> 2020-02-23 13:33:51,767 p=54528 u=ansible 
> n=requests.packages.urllib3.connectionpool | "POST /wsman HTTP/1.1" 401 0
> 2020-02-23 13:33:51,770 p=54528 u=ansible 
> n=requests.packages.urllib3.connectionpool | Resetting dropped connection: 
> dhcp-test
> 2020-02-23 13:33:51,794 p=54528 u=ansible 
> n=requests.packages.urllib3.connectionpool | "POST /wsman HTTP/1.1" 401 0
> 2020-02-23 13:33:51,872 p=54528 u=ansible 
> n=requests.packages.urllib3.connectionpool | "POST /wsman HTTP/1.1" 200 1629
> 2020-02-23 13:33:51,884 p=54528 u=ansible 
> n=requests.packages.urllib3.connectionpool | "POST /wsman HTTP/1.1" 200 847
> 2020-02-23 13:33:52,443 p=54528 u=ansible 
> n=requests.packages.urllib3.connectionpool | "POST /wsman HTTP/1.1" 200 753
> 2020-02-23 13:33:53,177 p=54528 u=ansible 
> n=requests.packages.urllib3.connectionpool | "POST /wsman HTTP/1.1" 200 998
> 2020-02-23 13:33:57,774 p=54528 u=ansible 
> n=requests.packages.urllib3.connectionpool | "POST /wsman HTTP/1.1" 200 3575
> 2020-02-23 13:33:57,779 p=54528 u=ansible 
> n=requests.packages.urllib3.connectionpool | "POST /wsman HTTP/1.1" 200 757
> 2020-02-23 13:33:57,784 p=54528 u=ansible 
> n=requests.packages.urllib3.connectionpool | "POST /wsman HTTP/1.1" 200 602
> 2020-02-23 13:33:57,789 p=54513 u=ansible n=ansible | fatal: [dhcp-test]: 
> FAILED! => {"changed": true, "cmd": "Add-DhcpServerv4Scope
> -Name \"אור-יהודה-מומה\" -StartRange \"10.90.88.61\" -EndRange 
> \"10.90.88.243\" -SubnetMask \"255.255.255.0\" -LeaseDuration \"8.00:00:00\"
> Add-DhcpServerv4Scope -Name \"אור-יהודה-מומה טלפוניה\" -StartRange 
> \"10.95.88.61\" -EndRange \"10.95.88.243\" -SubnetMask \"255.255.255.0\"
> -LeaseDuration \"8.00:00:00\"", "delta": "0:00:03.656283", "end": "2020-02-23 
> 11:33:57.948151", "msg": "non-zero return code", "rc": 1,
> "start": "2020-02-23 11:33:54.291867", "stderr": "Add-DhcpServerv4Scope : 
> Cannot bind parameter because parameter 'Name' is specified more than
>  once. To provide \r\nmultiple values to parameters that can accept multiple 
> values, use the array syntax. For example,
>  \"-parameter \r\nvalue1,value2,value3\".\r\nAt line:1 char:239\r\n+ ... 
> 55.0\" -LeaseDuration \"8.00:00:00\" Add-DhcpServerv4Scope
>  -Name \"אור-יה ...\r\n+                                                      
>        ~~~~~\r\n    + CategoryInfo          :
>  InvalidArgument: (:) [Add-DhcpServerv4Scope], ParameterBindingException\r\n  
>   + FullyQualifiedErrorId :
>  ParameterAlreadyBound,Add-DhcpServerv4Scope", "stderr_lines": 
> ["Add-DhcpServerv4Scope : Cannot bind parameter because parameter 'Name' is
>  specified more than once. To provide ", "multiple values to parameters that 
> can accept multiple values, use the array syntax.
>  For example, \"-parameter ", "value1,value2,value3\".", "At line:1 
> char:239", "+ ... 55.0\" -LeaseDuration \"8.00:00:00\"
>  Add-DhcpServerv4Scope -Name \"אור-יה ...", "+                                
>                              ~~~~~", "    +
>  CategoryInfo          : InvalidArgument: (:) [Add-DhcpServerv4Scope], 
> ParameterBindingException", "    + FullyQualifiedErrorId :
>  ParameterAlreadyBound,Add-DhcpServerv4Scope"], "stdout": "", "stdout_lines": 
> []}
> 2020-02-23 13:33:57,791 p=54513 u=ansible n=ansible | PLAY RECAP 
> ****************************************************************************************
> 2020-02-23 13:33:57,791 p=54513 u=ansible n=ansible | dhcp-test               
>    : ok=2    changed=0    unreachable=0    failed=1    skipped=0    rescued=0 
>    ignored=0
>
> If i'm commenting any one of the add-scope commands they work perfectly. But 
> for some reason when Ansible push both in one-line instead multiple lines.
>
>
>
> To try and fix that I changed my code to this:
> ---
>   - name: Multi-line shell
>     win_shell: |
>     ## Creating Scopes
>       Add-DhcpServerv4Scope -Name "{{ hebrew_site_name }}" -StartRange "{{ 
> DHCP_computers_segment }}.61" -EndRange "{{ DHCP_computers_segment }}.243" 
> -SubnetMask "255.255.255.0" -LeaseDuration "8.00:00:00"
>       Add-DhcpServerv4Scope -Name "{{ hebrew_site_name }} טלפוניה" 
> -StartRange "{{ DHCP_telephony_segment }}.61" -EndRange "{{ 
> DHCP_telephony_segment }}.243" -SubnetMask "255.255.255.0" -LeaseDuration 
> "8.00:00:00"
>
> But then I received this error:
> 2020-02-23 13:43:32,770 p=54678 u=ansible n=ansible | PLAY [---------------   
> Creating VLAN 2,5 IP pools on dhcp1   ---------------] ********************
> 2020-02-23 13:43:32,784 p=54678 u=ansible n=ansible | TASK [set_fact] 
> ***********************************************************************************
> 2020-02-23 13:43:32,802 p=54678 u=ansible n=ansible | ok: [dhcp-test]
> 2020-02-23 13:43:32,807 p=54678 u=ansible n=ansible | TASK [include_vars] 
> *******************************************************************************
> 2020-02-23 13:43:32,826 p=54678 u=ansible n=ansible | ok: [dhcp-test]
> 2020-02-23 13:43:32,830 p=54678 u=ansible n=ansible | TASK [include_role : 
> new_branch] ******************************************************************
> 2020-02-23 13:43:32,852 p=54678 u=ansible n=ansible | ERROR! Syntax Error 
> while loading YAML.
>   did not find expected key
>
> The error appears to be in 
> '/etc/ansible/roles/new_branch/tasks/dhcp1_add_pools.yml': line 5, column 7, 
> but may
> be elsewhere in the file depending on the exact syntax problem.
>
> The offending line appears to be:
>
>     ## Creating Scopes
>       Add-DhcpServerv4Scope -Name "{{ hebrew_site_name }}" -StartRange "{{ 
> DHCP_computers_segment }}.61" -EndRange "{{ DHCP_computers_segment }}.243" 
> -SubnetMask "255.255.255.0" -LeaseDuration "8.00:00:00"
>       ^ here
> We could be wrong, but this one looks like it might be an issue with
> missing quotes. Always quote template expression brackets when they
> start a value. For instance:
>
>     with_items:
>       - {{ foo }}
>
> Should be written as:
>
>     with_items:
>       - "{{ foo }}"
>
> 2020-02-23 13:43:32,853 p=54678 u=ansible n=ansible | PLAY RECAP 
> ****************************************************************************************
> 2020-02-23 13:43:32,853 p=54678 u=ansible n=ansible | dhcp-test               
>    : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0 
>    ignored=0
>
> Any suggestions? Why is this happening? it should be pretty straight forward.
>
> --
> 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/24ab4a52-1113-41f2-bf33-aa3e1ccb4b6a%40googlegroups.com.



-- 
Dick Visser
Trust & Identity Service Operations Manager
GÉANT

-- 
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/CAL8fbwPWv5i__rni%2BsGSGuC5PitObHt0g9h9OzwexcW4V9CAuw%40mail.gmail.com.

Reply via email to