[info] continuous integration

It's all about the code!
Post Reply
User avatar
AndreyB
Site Admin
Posts: 14323
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

continuous integration

Post by AndreyB »

Current status: Jetkins is alive at http://crapcan-am.com:8080/

As ridiculous as this might sound, I think we need continuous integration - especially since we kinda have some unit tests (more on unit test in a separate thread)

What are our options? Since we are compiling for ARM does that mean we need a dedicated server somewhere to run our unusual GCC? Does anyone have a dedicated server? Does anyone have the time to setup continues integration?

One of the most mature free tools would be http://en.wikipedia.org/wiki/Jenkins_%28software%29

So the idea of this would be that each SVN commit triggers the invocation of 'make' for both 'firmware' and 'win32_algo_tests' (no the best name, they compile fine under linux) and ideally even execution of the 'tests' binary

The result of these actions is published on the web - either everything worked fine and we have 'green' status or something does not compile or does not pass tests and this puts us into the red zone.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14323
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: continuous integration

Post by AndreyB »

One of the most mature free tools would be http://en.wikipedia.org/wiki/Jenkins_%28software%29

So the idea of this would be that each SVN commit triggers the invocation of 'make' for both 'firmware' and 'win32_algo_tests' (no the best name, they compile fine under linux) and ideally even execution of the 'tests' binary

The result of these actions is published on the web - either everything worked fine and we have 'green' status or something does not compile or does not pass tests and this puts us into the red zone.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
shredator
contributor
contributor
Posts: 17
Joined: Tue Dec 24, 2013 12:49 am

Re: continuous integration

Post by shredator »

So I installed Jenkins... located here: http://crapcan-am.com:8080
Looks like those interested will have to sign up, and then I can elevate privileges once you create a user for yourself.
looks like some shell scripts are needed to make jenkins execute 'make' and then execute the test program like Russian states above.
So I'll need to learn how to write these scripts (i'm just a unix geek in my spare time). If someone actually knows what they're doing when it comes to script-writing or jenkins setup, feel free to step in, otherwise, just bear with me as i ride this learning curve :)
shredator
contributor
contributor
Posts: 17
Joined: Tue Dec 24, 2013 12:49 am

Re: continuous integration

Post by shredator »

Russian should have admin privleges now...
I havent had time to get make working though :? I'll try to do some reading tonight.
User avatar
AndreyB
Site Admin
Posts: 14323
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: continuous integration

Post by AndreyB »

Hooray! We have a functioning continues integration located at http://crapcan-am.com:8080/

At this page we would have the official status of the current SVN source code version - does it compiles & does it pass out tests.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14323
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: continuous integration

Post by AndreyB »

TODO: fix email notifications

I have added email notification as a post-build action but it did not do the trick right away :( Will check SMTP settings tomorrow :)
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
shredator
contributor
contributor
Posts: 17
Joined: Tue Dec 24, 2013 12:49 am

Re: continuous integration

Post by shredator »

I think that jenkins is configured correctly, but my email server is denying it access. I'll try to resolve soon.
Edit: All fixed, email should work now
User avatar
AndreyB
Site Admin
Posts: 14323
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: continuous integration

Post by AndreyB »

Emails work!

I have added a redirect from http://jenkins.rusefi.com
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
User avatar
AndreyB
Site Admin
Posts: 14323
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: continuous integration

Post by AndreyB »

Jenkins has since moved to a little desktop at my place without public access, but results are now published on github (not that anyone should care)

https://github.com/rusefi/rusefi/commits/master

thank you @
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions

Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Post Reply