Changes to build agents on ci.openmrs.org

In the next couple of days, we’ll be re-adding 2 new bamboo agents (both from gw108.iu.xsede.org). If everything goes fine, we will update gw107 after.

There are a lot of changes:

  • It will be ubuntu 14.04, instead of 12.04.
  • Maven 3 will be 3.2.3 instead of 3.2.1
  • Maven is configured to get always the latest versions of SNAPSHOTs. -U option for your builds will be obsolete
  • Bamboo agents will run isolated, one per user

They still have maven 2.2.1, I didn’t want to do that migration just yet.

You can check where your build ran:

If something doesn’t work as expected, just disable the gw108 agents and please let me know. Keep in mind that the maven local repo of those machines will be clean, so some builds might actually fail due to missing snapshots that were deleted long time ago.

Things to pay special attention:

  • Missing dependencies for scripts (commands missing, etc)
  • Scripts not working anymore (forbidden, denied public ssh key…)

Let me know if you have any special concerns or questions,

2 Likes

Excluding a few teething problems which will be sorted out later, gw108 is now alive!

I’ve tested a little bit, and so far so good.

Allergy UI Allegy API Reference application distro Release to maven

If your build is going a ssh, there’s a chance it will fail if you haven’t explicitly defined the user. If any of your builds fail with a ‘Public key (denied)’, make sure to add a ‘bamboo’ user. I’ve done it for the reference application build, I can do for other if necessary.

1 Like

Great work! Thanks for taking the lead on this @cintiadr and really leading us to a much more reliable and robust CI/testing environment!

:thumbsup: :star: :trophy:

I’m chasing up the red builds. The run UI tests in refapp distro looks very flakey, is it a known issue? It’s timing out quite frequently.

I upgraded the version of a few snapshot dependencies (like reportingUI).

Ebola module is red, apparently bower isn’t installed. I’m taking a look on it now. I’m adding comments to some red builds.

EDIT: bower is installed, the build is green.

There was some problems with DNS earlier, so I disabled gw108 for a few hours. Ebola module was red because of that.

From now, the old bamboo agents - gw107 - will be disabled. I’ll continue to keep an eye for red builds.

1 Like

And thanks to @ryan, gw107 is alive, running on ubuntu 14.04 too!

Any other random dramas (like files written in the /tmp folder in a integration or unit test) let me know.

I enabled a new plugin in http://ci.openmrs.org ([predator][1]), and configured it to clean snapshots and old build directories before any build.

So, if you check the logs, there will be something in the very beginning:

simple 14-Dec-2014 05:54:00 Running pre-build action: Run Predator simple 14-Dec-2014 05:54:00 [PredatorPreBuildAction] Starting predator plugin, pre build agent cleaner simple 14-Dec-2014 05:54:00 [PredatorPreBuildAction] Skipping processes killing simple 14-Dec-2014 05:54:00 [PredatorPreBuildAction] Initial free space: 39.28877 GB simple 14-Dec-2014 05:54:00 [PredatorPreBuildAction] Deleting 28 snapshot folders from /home/bamboo-agent-1/.m2/repository simple 14-Dec-2014 05:54:00 [PredatorPreBuildAction] Maven snapshot disk freed: 0 GB simple 14-Dec-2014 05:54:00 [PredatorPreBuildAction] Skipping the removal of maven stable artifacts simple 14-Dec-2014 05:54:00 [PredatorPreBuildAction] Skipping selected files deletion simple 14-Dec-2014 05:54:00 [PredatorPreBuildAction] Final free space: 39.3013 GB simple 14-Dec-2014 05:54:00 [PredatorPreBuildAction] Done

The idea here is to fail faster in Bamboo if a dependency is missing; also, we’ll make sure we are always testing the latest SNAPSHOT available.

I created a Q&A about the missing snapshots: https://wiki.openmrs.org/questions/79662535/why-my-build-is-suddently-failing-due-to-a-missing-snapshot

If you want to know more, I’d recommend http://developer-blog.cloudbees.com/2012/12/should-you-deploy-snapshots.html I agree with everything mentioned. [1]: https://marketplace.atlassian.com/plugins/com.atlassian.bamboo.plugin.bamboo-predator-plugin

I updated https://wiki.openmrs.org/display/docs/Continuous+Integration to have all the information in here (plus a few more things mentioned in the dev list only).

Feel free to update/reword anything that isn’t clear.