travis.rb icon indicating copy to clipboard operation
travis.rb copied to clipboard

Travis Login Fails

Open amirmasoudabdol opened this issue 4 years ago • 15 comments

I cannot login using the travis CLI. I looked around and this seems to be a know issue, but I really couldn't be sure! 🤷🏻‍♂️

Here is the travis report --pro:

System
Ruby:                     Ruby 3.0.0-p0
Operating System:         macOS 11.1
RubyGems:                 RubyGems 3.2.3

CLI
Version:                  1.10.0
Plugins:                  none
Auto-Completion:          yes
Last Version Check:       2021-01-14 10:06:58 +0100

Session
API Endpoint:             https://api.travis-ci.com/
Logged In:                no
Verify SSL:               yes
Enterprise:               no

Endpoints
com:                      https://api.travis-ci.com/ (current)
org:                      https://api.travis-ci.org/ ()

Last Exception
An error occurred running `travis login --pro`:
    RuntimeError: Not Found
        from /usr/local/Cellar/travis/1.10.0_2/libexec/gems/travis-1.10.0/lib/travis/tools/github.rb:212:in `rescue in basic_auth'
        from /usr/local/Cellar/travis/1.10.0_2/libexec/gems/travis-1.10.0/lib/travis/tools/github.rb:208:in `basic_auth'
        from /usr/local/Cellar/travis/1.10.0_2/libexec/gems/travis-1.10.0/lib/travis/tools/github.rb:216:in `login'
        from /usr/local/Cellar/travis/1.10.0_2/libexec/gems/travis-1.10.0/lib/travis/tools/github.rb:81:in `possible_tokens'
        from /usr/local/Cellar/travis/1.10.0_2/libexec/gems/travis-1.10.0/lib/travis/tools/github.rb:50:in `each_token'
        from /usr/local/Cellar/travis/1.10.0_2/libexec/gems/travis-1.10.0/lib/travis/tools/github.rb:37:in `with_token'
        from /usr/local/Cellar/travis/1.10.0_2/libexec/gems/travis-1.10.0/lib/travis/cli/login.rb:31:in `login'
        from /usr/local/Cellar/travis/1.10.0_2/libexec/gems/travis-1.10.0/lib/travis/cli/login.rb:50:in `run'
        from /usr/local/Cellar/travis/1.10.0_2/libexec/gems/travis-1.10.0/lib/travis/cli/command.rb:200:in `execute'
        from /usr/local/Cellar/travis/1.10.0_2/libexec/gems/travis-1.10.0/lib/travis/cli.rb:64:in `run'
        from /usr/local/Cellar/travis/1.10.0_2/libexec/gems/travis-1.10.0/bin/travis:18:in `<top (required)>'
        from /usr/local/Cellar/travis/1.10.0_2/libexec/bin/travis:23:in `load'
        from /usr/local/Cellar/travis/1.10.0_2/libexec/bin/travis:23:in `<main>'


For issues with the command line tool, please visit https://github.com/travis-ci/travis.rb/issues.
For Travis CI in general, go to https://github.com/travis-ci/travis-ci/issues or email [email protected].

amirmasoudabdol avatar Jan 14 '21 09:01 amirmasoudabdol

I also encountered the same problem...

System
Ruby:                     Ruby 2.6.3-p62
Operating System:         Mac OS X 10.15.4
RubyGems:                 RubyGems 3.0.3

CLI
Version:                  1.10.0
Plugins:                  none
Auto-Completion:          yes
Last Version Check:       2021-01-13 19:46:34 +0800

Session
API Endpoint:             https://api.travis-ci.com/
Logged In:                as "alvin0216"
Verify SSL:               yes
Enterprise:               no

Endpoints
com:                      https://api.travis-ci.com/ (access token, default, current)
org:                      https://api.travis-ci.org/ ()

Last Exception
An error occurred running `travis login --pro`:
    RuntimeError: Not Found
        from /Library/Ruby/Gems/2.6.0/gems/travis-1.10.0/lib/travis/tools/github.rb:212:in `rescue in basic_auth'
        from /Library/Ruby/Gems/2.6.0/gems/travis-1.10.0/lib/travis/tools/github.rb:208:in `basic_auth'
        from /Library/Ruby/Gems/2.6.0/gems/travis-1.10.0/lib/travis/tools/github.rb:216:in `login'
        from /Library/Ruby/Gems/2.6.0/gems/travis-1.10.0/lib/travis/tools/github.rb:81:in `possible_tokens'
        from /Library/Ruby/Gems/2.6.0/gems/travis-1.10.0/lib/travis/tools/github.rb:50:in `each_token'
        from /Library/Ruby/Gems/2.6.0/gems/travis-1.10.0/lib/travis/tools/github.rb:37:in `with_token'
        from /Library/Ruby/Gems/2.6.0/gems/travis-1.10.0/lib/travis/cli/login.rb:31:in `login'
        from /Library/Ruby/Gems/2.6.0/gems/travis-1.10.0/lib/travis/cli/login.rb:50:in `run'
        from /Library/Ruby/Gems/2.6.0/gems/travis-1.10.0/lib/travis/cli/command.rb:200:in `execute'
        from /Library/Ruby/Gems/2.6.0/gems/travis-1.10.0/lib/travis/cli.rb:64:in `run'
        from /Library/Ruby/Gems/2.6.0/gems/travis-1.10.0/bin/travis:18:in `<top (required)>'
        from /usr/local/bin/travis:23:in `load'
        from /usr/local/bin/travis:23:in `<main>'

