Strider-CD / strider-docker-runner

Strider runner that uses Docker
34 stars 19 forks source link

Breaks when no docker #16

Closed niallo closed 9 years ago

niallo commented 10 years ago

This shouldn't crash Strider. We can't put it in core until it's a non-fatal error:

18 Aug 20:20:43 - warn: Failed to initialize docker! Make sure permissions are right, config is right, etc. { [Error: connect ENOENT] code: 'ENOENT', errno: 'ENOENT', syscall: 'connect' }
18 Aug 20:20:43 - error: Failed to load plugins
18 Aug 20:20:43 - info: Marking zombie jobs as finished...
18 Aug 20:20:43 - info: initalized static directories
18 Aug 20:20:43 - info: 0 zombie jobs marked as finished
18 Aug 20:20:43 - error: Strider seems to have been misconfigured - there are no available runner plugins. Please make sure all dependencies are up to date.
jaredly commented 10 years ago

Shouldn't it though?

On Mon, Aug 18, 2014 at 8:21 PM, niallo notifications@github.com wrote:

18 Aug 20:20:43 - warn: Failed to initialize docker! Make sure permissions are right, config is right, etc. { [Error: connect ENOENT] code: 'ENOENT', errno: 'ENOENT', syscall: 'connect' } 18 Aug 20:20:43 - error: Failed to load plugins 18 Aug 20:20:43 - info: Marking zombie jobs as finished... 18 Aug 20:20:43 - info: initalized static directories 18 Aug 20:20:43 - info: 0 zombie jobs marked as finished 18 Aug 20:20:43 - error: Strider seems to have been misconfigured - there are no available runner plugins. Please make sure all dependencies are up to date.

— Reply to this email directly or view it on GitHub https://github.com/Strider-CD/strider-docker-runner/issues/16.

kfatehi commented 10 years ago

Is there a place for global configuration? I don't think there is... we use envvars. The only way I can think of to fail gracefully is to hook into the Runner Picker and disallow selection and show why it is disallowed there. Any other ideas?

jaredly commented 10 years ago

I had some thoughts about a "global config" section under Admin, similar to the "account config" under user, where admins could configure runners

kfatehi commented 10 years ago

That would be great but it just doesn't feel pressing ... Maybe we add it as an issue and hold off on adding it to core until it's been built? Id love to eliminate all envvars this way... making em all configurable in-app

niallo commented 10 years ago

I think env vars shouldn't be eliminated but yes in-app overrides would be great.

As for the docker-runner - can't it warn and use the simple-runner or you can only have a single runner at a time these days?

jaredly commented 10 years ago

I guess we could warn, but there's so much output anyway, I'm afraid it would get lost -- people wouldn't notice, and then come here asking why the docker runner doesn't work

jaredly commented 10 years ago

One solution would be to cut down on our default output so it wouldn't get lost. Or maybe (I think I like this better) have some indication in the UI (on the plugins config page) that the docker runner is unavailable because it was misconfigured

niallo commented 10 years ago

+1 UI indication :)

On Tue, Aug 19, 2014 at 10:02 AM, Jared Forsyth notifications@github.com wrote:

One solution would be to cut down on our default output so it wouldn't get lost. Or maybe (I think I like this better) have some indication in the UI (on the plugins config page) that the docker runner is unavailable because it was misconfigured

— Reply to this email directly or view it on GitHub https://github.com/Strider-CD/strider-docker-runner/issues/16#issuecomment-52665315 .

Niall O'Higgins W: http://niallohiggins.com E: n@niallo.me T: @niallohiggins

knownasilya commented 10 years ago

:+1: ditto on the notification in the UI

kfatehi commented 10 years ago

So when you try to click the runner, don't select it, show error alert. Yes?

knownasilya commented 10 years ago

Maybe disable it from being clickable, and show tooltip on hover/click? Although an alert might be better..

cusspvz commented 9 years ago

+1

kfatehi commented 9 years ago

working on this now. looking like we'll have a nice web interface for installing/uninstalling plugins, whereby one can resolve issues such as that discussed here -- i think it can ship with v1.6.0