Require browser or TTY for authorization code flow
Only attempt the authorization code flow when either we can launch a
browser or there is a TTY.
Otherwise users running in e.g. gitlab pipelines and expecting to use
kerberos are seeing tracebacks, as input() fails to read.
This would save users from seeing pointless logs, and a request would
not be sent to SSO.
JIRA: RHELCMP-13503