Even though I took this approach

alvin0216 avatar Jan 14 '21 15:01 alvin0216

I am facing the same issue:

System
Ruby:                     Ruby 2.7.0-p0
Operating System:         Pop 20.04
RubyGems:                 RubyGems 3.1.2

CLI
Version:                  1.10.0
Plugins:                  none
Auto-Completion:          yes
Last Version Check:       2021-01-15 10:21:46 +0100

Session
API Endpoint:             https://api.travis-ci.com/
Logged In:                no
Verify SSL:               yes
Enterprise:               no

Endpoints
com:                      https://api.travis-ci.com/ (current)

Last Exception
An error occurred running `travis login --pro`:
    RuntimeError: Not Found
        from /home/alejandro/.gem/ruby/2.7.0/gems/travis-1.10.0/lib/travis/tools/github.rb:212:in `rescue in basic_auth'
        from /home/alejandro/.gem/ruby/2.7.0/gems/travis-1.10.0/lib/travis/tools/github.rb:208:in `basic_auth'
        from /home/alejandro/.gem/ruby/2.7.0/gems/travis-1.10.0/lib/travis/tools/github.rb:216:in `login'
        from /home/alejandro/.gem/ruby/2.7.0/gems/travis-1.10.0/lib/travis/tools/github.rb:81:in `possible_tokens'
        from /home/alejandro/.gem/ruby/2.7.0/gems/travis-1.10.0/lib/travis/tools/github.rb:50:in `each_token'
        from /home/alejandro/.gem/ruby/2.7.0/gems/travis-1.10.0/lib/travis/tools/github.rb:37:in `with_token'
        from /home/alejandro/.gem/ruby/2.7.0/gems/travis-1.10.0/lib/travis/cli/login.rb:31:in `login'
        from /home/alejandro/.gem/ruby/2.7.0/gems/travis-1.10.0/lib/travis/cli/login.rb:50:in `run'
        from /home/alejandro/.gem/ruby/2.7.0/gems/travis-1.10.0/lib/travis/cli/command.rb:200:in `execute'
        from /home/alejandro/.gem/ruby/2.7.0/gems/travis-1.10.0/lib/travis/cli.rb:64:in `run'
        from /home/alejandro/.gem/ruby/2.7.0/gems/travis-1.10.0/bin/travis:18:in `<top (required)>'
        from /home/alejandro/.gem/ruby/2.7.0/bin/travis:23:in `load'
        from /home/alejandro/.gem/ruby/2.7.0/bin/travis:23:in `<main>'

AlFontal avatar Jan 15 '21 09:01 AlFontal

See https://github.com/travis-ci/travis.rb/issues/788#issuecomment-750927765 for an interim workaround.

BanzaiMan avatar Jan 15 '21 16:01 BanzaiMan

I have the same issue and can confirm that the workaround proposed by BanzaiMan worked for me.

System
Ruby:                     Ruby 2.7.2-p137
Operating System:         Windows
RubyGems:                 RubyGems 3.1.4

CLI
Version:                  1.10.0
Plugins:                  none
Auto-Completion:          yes
Last Version Check:       2021-01-17 09:01:17 +0100

Session
API Endpoint:             https://api.travis-ci.com/
Logged In:                no
Verify SSL:               yes
Enterprise:               no

Endpoints
com:                      https://api.travis-ci.com/ (current)

Last Exception
An error occurred running `travis login --pro`:
    RuntimeError: Not Found
        from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/travis-1.10.0/lib/travis/tools/github.rb:212:in `rescue in basic_auth'
        from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/travis-1.10.0/lib/travis/tools/github.rb:208:in `basic_auth'
        from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/travis-1.10.0/lib/travis/tools/github.rb:216:in `login'
        from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/travis-1.10.0/lib/travis/tools/github.rb:81:in `possible_tokens'
        from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/travis-1.10.0/lib/travis/tools/github.rb:50:in `each_token'
        from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/travis-1.10.0/lib/travis/tools/github.rb:37:in `with_token'
        from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/travis-1.10.0/lib/travis/cli/login.rb:31:in `login'
        from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/travis-1.10.0/lib/travis/cli/login.rb:50:in `run'
        from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/travis-1.10.0/lib/travis/cli/command.rb:200:in `execute'
        from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/travis-1.10.0/lib/travis/cli.rb:64:in `run'
        from C:/Ruby27-x64/lib/ruby/gems/2.7.0/gems/travis-1.10.0/bin/travis:18:in `<top (required)>'
        from C:/Ruby27-x64/bin/travis:23:in `load'
        from C:/Ruby27-x64/bin/travis:23:in `<main>'

