Formatting in debug

Hello,

While i try to grep/cut the url from my below debug output , I am unable to get the exact output. I tried with split, dict2items ,item2dicts to break it and grep the exact line .

TASK [debug] *************************************************************************************************************************************
Monday 15 May 2023 09:10:06 +0300 (0:00:00.027) 0:00:02.906 ************
ok: [localhost] => {
“msg”: “export OS_AUTH_URL=https://mydomain.net:9001/v3\nexport OS_PROJECT_ID=abcdefghijklmnopqwertyuu\nexport OS_PROJECT_NAME="my_project"\nexport OS_USER_DOMAIN_NAME="Default"\nif [ -z "$OS_USER_DOMAIN_NAME" ]; then unset OS_USER_DOMAIN_NAME; fi\nexport OS_PROJECT_DOMAIN_ID="default"\nif [ -z "$OS_PROJECT_DOMAIN_ID" ]; then unset OS_PROJECT_DOMAIN_ID; fi\nunset OS_TENANT_ID\nunset OS_TENANT_NAME\nexport OS_USERNAME="my_project"\nexport OS_INTERFACE=public\nexport OS_IDENTITY_API_VERSION=3”
}

I need only the string “https://mydomain.net:9001/v3
from the above debug output as a variable for my next play .

If you get more verbose, you the the output with STDOUT and STDOUT_LINES. STDOUT_LINESis the closest you get for what you’re after. May be callback_plugin may help… not sure, never tried that.

Cheers,

Hi,

No STDOUT or stdout_lines present. After “msg” the output has only one line inside a {} .

Don’t parse the console output, use set_fact to fetch it.
The important question is: what does your debug command look like?
It all sounds like you should be doing something simpler earlier on…

yes… I was using set_fact and the output shown above is the debug output of the set_fact.

Still to fetch the URL alone from the output(debug) of the set_fact , and to set it as a new variable( using set_fact) … which is what i am looking for …

OK, so my question is: what does your set_fact task look like? I.e.
where do you get that string from?

The setfact task has the contents of a keystone rc file .
However I got the result by writing it into a file , replace the string, read the required lines and then deleted the file …

So how is the keystone rc file being populated?
Are you perhaps trying to manage a host with ansible, that is already
managed in some other way...?