Reputation: 39
I have been searching but I cannot find answer to my question.
What I am trying to do is to connect to remote shell of openshift container and create db dump, which works if i put username,password and db name by hand (real values).
I wish to execute this command to access env variables: (this command later will be part of bigger script)
oc rsh mon-rs-nr-0 mongodump --host=rs/mon-rs-nr-0.mon-rs-nr.xxx.svc.cluster.local,mon-rs-nr-1.xxx.svc.cluster.local,mon-rs-nr-2.mon-rs-nr.xxx.svc.cluster.local --username=$MONGODB_USER --password=$MONGODB_PASSWORD --authenticationDatabase=$MONGODB_DATABASE
But it is not working, I also tried different versions with echo etc. (env vars are not replaced to they values). Env vars are present inside container.
When I try
oc rsh mon-rs-nr-0 echo "$MONGODB_PASSWORD"
I recieve
$MONGODB_PASSWORD
But when i firstly connect to container and then execute command:
C:\Users\xxxx\Desktop>oc rsh mon-rs-nr-0
$ echo "$MONGODB_PASSWORD"
mAYXXXXXXXXXXX
It works. However I need to use it in a way I presented at the top, do somebody know workaround?
Upvotes: 2
Views: 323
Reputation: 39
Thanks to @msaw328 comment here is solution:
C:\Users\xxx\Desktop>oc rsh mon-rs-nr-0 bash -c "mongodump --host=rs/mon-rs-nr-0.mon-rs-nr.xxx.svc.cluster.local,mon-rs-nr-1.mon-rs-nr.xxx.svc.cluster.local,mon-rs-nr-2.mon-rs-nr.xxx.svc.cluster.local --username=$MONGODB_USER --password=$MONGODB_PASSWORD --authenticationDatabase=$MONGODB_DATABASE"
Output:
Defaulted container "mongodb" out of: mongodb, mongodb-sidecar, mongodb-exporter
2021-08-20T11:01:12.268+0000 writing xxx.yyy to
2021-08-20T11:01:12.269+0000 writing xxx.ccc to
2021-08-20T11:01:12.269+0000 writing xxx.ddd to
2021-08-20T11:01:12.269+0000 writing xxx.eee to
2021-08-20T11:01:12.339+0000 done dumping xxx.eee (11 documents)
2021-08-20T11:01:12.339+0000 writing xxx.zzz to
2021-08-20T11:01:12.340+0000 done dumping xxx.ccc (24 documents)
2021-08-20T11:01:12.340+0000 writing xxx.bbb to
2021-08-20T11:01:12.340+0000 done dumping xxx.ddd (24 documents)
2021-08-20T11:01:12.340+0000 writing xxx.fff to
2021-08-20T11:01:12.436+0000 done dumping xxx.yyy (1000 documents)
2021-08-20T11:01:12.436+0000 writing xxx.ggg to
2021-08-20T11:01:12.436+0000 done dumping xxx.bbb (3 documents)
2021-08-20T11:01:12.437+0000 writing xxx.aaa to
2021-08-20T11:01:12.441+0000 done dumping xxx.fff (0 documents)
2021-08-20T11:01:12.441+0000 done dumping xxx.zzz (3 documents)
2021-08-20T11:01:12.447+0000 done dumping xxx.aaa(0 documents)
2021-08-20T11:01:12.449+0000 done dumping xxx.ggg (0 documents)
Upvotes: 1