Strider-CD / strider

Open Source Continuous Integration & Deployment Server
http://strider-cd.github.io/
4.6k stars 432 forks source link

Continuous integration for strider #535

Open knownasilya opened 10 years ago

knownasilya commented 10 years ago

Either use strider itself, like it was previously, or travis (and anything else along those lines)

This will help with merging PRs, and in general the overall health of the project.

Note: include https://github.com/Strider-CD/strider-github-status

kfatehi commented 10 years ago

@niallo I can help with this if you'd like --- I'm happy to spin up and maintain a small digitalocean box w/ Docker & Sinopia just for this purpose. I'd use Docker basically in order to sandbox malicious PR's, keep a clean environment, and Sinopia (npm proxy) to prevent npmjs problems. Let me know :+1:

kfatehi commented 10 years ago

I also really think it would be great to have (in strider) that deep github integration (where it annotates PR's for you) that Travis has done so well. There's no impetus to implement that until we start using Strider to develop Strider

knownasilya commented 10 years ago

Or you could use https://github.com/nolanlawson/local-npm (been great for me, haven't tried sinopia).

kfatehi commented 10 years ago

@knownasilya oh nice! local-npm looks convenient. Definitely a great tool for local use when something like sinopia is too much of a hassle to setup. I tend to use Sinopia for installations as it's a bit more feature rich (you can upload your own custom modules) and it has a nice Docker image.

https://github.com/rlidwka/sinopia

knownasilya commented 10 years ago

Hum, yeah that would be nice for a testing environment.

kfatehi commented 10 years ago

Can someone familiar with the acceptance test system in strider please look at these results https://strider.knban.com/strider-cd/strider/ ?

Googling the error takes me to SauceLabs tech support sites. The error is Error: [init({"version":"","browserName":"chrome","platform":"Linux"})] The environment you requested was unavailable

knownasilya commented 10 years ago

@keyvanfatehi does version need to be set?

Plus you need to have chrome (and chrome webdriver) installed, maybe change to phantomjs?

kfatehi commented 10 years ago

@knownasilya I'll see if i can use SauceLabs -- but I'm trying to debug this manually from an interactive docker container (As it would be nice to have a pattern for doing our own acceptance tests w/o Sauce)

knownasilya commented 10 years ago

We do, it's called web driver, and it uses chrome, but you can set it to use phantomjs. No sauce required ;) On Aug 25, 2014 11:02 PM, "Keyvan Fatehi" notifications@github.com wrote:

@knownasilya https://github.com/knownasilya I'll see if i can use SauceLabs -- but I'm trying to debug this manually from an interactive docker container (As it would be nice to have a pattern for doing our own acceptance tests w/o Sauce)

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

kfatehi commented 10 years ago

Ha yeah, but I've already got Xvfb and Chrome -- I just need to figure out how to get chromedriver to start instances with --no-sandbox as I think ive narrowed it down to that (google-chrome won't launch without it, throw PID namespace errors which I believe has to do with LXC)

kfatehi commented 10 years ago

Got it working -- one test keeps failing though, you can check it here https://strider.knban.com/strider-cd/strider/

jaredly commented 10 years ago

Hmm that test runs through github integration, which requires a public facing IP.

That might be your issue. El ago 25, 2014 10:50 PM, "Keyvan Fatehi" notifications@github.com escribió:

Got it working -- one test keeps failing though, you can check it here https://strider.knban.com/strider-cd/strider/

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

kfatehi commented 10 years ago

@jaredly I don't think that's it -- it passes for me on my local machine (no public IP)

jaredly commented 10 years ago

Oh wait that's right. Can you have it take a screenshot on failure? I forget exactly how, but I know it's possible El ago 26, 2014 1:11 AM, "Keyvan Fatehi" notifications@github.com escribió:

@jaredly https://github.com/jaredly I don't think that's it -- it passes for me on my local machine (no public IP)

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

kfatehi commented 10 years ago

figured it out. will fix tomorrow

kfatehi commented 10 years ago

