Hi Disk,

More explanation about playbook, hope you did not chance to see that,
please check once.





 cat /tmp/volume.txt  #Has list of disk attached to server, which needs to
excluded

["xvda", "xvdb", "xvdc", "xvdd", "xvde", "xvdf", "xvdg", "xvdh", "xvdi"]





# disk.yml

disk_count.stdout: 2 #number of disk need to add to server.



 - name: Call devicecheck script

    shell: |

      a1=( "xvda" "xvdb" "xvdc" "xvdd" "xvde" "xvdf" "xvdg" "xvdh" "xvdi"
"xvdj" "xvdk" "xvdl" "xvdm" "xvdn" "xvdo" "xvdp" "xvdq" "xvdr" "xvds"
"xvdt" "xvdu" "xvdv" "xvdw" "xvdx" "xvdy" "xvdz")

      for i in `cat /tmp/volume.txt | sed -e 's/\[//' | sed -e 's/\]//' |
sed -e 's/\"//g' | sed -e 's/,/ /g'`

      do

      a2+=("$i")

      done

      a3=()

      for i in "${a1[@]}"; do

      skip=

      for j in "${a2[@]}"; do

        [[ $i == $j ]] && { skip=1; break; }

      done

        [[ -n $skip ]] || a3+=("$i")

      done

      joined=$(printf ","\""dev/"%s"\"" "${a3[@]:0:{{disk_count.stdout}}}")

      echo "["${joined:1}"]"

    register: device_name

    when: inventory_hostname in groups['dbserver']



  - name: Register linux jump host with variable |device_name

    add_host:

      name: "10.0.0.20"

      PLAY1VAR_NEW01: "{{ device_name.stdout }}"

    register: PLAY1VAR_NEW01

    when: inventory_hostname in groups['dbserver']



  - debug: var=PLAY1VAR_NEW01

    when: inventory_hostname in groups['dbserver']



  - name: terraform variable store tasks |device_name

    shell: |

      echo {{ hostvars["10.0.0.20"]["PLAY1VAR_NEW01"] }} > /tmp/device_name

    when: inventory_hostname in groups['controller_servers']

    register: terraform_disk



#

=====================================Debug
Value======================================================================================

*#ansible-playbook –I inventory disk.yml –vvv*



TASK [asm_pdb_disk_mapping : debug]
************************************************************************************************************************************

task path:
/infra/infracode/automation_deployment/ansible/dynamic_tags/asm_pdb_disk_mapping/tasks/asm_pdb_disk_mapping.yml:219

ok: [10.0.0.10] => {

    "device_name": {

        "changed": true,

        "cmd": "a1=( \"xvda\" \"xvdb\" \"xvdc\" \"xvdd\" \"xvde\" \"xvdf\"
\"xvdg\" \"xvdh\" \"xvdi\" \"xvdj\" \"xvdk\" \"xvdl\" \"xvdm\" \"xvdn\"
\"xvdo\" \"xvdp\" \"xvdq\" \"xvdr\" \"xvds\" \"xvdt\" \"xvdu\" \"xvdv\"
\"xvdw\" \"xvdx\" \"xvdy\" \"xvdz\")\nfor i in `cat /tmp/volume.txt | sed
-e 's/\\[//' | sed -e 's/\\]//' | sed -e 's/\\\"//g' | sed -e 's/,/
/g'`\ndo\na2+=(\"$i\")\ndone\na3=()\nfor i in \"${a1[@]}\"; do\nskip=\nfor
j in \"${a2[@]}\"; do\n  [[ $i == $j ]] && { skip=1; break; }\ndone\n  [[
-n $skip ]] || a3+=(\"$i\")\ndone\njoined=$(printf
\",\"\\\"\"dev/\"%s\"\\\"\" \"${a3[@]:0:2}\") \necho
\"[\"${joined:1}\"]\"\n",

        "delta": "0:00:00.089253",

        "end": "2020-02-18 10:28:59.483863",

        "failed": false,

        "rc": 0,

        "start": "2020-02-18 10:28:59.394610",

        "stderr": "",

        "stderr_lines": [],

        "stdout": "[\"dev/xvdj\",\"dev/xvdk\"]",      #This output we want
to capture in subsequent tasks

        "stdout_lines": [

            "[\"dev/xvdj\",\"dev/xvdk\"]"

        ]

    }

}





TASK [asm_pdb_disk_mapping : debug]
************************************************************************************************************************************

task path:
/infra/infracode/automation_deployment/ansible/dynamic_tags/asm_pdb_disk_mapping/tasks/asm_pdb_disk_mapping.yml:230

ok: [10.0.0.10] => {

    "PLAY1VAR_NEW01": {

        "add_host": {

            "groups": [],

            "host_name": "10.0.0.20",

            "host_vars": {

                "PLAY1VAR_NEW01": [

                    "dev/xvdj",

                    "dev/xvdk"

                ]

            }

        },

        "changed": true,

        "failed": false

    }

}





TASK [asm_pdb_disk_mapping : debug]
************************************************************************************************************************************

task path:
/infra/infracode/automation_deployment/ansible/dynamic_tags/asm_pdb_disk_mapping/tasks/asm_pdb_disk_mapping.yml:243

ok: [10.0.0.10] => {

    "terraform_disk": {

        "changed": false,

        "skip_reason": "Conditional result was False",

        "skipped": true

    }

}

