github-traffic-stats icon indicating copy to clipboard operation
github-traffic-stats copied to clipboard

password from a pipe or a non-terminal

Open gilleslamiral opened this issue 6 years ago • 3 comments

Hi,

I hope gts is meant to be run also without a end-user ready to type a password at each run.

The syntax documented as username:password no longer works. The code main() has:

    pw = getpass.getpass('Password:')

I suggest to replace it with:

    if sys.stdin.isatty():
        pw = getpass.getpass('Password:')
    else:
        print 'Password:'
        pw = sys.stdin.readline().rstrip()

This way it'll be possible to use:

{ sleep 1; cat secret.nchah ; } | gts 'nchah' 'github-traffic-stats' 'save_csv'

Otherwise I'm open to any other suggestion to avoid a user typing the password at each request. Thanks in advance!

gilleslamiral avatar Apr 02 '18 16:04 gilleslamiral

This is a good suggestion. It would be good if we only have to authenticate once similar to how heroku-cli works for example.

AnthonyBloomer avatar Apr 02 '18 21:04 AnthonyBloomer

+1 to this idea. Other users may have implemented their own workarounds to avoid typing in the pw each time, but this looks like a good option to support. I can add this in next week when I have some time, or feel free to start up a PR. : )

nchah avatar Apr 06 '18 23:04 nchah

Thanks!

I've patched mine so it's ok. Just glad I'll won't have to next time!

gilleslamiral avatar Apr 07 '18 14:04 gilleslamiral