CI environment documentation / differences in devtest from distro?

I noticed that when I follow instructions from here: https://wiki.openmrs.org/display/projects/Setting+Up+a+Development+Environment+for+OpenMRS+2.x

and import all of the modules from openmrs-distro-referenceapp, my local environment has some functional / module differences with what is on devtest01 and devtest02. For example, I don’t have a ‘Form Entry’ app on my homepage. Also, xforms is installed on the devtests whereas it is not a dependency of the distro, and the chartsearch app is at version 1.5-SNAPSHOT, where it is 1.4.1 in the distro.

Is there documentation that explains what build exactly is deployed to each environment? Also, how to explain the variations I mention, and what steps can be taken to have the local environment completely reproduce the latest running referenceapp if it appears to differ from what is configured in the distro project?

Some one manually installed the xforms module on that server. It is the one which adds the form entry app on the homepage. I guess it is the same for that version of the chartsearch module.

Ok, but I thought those servers were probably connected to CI somehow. So when the CI build runs, it would restore the set of installed modules. So is one of these the case:

  1. these machines are connected to CI, but if someone adds a module or changes its version, it will remain that way? or
  2. these machines are not connected to CI?

Is there an environment that replicates the openmrs-distro-referenceapplication exactly without having manual modifications that interfere with the results of testing?

Yes they are connected to CI. So when CI builds, it updates the modules, but does not delete any manually added ones. We are actually not supposed to manually add any modules on this server. This was eventually fixed by not allowing any web uploads of modules as you can see here http://devtest01.openmrs.org/openmrs/admin/modules/module.list These were just left overs before the fix. :slightly_smiling: I think this also points out the need for a server where developers can install any modules they want people to try out. :smile:

To setup your dev environment to match devtst01, you need to checkout the referenceapplication-disro project, build it, a zip file is generated that contains the modules you need to extract to your modules repo. As for the war file, it depends on how you are running OpenMRS, if it is from tomcat, take the war file in the target/distro folder of the RA distro project you just built. If your running it from jetty, look in the root pom file of the distro for the OpenMRS version and switch the OpenMRS core project to the appropriate branch depending on the version