DudeNr33 avatar Jan 17 '21 08:01 DudeNr33

I am also afflicted, and the workaround referenced by @BanzaiMan does not work (specifically, point no.2 in the referenced post). Unless, of course, I am doing it wrong.

System
Ruby:                     Ruby 3.0.0-p0
Operating System:         Ubuntu 20.04
RubyGems:                 RubyGems 3.2.3

CLI
Version:                  1.10.0
Plugins:                  none
Auto-Completion:          no
Last Version Check:       2021-02-12 09:20:36 -0500

Session
API Endpoint:             https://api.travis-ci.com/
Logged In:                no
Verify SSL:               yes
Enterprise:               no

Endpoints
org:                      https://api.travis-ci.org/ (access token)
com:                      https://api.travis-ci.com/ (default, current)

Last Exception
An error occurred running `travis login --pro`:
    RuntimeError: Not Found
        from /home/sturm/.rvm/gems/ruby-3.0.0/gems/travis-1.10.1.travis.1341.9/lib/travis/tools/github.rb:212:in `rescue in basic_auth'
        from /home/sturm/.rvm/gems/ruby-3.0.0/gems/travis-1.10.1.travis.1341.9/lib/travis/tools/github.rb:208:in `basic_auth'
        from /home/sturm/.rvm/gems/ruby-3.0.0/gems/travis-1.10.1.travis.1341.9/lib/travis/tools/github.rb:216:in `login'
        from /home/sturm/.rvm/gems/ruby-3.0.0/gems/travis-1.10.1.travis.1341.9/lib/travis/tools/github.rb:81:in `possible_tokens'
        from /home/sturm/.rvm/gems/ruby-3.0.0/gems/travis-1.10.1.travis.1341.9/lib/travis/tools/github.rb:50:in `each_token'
        from /home/sturm/.rvm/gems/ruby-3.0.0/gems/travis-1.10.1.travis.1341.9/lib/travis/tools/github.rb:37:in `with_token'
        from /home/sturm/.rvm/gems/ruby-3.0.0/gems/travis-1.10.1.travis.1341.9/lib/travis/cli/login.rb:31:in `login'
        from /home/sturm/.rvm/gems/ruby-3.0.0/gems/travis-1.10.1.travis.1341.9/lib/travis/cli/login.rb:50:in `run'
        from /home/sturm/.rvm/gems/ruby-3.0.0/gems/travis-1.10.1.travis.1341.9/lib/travis/cli/command.rb:200:in `execute'
        from /home/sturm/.rvm/gems/ruby-3.0.0/gems/travis-1.10.1.travis.1341.9/lib/travis/cli.rb:64:in `run'
        from /home/sturm/.rvm/gems/ruby-3.0.0/gems/travis-1.10.1.travis.1341.9/bin/travis:18:in `<top (required)>'
        from /home/sturm/.rvm/gems/ruby-3.0.0/bin/travis:23:in `load'
        from /home/sturm/.rvm/gems/ruby-3.0.0/bin/travis:23:in `<main>'

SturmB avatar Feb 12 '21 15:02 SturmB

Hello!

I'm running into the same set of issues.

I realized that I have 2FA activated for my account, and the way that the travis login handles api.github.com is through an HTTPS endpoint.

This error also occurs to me when I try to push to a GitHub repository with the remote set to HTTPS instead of my SSH keys. That is to say, due to the recent changes that Github wants to deprecate the git CLI for the simple HTTPS login feature, in favor of the permission key generated as per security grants on the repository

It would be a better move to let us, and a possible solution as well to circumvent this, that we could somehow feed travis login the SSH file key that is authenticated against the account for login verification.

Another partial helping method would be to generate a more helpful error message that lets the user know whether the error was due to the 2FA issue, or something else. Currently, the error logs generated are not helpful to trace the problem too.

For the record, one of the current options available via --help was sshkey, but I'm assuming this has something to do with a .travis.yml at root and pushing config files, but a pre-requisite to that is login, which is a blocker to all the other options at the moment.

Rubix982 avatar Feb 28 '21 17:02 Rubix982

I was able to fix my issue by changing the repository endpoints in my ~/.travis/config.yml file.

I had recently started using travis-ci.com instead of travis-ci.org (since the latter is shutting down), but the CLI needs to know that, too. So in the aforementioned config file, under repos/<repo-name>/endpoint, I changed them all from https://api.travis-ci.org/ to https://api.travis-ci.com/.

Note that I still needed to do this even though I had already changed the default_endpoint to https://api.travis-ci.com/.

SturmB avatar Mar 01 '21 14:03 SturmB

Thanks for the update, @SturmB ! I'll get back to trying this in 2-3 days' time. Appreciate the feedback.

Rubix982 avatar Mar 02 '21 03:03 Rubix982

STILL BROKEN

yelvert avatar Jun 08 '21 15:06 yelvert

@Rubix982 I was able to login with 2FA by using a Github Personal access token and passing it via

travis login --com --github-token TOKEN

suxur avatar Jun 25 '21 18:06 suxur

still broken

SimonLammer avatar Oct 19 '21 15:10 SimonLammer

travis login --com --github-token TOKEN

i can't appreciate you any more! i succeed in logining in by token successfully,but i still fail to login in by my username and password.

kangshuaifunotkangshifu avatar Oct 21 '21 08:10 kangshuaifunotkangshifu

+1. Broken for me as well. I can't do ssh --generate because of it

aungkpaing avatar Oct 29 '21 05:10 aungkpaing

@Rubix982 I was able to login with 2FA by using a Github Personal access token and passing it via

travis login --com --github-token TOKEN

This is the only solution that worked for me.

ephraimilunga avatar Dec 18 '21 11:12 ephraimilunga

Finally! After 10 months, I can finally finish my Jenkins tutorial. Thanks, @ephraimilunga, @suxur!

Rubix982 avatar Dec 18 '21 15:12 Rubix982