I try from my terminal, to execute on remote server a openstack command to a docker. The purpose is to get the id of openstack project.
when condition is true, I want to get id, but the script below failed to get id. I don't know if I can execute if condition to EOF statement
ret="$(ssh -qT root@server << EOF
docker exec openstack bash -c ". adminrc &&
if [ false ]; then openstack project create p_ops &>/dev/null
else :
fi
id_u=$(openstack user show u_ops | grep " id" | cut -d "|" -f3 | xargs)
openstack role add SwiftOperator --project p_ops --user $id_u
id_p=$(openstack project show p_ops | grep " id" | cut -d "|" -f3|xargs)
echo "$id_p""
EOF
)"
I get the output :
Missing value auth-url required for auth plugin password
Missing value auth-url required for auth plugin password
usage: openstack role add [-h]
[--system <system> | --domain <domain> | --project <project>]
[--user <user> | --group <group>]
[--group-domain <group-domain>]
[--project-domain <project-domain>]
[--user-domain <user-domain>] [--inherited]
[--role-domain <role-domain>]
<role>
openstack role add: error: argument --user: expected one argument
I desired the id of project :
echo $id_p
faafe2044c4235ac648faaceae5d1a3bf2a8f7a8ca8a765f5a9621a5e53d9162