I've implemented screenshot on failure which yields the following. Looks like we have hit a webhook limit -- need to send some DELETE's through ? Is this implemented somewhere?

jaredly commented 10 years ago

We delete when a repo is removed...

knownasilya commented 9 years ago

@keyvanfatehi what's the status on this?

kfatehi commented 9 years ago

Hi Ilya, i plan to set this up again through upstreamapp/hosted strider when I get back from holiday.

On Wednesday, November 12, 2014, Ilya Radchenko notifications@github.com wrote:

@keyvanfatehi https://github.com/keyvanfatehi what's the status on this?

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

ProZachJ commented 9 years ago

I tried to do this just for kicks on our strider instance and got:

FileError: 'bower_components/bootstrap/docs/assets/css/bootstrap.css' wasn't found in /home/thisisnotmyusername/.strider/data/strider-cd-strider-54801a3d5f388c4f58000213/client/styles/libs.less on line 2, column 1:
1 // Bootstrap
2 @import (less) "bower_components/bootstrap/docs/assets/css/bootstrap.css";
3 @import (less) "bower_components/bootstrap/docs/assets/css/bootstrap-responsive.css";
knownasilya commented 9 years ago

@ProZachJ sounds like a bad install, since the client-side assets are pulled down on postinstall.

kfatehi commented 9 years ago

Working on getting all tests passing here https://circleci.com/gh/Strider-CD/strider/1

knownasilya commented 9 years ago

@keyvanfatehi the integration tests are broken (#664).

kfatehi commented 9 years ago

ok thanks. working with circleci support on at least getting them to run for now.

ProZachJ commented 9 years ago

Just curious, is circleci backed by Strider or some other CI server?

I'd be happy to get this running on our strider instance and host it for you guys (although, I'd probably have to dedicate more resources as we already push ours pretty hard)

niallo commented 9 years ago

strider doing ci for strider would be nice alright :)

On Monday, December 8, 2014, Zach Jones notifications@github.com wrote:

Just curious, is circleci backed by Strider or some other CI server?

I'd be happy to get this running on our strider instance and host it for you guys (although, I'd probably have to dedicate more resources as we already push ours pretty hard)

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

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

kfatehi commented 9 years ago

hi Zach. id prefer Strider testing Strider too (plus i know it works). CircleCI isnt affiliated i just figured id try it

On Tuesday, December 9, 2014, Zach Jones notifications@github.com wrote:

Just curious, is circleci backed by Strider or some other CI server?

I'd be happy to get this running on our strider instance and host it for you guys (although, I'd probably have to dedicate more resources as we already push ours pretty hard)

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

ProZachJ commented 9 years ago

Cool, well next time I rebuild our instance, I'll try to get this working.

I know right now our installation is a bit non-standard due to some bugs we found in plugins when the refactor happened that changed what is bundled by default.

If I get it working, I'll talk to my co-founder about setting something up for you guys. We use strider pretty heavily so hopefully we can find a few spare dollars and contribute back.

Perhaps there is a better thread for this question but didn't you guys plan at one point on doing a Strider as a service offering?

kfatehi commented 9 years ago

@ProZachJ

@niallo was originally (long ago) planning to provide a hosted offering. This fell through for various reasons prior to my finding and becoming involved in the Strider project. This original goal still shows up in places like at stridercd.com

A few months ago I built and launched a service that, in a different way, provided Strider (or any other Docker container(s)) as a service. I was going to make this my business and provide the public self testing instance through this as well. I've since given that up (and made it open too, repo name is saasbox-app) for various reasons.

At this time, to my knowledge, there are no core devs trying to offer Strider as a service. We all just work on Strider in our free time and (in my case) hope to be in a fortunate enough position to spare the time and money to put up a reliable, lasting public-facing instance at least for our own stuff and demo purposes.

Hope that helps give sufficient background info to reconcile the previous posts in this thread.

knownasilya commented 9 years ago

Doing this this week: http://docs.travis-ci.com/user/gui-and-headless-browsers/

knownasilya commented 9 years ago

@niallo would love some help setting up the integration tests with sauce labs. Currently it fails on travis.