> What do you mean by that? Usually (I am not a native English speaker),
> "red herring" means, for me, "something that made me look at the error
> not in the place where it actually occurred". In this case:

Yep! The installer would die out after failing at the SSO step. In the log for this failure it fails with the linked error "You must specify either url or hostname" like you see in that bug report. Nowhere was I was able to deduce it was a failing SSH remote command. I just had happened to decide to look at the other log and saw it

The funny thing is, it was right in front of my face the whole time (stty) but it never dawned on me until I decided to try running a command myself like you see with uptime below

> The error message does mention 'stty', and I guess this is
> more-or-less the best the engine could have done, other than trying to
> analyze your .bashrc.
{...}
> A common idiom for such cases is to check PS1 - bash should set it
> only for interactive shells. E.g.:
>
> if [ "$PS1" ]; then
>    stty erase ^?
> fi
>
> But you might better fix your terminal emulator instead.
{...}
> :-(

> (Used to be more common 20-30 years ago, when people actually had many
> more different physical terminals, terminal emulators, and unix-like
> OSes. Sadly our industry failed to fix this, requiring such
> workarounds, so far. See also, likely way-out-of-date:
> http://www.tldp.org/HOWTO/BackspaceDelete/ )

Yup, going forward I will be putting it like that by checking for PS1. This was just such an edge case that it had completely slipped my mind that it would be the problem

I dont know why or when this started occuring - I want to say around RHEL 7.5 or so, but vim reverted back to this behavior I havent seen in almost 15 years

I run Fedora on all my machines but collegues on Win10 also started to see it

The only fix is the stty thing

> Checking the current 4.3 code, I see that we fail if there is anything
> at all on stderr.
> Trying to check git log finding out why we do that, I fail to find a
> concrete reason - although, if you ask me, it might make sense.
> Changing that is easy, but then might make real errors you should
> actually notice, go unnoticed.

> In 4.4 we do not have this code anymore, and use ansible instead for
> host-deploy. Since 4.4 GA is expected soon (a few weeks?), and 4.3
> will be EOLed soon after that, I do not see much point in investing in
> this anyway.

I agree. I can see the benefit in it being a little more decisive, however, the trade off means the developer has to try to account for every case and this, of course, was a complete edge case so likely would have been missed if parsing individual stderr output

However, you can run SSH not try and load .bashrc environment - so I was thinking something more along the lines of that

[root@node01 ~]# ssh root@localhost uptime
root@localhost's password:
stty: standard input: Inappropriate ioctl for device
 07:50:39 up 1 day,  8:05,  2 users,  load average: 0.08, 0.07, 0.06

[root@node01 ~]# ssh -t root@localhost uptime
root@localhost's password:
 07:51:47 up 1 day,  8:07,  3 users,  load average: 0.06, 0.07, 0.06
Connection to localhost closed.

> Well, I wouldn't say "110%", but the fact that we try to do things
> automatically, on remote machines, using tools that were mainly
> intended for manual/interactive use, does mean that we are limited.

I guess 110 is a bit of a biased over-exaggeration :-)

The only reason I say that is because I love ovirt a lot but every experience I have had with getting it installed as always ended with a different failure each time where there isnt an obvious reason as to why there was a problem and it deters me from installations and only having to do it if I have to

The reason I have found, specifically now with this with such a minor change in to bashrc, is that in enterprise environment we have a standard base configuration that we work off - this involves changing SSH parameters, bashrc environment changes, security changes w/ sysctl and others

Every time I have had a problem it is apparent now it is because of any of those changes. My suggestion was more or less to have it called out somewhere obvious that oVirt installer/ansible generally want a completely fresh install and that making any changes to the system prior could have negative impact. Example here: a simple convenience change to .bashrc that we have done all the time led to a 2 day time sink

Going forward, my standard operating for install is going to be install immediately after bare ISO install from minimal ISO and bypass any bootstrapping changes we do to our systems. Then, once up, I will apply our changes as I have never had issues with ovirt after its up - its the install that is always a very rigid time consuming problem for me