ok: [10.0.0.20] => {

    "terraform_disk": {

        "changed": true,

        "cmd": "echo [u'dev/xvdj', u'dev/xvdk'] > /tmp/device_name\n",
#Expected Value  >> "[\"dev/xvdj\",\"dev/xvdk\"]",

        "delta": "0:00:00.004322",

        "end": "2020-02-17 23:29:15.619772",

        "failed": false,

        "rc": 0,

        "start": "2020-02-17 23:29:15.615450",

        "stderr": "",

        "stderr_lines": [],

        "stdout": "",

        "stdout_lines": []

    }

}

*Regards,*Barun Kumar
Mobile: +91 8297380006, India
Will get you.


On Mon, Feb 17, 2020 at 7:07 PM Dick Visser <[email protected]> wrote:

> Hi Barun
>
> You say "When I assign a variable containing double quotes to another
> variable" - what variable are you assigning to what other variable?
> What you post appears to be the output of a cmd task (I'm guessing, since
> you didn't post the original playbook, nor the task).
> That is JSON formatted output and looks fine to me.
>
> But then you say:
>
>
> Expected value to store in variable : [\"dev/xvdj\",\"dev/xvdk\"]
> But it is storing this variable value: [u'dev/xvdj', u'dev/xvdk']
>
>
> What variables are you referring to, and what values do you think are
> assigned to them?
>
> Maybe first things first: what are you actually trying to achieve? What do
> you need?
>
>
> Dick
>
> On Mon, 17 Feb 2020 at 12:19, Barun kumar <[email protected]> wrote:
>
>> When I assign a variable containing double quotes to another variable the
>> double quotes (") sometimes get converted to single quotes ('). .can you
>> please suggest how to solve this.
>>
>>
>>
>>
>>
>> TASK [asm_pdb_disk_mapping : debug]
>> ************************************************************************************************************************************
>>
>> ok: [10.0.0.10] => {
>>
>>     "device_name": {
>>
>>         "changed": true,
>>
>>         "cmd": "a1=( \"xvda\" \"xvdb\" \"xvdc\" \"xvdd\" \"xvde\"
>> \"xvdf\" \"xvdg\" \"xvdh\" \"xvdi\" \"xvdj\" \"xvdk\" \"xvdl\" \"xvdm\"
>> \"xvdn\" \"xvdo\" \"xvdp\" \"xvdq\" \"xvdr\" \"xvds\" \"xvdt\" \"xvdu\"
>> \"xvdv\" \"xvdw\" \"xvdx\" \"xvdy\" \"xvdz\")\nfor i in `cat
>> /tmp/volume.txt | sed -e 's/\\[//' | sed -e 's/\\]//' | sed -e 's/\\\"//g'
>> | sed -e 's/,/ /g'`\ndo\na2+=(\"$i\")\ndone\na3=()\nfor i in \"${a1[@]}\";
>> do\nskip=\nfor j in \"${a2[@]}\"; do\n  [[ $i == $j ]] && { skip=1; break;
>> }\ndone\n  [[ -n $skip ]] || a3+=(\"$i\")\ndone\njoined=$(printf
>> \",\"\\\"\"dev/\"%s\"\\\"\" \"${a3[@]:0:2}\") \necho
>> \"[\"${joined:1}\"]\"\n",
>>
>>         "delta": "0:00:00.088902",
>>
>>         "end": "2020-02-17 21:50:56.868731",
>>
>>         "failed": false,
>>
>>         "rc": 0,
>>
>>         "start": "2020-02-17 21:50:56.779829",
>>
>>         "stderr": "",
>>
>>         "stderr_lines": [],
>>
>>         "stdout": "[\"dev/xvdj\",\"dev/xvdk\"]",
>>
>>         "stdout_lines": [
>>
>>             "[\"dev/xvdj\",\"dev/xvdk\"]"
>>
>>         ]
>>
>>     }
>>
>> }
>>
>>
>>
>> Expected value to store in variable : [\"dev/xvdj\",\"dev/xvdk\"]
>>
>>
>>
>> But it is storing this variable value: [u'dev/xvdj', u'dev/xvdk']
>>
>>
>>
>> Tel me know how to solve this issue.
>>
>>
>> *Regards,*Barun Kumar
>> Mobile: +91 8297380006, India
>> Coming Soon.......
>>
>> --
>> 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/CADG%3DkotAgP8RdwBmyHjG9nv8GO-0Kqr5Zt%3DH_FTfmfk09Aomwg%40mail.gmail.com
>> <https://groups.google.com/d/msgid/ansible-project/CADG%3DkotAgP8RdwBmyHjG9nv8GO-0Kqr5Zt%3DH_FTfmfk09Aomwg%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>
>
> --
> 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/CAL8fbwNowDf2ixf1%2Bgi0KL5RUHPBoHgZE_wpYQPqm74TZXObvA%40mail.gmail.com
> <https://groups.google.com/d/msgid/ansible-project/CAL8fbwNowDf2ixf1%2Bgi0KL5RUHPBoHgZE_wpYQPqm74TZXObvA%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>

-- 
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/CADG%3DkosVpCxUU_VDOrMKiN4eZJmDCAGvMLS4rSoYYTmjUo6exw%40mail.gmail.com.

Reply via email to