nchah / github-traffic-stats

Get statistics on web traffic to your GitHub repositories.
https://pypi.org/project/github-traffic-stats/
121 stars 31 forks source link

password from a pipe or a non-terminal #12

Open gilleslamiral opened 6 years ago

gilleslamiral commented 6 years ago

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!

AnthonyBloomer commented 6 years ago

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

nchah commented 6 years ago

+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. : )

gilleslamiral commented 6 years ago

Thanks!

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