Skip to content

Commit 2f9135e

Browse files
committed
crm# 251120-000827 support shared rims projects
1 parent f7408fd commit 2f9135e

3 files changed

Lines changed: 28 additions & 11 deletions

File tree

Dockerfile

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# ----------------------------------------------------------------------
22
# BUILD CLOWDER DIST
33
# ----------------------------------------------------------------------
4-
FROM openjdk:8-jdk-bullseye as clowder-build
4+
FROM ubuntu:xenial as clowder-build
55

66
ARG BRANCH="unknown"
77
ARG VERSION="unknown"
@@ -16,7 +16,8 @@ WORKDIR /src
1616
# install clowder libraries (hopefully cached)
1717
COPY sbt* /src/
1818
COPY project /src/project
19-
RUN ./sbt update
19+
RUN apt-get update && apt-get -y install openjdk-8-jdk zip \
20+
&& ./sbt update
2021

2122
# environemnt variables
2223
ENV BRANCH=${BRANCH} \
@@ -33,7 +34,6 @@ RUN rm -rf target/universal/clowder-*.zip clowder clowder-* \
3334
&& ./sbt dist \
3435
&& unzip -q target/universal/clowder-*.zip \
3536
&& mv clowder-* clowder \
36-
&& apt-get update && apt-get -y install zip \
3737
&& for x in $(find clowder -name \*.jar); do \
3838
zip -d $x org/apache/log4j/net/JMSAppender.class org/apache/log4j/net/SocketServer.class | grep 'deleting:' && echo "fixed $x"; \
3939
done; \
@@ -43,10 +43,10 @@ RUN rm -rf target/universal/clowder-*.zip clowder clowder-* \
4343
# ----------------------------------------------------------------------
4444
# BUILD CLOWDER
4545
# ----------------------------------------------------------------------
46-
FROM openjdk:8-jre-bullseye as clowder-runtime
46+
FROM ubuntu:xenial as clowder-runtime
4747

4848
# add bash
49-
RUN apt-get update && apt-get install -y bash curl bind9
49+
RUN apt-get update && apt-get install -y openjdk-8-jre wget bash curl bind9
5050
#RUN apk add --no-cache bash curl
5151

5252
# environemnt variables
@@ -57,7 +57,8 @@ ARG GITSHA1="unknown"
5757
ENV BRANCH=${BRANCH} \
5858
VERSION=${VERSION} \
5959
BUILDNUMBER=${BUILDNUMBER} \
60-
GITSHA1=${GITSHA1}
60+
GITSHA1=${GITSHA1} \
61+
JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/jre
6162

6263
# expose some properties of the container
6364
EXPOSE 9000

app/services/PPMSSyncService.scala

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import util.{SpaceConfig, PPMSUtils}
88
import play.api.Play._
99
import play.api.{ Plugin, Logger, Application }
1010
import play.libs.Akka
11+
import scala.collection.mutable.ListBuffer
1112
import scala.collection.mutable.Map
1213
import scala.concurrent.duration._
1314
import play.api.libs.concurrent.Execution.Implicits._
@@ -350,14 +351,29 @@ class PPMSSyncService (application: Application) extends Plugin {
350351
}
351352
// get projects
352353
var numProjects = 0
354+
val sharedProjects = new ListBuffer[Int]()
353355
ppmsCoreids.foreach { ppmsCoreid =>
354356
val projectsJsonArr = PPMSUtils.getPPMSProjects(ppmsUrl, ppmsPumaApiKey, ppmsGetProjectAction, ppmsCoreid)
355357
numProjects += projectsJsonArr.value.size
356-
projectsJsonArr.value.foreach { projectInfo =>
357-
val projId = (projectInfo \ "ProjectRef").as[Int]
358+
projectsJsonArr.value.foreach { ppmsProjectInfo =>
359+
var projectInfo = ppmsProjectInfo
360+
val projId = (ppmsProjectInfo \ "ProjectRef").as[Int]
361+
val coreId = (ppmsProjectInfo \ "CoreFacilityRef").as[Int]
358362
if ( projId >= startingProjectId ) {
359-
val projectXtraProfileArr = PPMSUtils.getPPMSExtraProjectProfile(ppmsUrl, ppmsApi2Key, projId, ppmsGetXtraProjectProfileAction)
360-
projectXtraProfileArr.value.foreach(syncProject(projectInfo, _))
363+
var addProject = true
364+
if ( coreId == 0 ) {
365+
Logger.info("Shared project: " + projId)
366+
addProject = !sharedProjects.contains(projId)
367+
if ( addProject ) {
368+
Logger.info("Shared project: " + projId + " - using core id: " + ppmsCoreid)
369+
projectInfo = ppmsProjectInfo.asInstanceOf[JsObject] + ("CoreFacilityRef" -> JsString(ppmsCoreid))
370+
sharedProjects += projId
371+
}
372+
}
373+
if ( addProject ) {
374+
val projectXtraProfileArr = PPMSUtils.getPPMSExtraProjectProfile(ppmsUrl, ppmsApi2Key, projId, ppmsGetXtraProjectProfileAction)
375+
projectXtraProfileArr.value.foreach(syncProject(projectInfo, _))
376+
}
361377
}
362378
}
363379
}

project/Build.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import NativePackagerKeys._
1313
object ApplicationBuild extends Build {
1414

1515
val appName = "clowder"
16-
val version = "1.20.6"
16+
val version = "1.20.7"
1717
val jvm = "1.7"
1818

1919
def appVersion: String = {

0 commit comments

Comments
 (0)