ssmusoke
(Stephen Senkomago Musoke)
January 6, 2016, 6:19pm
1
I am not sure if I am the only one, but there seems to be an issue with some modules when pushed to Nexus which is unlike modules.openmrs.org probably because those ones are uploaded manually.
I have run into an issue with metadatadeploy-1.7.omod which has missing classes in Nexus (pulled via Maven POM file). I have no idea how the background stuff works so wanted to highlight it here.
wyclif
(Wyclif Luyima)
January 8, 2016, 3:18pm
2
Hi Stephen,
You should never have to download modules directly from nexus, in fact do you realize that in nexus there is no .omod files?
Wyclif
1 Like
ssmusoke
(Stephen Senkomago Musoke)
January 8, 2016, 3:28pm
3
@wyclif That is what the https://github.com/openmrs/openmrs-distro-platform uses to download modules via the pom.xml file. What else are we to use to download files via Maven?
darius
(Darius Jazayeri)
January 8, 2016, 4:25pm
4
@ssmusoke I just did some unzip + diff of metadatadeploy 1.7 as downloaded
from nexus and from modulus, and both of them seem to be identical except
for the timestamps on the pom.properties files (e.g. “#Wed Dec 16 12:57:06
EST 2015” vs “#Wed Dec 16 12:52:25 EST 2015”). (Though I didn’t thoroughly
compare everything.)
What is the difference you are seeing?
-Darius
wyclif
(Wyclif Luyima)
January 8, 2016, 4:27pm
5
Well in that case it is fine since you’re downloading it via maven. So you’re saying the omod packaged in the generated zip file via maven has missing files? When you download this jar file from nexus and change the extension to .omod it doesn’t work?
And as Darius says, they seem to be the same size as that in modulus, are you sure your pom file isn’t configured to fetch a different file, can you share it?
ssmusoke
(Stephen Senkomago Musoke)
January 8, 2016, 4:36pm
6
@darius @wyclif Let me change my configs and download the file again to share
wyclif
(Wyclif Luyima)
January 8, 2016, 4:40pm
7
Stephen sorry if i wasn’t clear, I meant to ask you to share the pom file
ssmusoke
(Stephen Senkomago Musoke)
January 8, 2016, 4:48pm
8
Strange today its working … (maybe its the gremlings in my computer)
<modelVersion>4.0.0</modelVersion>
<groupId>org.openmrs.distro</groupId>
<artifactId>platform-uganda</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<name>Uganda OpenMRS Platform</name>
<description>A project for packaging the custom OpenMRS Platform distribution for Uganda</description>
<url>http://openmrs.org</url>
<licenses>
<license>
<name>OpenMRS Public License</name>
<url>http://openmrs.org/wiki/License</url>
</license>
</licenses>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<openMRSVersion>1.11.5</openMRSVersion>
<webservices.restModuleVersion>2.12</webservices.restModuleVersion>
<!-- Modules Bundled for Uganda distribution -->
<addresshierarchyVersion>2.7</addresshierarchyVersion>
<calculationVersion>1.1</calculationVersion>
<dataintegrityVersion>2.3</dataintegrityVersion>
<formfilterVersion>1.0.0</formfilterVersion>
<htmlformentryVersion>2.6</htmlformentryVersion>
<htmlwidgetsVersion>1.7.0</htmlwidgetsVersion>
<metadatadeployVersion>1.7</metadatadeployVersion>
<metadatamappingVersion>1.0.2</metadatamappingVersion>
<metadatasharingVersion>1.1.10</metadatasharingVersion>
<reportingVersion>0.9.8.1</reportingVersion>
<serializationxstreamVersion>0.2.9</serializationxstreamVersion>
<uicommonsVersion>1.7</uicommonsVersion>
<appuiVersion>1.4</appuiVersion>
<appframeworkVersion>2.4</appframeworkVersion>
<uiframeworkVersion>3.4</uiframeworkVersion>
<adminuiVersion>1.0</adminuiVersion>
<uilibraryVersion>2.0.4</uilibraryVersion>
<providermanagementVersion>2.3</providermanagementVersion>
<htmlformentry19extVersion>1.6.1</htmlformentry19extVersion>
<htmlformentryuiVersion>1.3</htmlformentryuiVersion>
<emrapiVersion>1.12</emrapiVersion>
<eventVersion>2.2.1</eventVersion>
<referenceapplicationVersion>2.3</referenceapplicationVersion>
<registrationcoreVersion>1.3</registrationcoreVersion>
<registrationappVersion>1.4</registrationappVersion>
<idgenVersion>3.2</idgenVersion>
<!-- <coreappsVersion>1.7</coreappsVersion>--> <!-- THe lastest version 1.7 can not built and its advisable not to use the Snapshot -->
<referencemetadataVersion>2.3.1</referencemetadataVersion>
<appointmentschedulingVersion>1.4</appointmentschedulingVersion>
<appointmentschedulinguiVersion>1.0.3</appointmentschedulinguiVersion>
<dataexchangeVersion>1.3.1</dataexchangeVersion>
<formentryappVersion>1.2</formentryappVersion>
<reportingRestVersion>1.5</reportingRestVersion>
<allergyuiVersion>1.2</allergyuiVersion>
<allergyapiVersion>1.3</allergyapiVersion>
<chartsearchVersion>1.4.1</chartsearchVersion>
<!-- platform configurations -->
<warFilename>openmrs</warFilename>
<scriptFilename>add-modules.sh</scriptFilename>
<modulesFolder>WEB-INF/bundledModules</modulesFolder>
<scriptsFolder>WEB-INF/view/scripts</scriptsFolder>
</properties>
<dependencies>
<dependency>
<groupId>org.openmrs.web</groupId>
<artifactId>openmrs-webapp</artifactId>
<version>${openMRSVersion}</version>
<type>war</type>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>webservices.rest-omod</artifactId>
<version>${webservices.restModuleVersion}</version>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>addresshierarchy-omod</artifactId>
<version>${addresshierarchyVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>calculation-omod</artifactId>
<version>${calculationVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>dataintegrity-omod</artifactId>
<version>${dataintegrityVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>formfilter-omod</artifactId>
<version>${formfilterVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>htmlformentry-api</artifactId>
<version>${htmlformentryVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>htmlformentry-omod</artifactId>
<version>${htmlformentryVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>htmlwidgets-omod</artifactId>
<version>${htmlwidgetsVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>metadatadeploy-omod</artifactId>
<version>${metadatadeployVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>metadatamapping-omod</artifactId>
<version>${metadatamappingVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>metadatasharing-omod</artifactId>
<version>${metadatasharingVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>reporting-omod</artifactId>
<version>${reportingVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>serialization.xstream-omod</artifactId>
<version>${serializationxstreamVersion}</version>
<scope>provided</scope>
<type>omod</type>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>uicommons-omod</artifactId>
<version>${uicommonsVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>appui-omod</artifactId>
<version>${appuiVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>appframework-omod</artifactId>
<version>${appframeworkVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>uiframework-omod</artifactId>
<version>${uiframeworkVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>adminui-omod</artifactId>
<version>${adminuiVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>uilibrary-omod</artifactId>
<version>${uilibraryVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>providermanagement-omod</artifactId>
<version>${providermanagementVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>htmlformentry19ext-omod</artifactId>
<version>${htmlformentry19extVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>htmlformentryui-omod</artifactId>
<version>${htmlformentryuiVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>emrapi-omod</artifactId>
<version>${emrapiVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs</groupId>
<artifactId>event-omod</artifactId>
<version>${eventVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>referenceapplication-omod</artifactId>
<version>${referenceapplicationVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>registrationcore-omod</artifactId>
<version>${registrationcoreVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>registrationapp-omod</artifactId>
<version>${registrationappVersion}</version>
<scope>provided</scope>
</dependency>
<!--<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>coreapps-omod</artifactId>
<version>${coreappsVersion}</version>
<scope>provided</scope>
</dependency>-->
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>idgen-omod</artifactId>
<version>${idgenVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>referencemetadata-omod</artifactId>
<version>${referencemetadataVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>dataexchange-omod</artifactId>
<version>${dataexchangeVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>appointmentscheduling-omod</artifactId>
<version>${appointmentschedulingVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>appointmentschedulingui-omod</artifactId>
<version>${appointmentschedulinguiVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>formentryapp-omod</artifactId>
<version>${formentryappVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>reportingrest-omod</artifactId>
<version>${reportingRestVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>allergyui-omod</artifactId>
<version>${allergyuiVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>allergyapi-omod</artifactId>
<version>${allergyapiVersion}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.openmrs.module</groupId>
<artifactId>chartsearch-omod</artifactId>
<version>${chartsearchVersion}</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.8</version>
<executions>
<execution>
<id>prepare-platform-distro</id>
<phase>package</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}</outputDirectory>
<artifactItems>
<artifactItem>
<groupId>org.openmrs.web</groupId>
<artifactId>openmrs-webapp</artifactId>
<type>war</type>
<destFileName>${warFilename}.war</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>webservices.rest-omod</artifactId>
<destFileName>
${modulesFolder}/webservices.rest-${webservices.restModuleVersion}.omod
</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>addresshierarchy-omod</artifactId>
<destFileName>${modulesFolder}/addresshierarchy-${addresshierarchyVersion}.omod
</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>dataintegrity-omod</artifactId>
<destFileName>${modulesFolder}/dataintegrity-${dataintegrityVersion}.omod
</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>calculation-omod</artifactId>
<destFileName>${modulesFolder}/calculation-${calculationVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>formfilter-omod</artifactId>
<destFileName>${modulesFolder}/formfilter-${formfilterVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>htmlformentry-omod</artifactId>
<destFileName>${modulesFolder}/htmlformentry-${htmlformentryVersion}.omod
</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>htmlwidgets-omod</artifactId>
<destFileName>${modulesFolder}/htmlwidgets-${htmlwidgetsVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>metadatadeploy-omod</artifactId>
<destFileName>${modulesFolder}/metadatadeploy-${metadatadeployVersion}.omod
</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>metadatamapping-omod</artifactId>
<destFileName>${modulesFolder}/metadatamapping-${metadatamappingVersion}.omod
</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>metadatasharing-omod</artifactId>
<destFileName>${modulesFolder}/metadatasharing-${metadatasharingVersion}.omod
</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>reporting-omod</artifactId>
<destFileName>
${modulesFolder}/reporting-${reportingVersion}.omod
</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>serialization.xstream-omod</artifactId>
<destFileName>
${modulesFolder}/serialization.xstream-${serializationxstreamVersion}.omod
</destFileName>
<type>omod</type>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>uicommons-omod</artifactId>
<destFileName>${modulesFolder}/uicommons-${uicommonsVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>appui-omod</artifactId>
<destFileName>${modulesFolder}/appui-${appuiVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>appframework-omod</artifactId>
<destFileName>${modulesFolder}/appframework-${appframeworkVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>uiframework-omod</artifactId>
<destFileName>${modulesFolder}/uiframework-${uiframeworkVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>adminui-omod</artifactId>
<destFileName>${modulesFolder}/adminui-${adminuiVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>uilibrary-omod</artifactId>
<destFileName>${modulesFolder}/uilibrary-${uilibraryVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>providermanagement-omod</artifactId>
<destFileName>${modulesFolder}/providermanagement-${providermanagementVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>htmlformentry19ext-omod</artifactId>
<destFileName>${modulesFolder}/htmlformentry19ext-${htmlformentry19extVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>htmlformentryui-omod</artifactId>
<destFileName>${modulesFolder}/htmlformentryui-${htmlformentryuiVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>emrapi-omod</artifactId>
<destFileName>${modulesFolder}/emrapi-${emrapiVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs</groupId>
<artifactId>event-omod</artifactId>
<destFileName>${modulesFolder}/event-${eventVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>referenceapplication-omod</artifactId>
<destFileName>${modulesFolder}/referenceapplication-${referenceapplicationVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>registrationcore-omod</artifactId>
<destFileName>${modulesFolder}/registrationcore-${registrationcoreVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>registrationapp-omod</artifactId>
<destFileName>${modulesFolder}/registrationapp-${registrationappVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>idgen-omod</artifactId>
<destFileName>${modulesFolder}/idgen-${idgenVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>referencemetadata-omod</artifactId>
<destFileName>${modulesFolder}/referencemetadata-${referencemetadataVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>dataexchange-omod</artifactId>
<destFileName>${modulesFolder}/dataexchange-${dataexchangeVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>appointmentscheduling-omod</artifactId>
<destFileName>${modulesFolder}/appointmentscheduling-${appointmentschedulingVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>appointmentschedulingui-omod</artifactId>
<destFileName>${modulesFolder}/appointmentschedulingui-${appointmentschedulinguiVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>formentryapp-omod</artifactId>
<destFileName>${modulesFolder}/formentryapp-${formentryappVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>reportingrest-omod</artifactId>
<destFileName>${modulesFolder}/reportingrest-${reportingRestVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>allergyui-omod</artifactId>
<destFileName>${modulesFolder}/allergyui-${allergyuiVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>allergyapi-omod</artifactId>
<destFileName>${modulesFolder}/allergyapi-${allergyapiVersion}.omod</destFileName>
</artifactItem>
<artifactItem>
<groupId>org.openmrs.module</groupId>
<artifactId>chartsearch-omod</artifactId>
<destFileName>${modulesFolder}/chartsearch-${chartsearchVersion}.omod</destFileName>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.6</version>
<executions>
<execution>
<id>copy-resources</id>
<phase>package</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}</outputDirectory>
<resources>
<resource>
<directory>scripts</directory>
<filtering>true</filtering>
<includes>
<include>${scriptFilename}</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
<!-- Copy the omods in the modules directory which are not downloadable from http://mavenrepo.openmrs.org/nexus -->
<execution>
<id>copy-downloaded-modules</id>
<phase>package</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/WEB-INF/bundledModules</outputDirectory>
<!-- prevent corruption of binary files by filtering activity which may be needed -->
<nonFilteredFileExtensions>
<nonFilteredFileExtension>jar</nonFilteredFileExtension>
<nonFilteredFileExtension>omod</nonFilteredFileExtension>
</nonFilteredFileExtensions>
<resources>
<resource>
<directory>modules</directory>
<filtering>true</filtering>
<includes>
<include>*.omod</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.3.1</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>/bin/bash</executable>
<workingDirectory>${project.build.directory}</workingDirectory>
<arguments>
<argument>${scriptFilename}</argument>
</arguments>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>