Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Github auth callback url issue #55

Closed
boo1ean opened this issue Sep 23, 2015 · 22 comments
Closed

Github auth callback url issue #55

boo1ean opened this issue Sep 23, 2015 · 22 comments
Assignees
Labels

Comments

@boo1ean
Copy link

boo1ean commented Sep 23, 2015

Seems like strider-github doesn't use SERVER_NAME to build github auth callback url.

It always redirects me to localhost.

Bitbucket integration works well though.

@midgethoen
Copy link

I have this same issue.. i'm trying to figure out how I am supposed to configure this.

@knownasilya
Copy link
Member

@midgethoen have you updated your github plugin in the Strider "Plugins" page?

@tomhallam
Copy link

Also having this issue

@cloudlena
Copy link
Contributor

Same here (using strider 1.7.5 and strider-github 2.1.2)

@knownasilya
Copy link
Member

Found a workaround. Use the following ENVs to configure github:

PLUGIN_GITHUB_APP_ID
PLUGIN_GITHUB_APP_SECRET

Along with SERVER_NAME. Looks like there is a check for plugins, which are
found by the PLUGIN_<pluginname> env prefix and then Github config is fixed. Will look into this some more later.


Hum, you're probably already doing this. When does the callback not work, at what step in Strider?

@knownasilya knownasilya self-assigned this Jan 14, 2016
@knownasilya
Copy link
Member

Could someone post how they start strider, with the envs (you can blank them out if they are sensitive)?

@cloudlena
Copy link
Contributor

export SERVER_NAME = "https://strider.scapp.io"
export DB_URI = [my_mongo_uri]
export SMTP_HOST = "smtp.mailgun.org"
export SMTP_USER = [my_mailgun_username]
export SMTP_PASS = [my_mailgun_password]
NODE_ENV=production npm start

@knownasilya
Copy link
Member

^ ok yes you are missing the two ENVs for setting up the github plugin, see #55 (comment) and the readme.

@emcniece
Copy link

Hit this while doing some Nginx proxy shenanigans, and exporting SERVER_NAME worked after realizing that it needs to be set to the publicly-facing connection, not the internal one. I wanted to have my Strider instance available on port 80 - probably could just set Strider to export port 80 instead of doing this Nginx stuff...

I am using this upstart script.

server {
    listen 80;
    server_name 123.456.1.2;

    access_log  /var/log/nginx/strider.access.log;
    error_log  /var/log/nginx/strider.error.log;

    location / {
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header HOST $http_host;
        proxy_set_header X-NginX-Proxy true;

        proxy_pass http://123.456.1.2:4000;
        proxy_redirect off;
    }
}

... and the problem was that the upstart script should have exported http://123.456.1.2, without the port.

On a side note, I'm not able to upgrade the system's strider-github package because the strider user doesn't auto-sudo. Weird.

@knownasilya
Copy link
Member

@alexfernandez could you put a console.log(rc) here (after the if): https://github.com/Strider-CD/strider/blob/master/lib/libconfig.js#L69 and run the app and post the results (make sure to obscure sensitive info) here.

@alexfernandez
Copy link
Contributor

The problem is that Strider is changing the env variable SERVER_NAME to strider_server_name here. I have fixed it with this PR: #59.

@knownasilya
Copy link
Member

That is how rc works, so it shouldn't be a problem. Try master with something like DEBUG=strider:config PLUGIN_GITHUB_TEST=test SERVER_NAME=blah npm start

You should get something like:

{
  "logging": {
    "exitOnError": true,
    "file_enabled": false,
    "console": {
      "level": 0,
      "colorize": true,
      "timestamp": true
    },
    "console_enabled": true
  },
  "viewpath": "/Users/iradchenko/sandbox/strider/lib/views",
  "host": "0.0.0.0",
  "port": 3000,
  "server_name": "blah",
  "db_uri": "mongodb://localhost/strider-foss",
  "smtp_host": "",
  "smtp_port": 587,
  "smtp_user": "",
  "smtp_pass": "",
  "smtp_from": "Strider <noreply@stridercd.com>",
  "enablePty": false,
  "extpath": "node_modules",
  "session_secret": "8L8BudMkqBUqrz",
  "github_app_id": "",
  "github_secret": "",
  "cors": false,
  "body_parser_limit": false,
  "_": [],
  "stubSmtp": true,
  "plugins": {
    "github": {
      "test": "test",
      "hostname": "blah"
    }
  }

@alexfernandez
Copy link
Contributor

You are right, the change referenced above is unnecessary.

The problem was that, if you use a domain different than localhost:3000, you need to add your own developer integration as explained here. Novice error, but it shows as a redirect to http://localhost:3000 since this is the default declared callback URL for the default client ID. Hope this helps someone else.

@asayuki
Copy link

asayuki commented Feb 3, 2016

This is still an issue. I've tried the solution above and it does not work. Still getting localhost:3000 in my callback URL.

@knownasilya
Copy link
Member

Did you update to 1.7.6?

@asayuki
Copy link

asayuki commented Feb 3, 2016

Running 1.7.6 yes.

Bitbucket is working fine, but Github not so much.

@knownasilya
Copy link
Member

So I cannot reproduce this issue. I'll try do a fresh setup this weekend. Any help in narrowing down where the issue is, would be very appreciated.

@asayuki
Copy link

asayuki commented Feb 3, 2016

Sorry, I've got it to work now. Misplaced characters in ENV.

By starting the application by using SERVER_NAME=http://my.address PLUGIN_GITHUB_APP_ID=<myAppID> PLUGIN_GITHUB_APP_SECRET=<myAppSecret> node bin/strider I got it to work.

Might be worthwhile to update the README and state that ID and SECRET must be present for it to work, instead of optional.

@knownasilya
Copy link
Member

The should be optional as of 1.7.6.. will look into that.

@midgethoen
Copy link

@knownasilya sry, I missed your question and should have updated my question anyway. Yes, I upgraded the github plugi, which -- I believe -- fixed the issue for me.

@JKY
Copy link

JKY commented Jun 19, 2016

@asayuki , it works

@crobinson42
Copy link

FYI - I was running strider 1.7.7 and everything worked fine with the basic env vars (no github_app_id or secret). I ended up reinstalling and got strider v1.8.0 and now it's required that I set github_app_id & github_secret in order for github plugin to work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

10 participants