From b8991eb922792bf7a35187b3f120942237d7cab0 Mon Sep 17 00:00:00 2001
From: Emmanuel Deviller <emmanuel.deviller@xelians.fr>
Date: Wed, 22 Jul 2020 09:08:50 +0200
Subject: [PATCH] [TECH] Limit max memory for services launched by Springboot
 plugin

---
 api/api-iam/iam-internal/pom.xml | 3 +--
 pom.xml                          | 3 ++-
 tools/start_vitamui.sh           | 9 +++++++--
 ui/ui-frontend/package-lock.json | 7 ++++---
 4 files changed, 14 insertions(+), 8 deletions(-)

diff --git a/api/api-iam/iam-internal/pom.xml b/api/api-iam/iam-internal/pom.xml
index 06f594ed..2b4fb938 100644
--- a/api/api-iam/iam-internal/pom.xml
+++ b/api/api-iam/iam-internal/pom.xml
@@ -235,8 +235,7 @@
 					<executable>true</executable>
 					<attach>false</attach> <!-- Need to use the original jar for integration-tests -->
 					<mainClass>fr.gouv.vitamui.iam.internal.server.ApiIamServerApplication</mainClass>
-                   	<jvmArguments> -Dvitam.config.folder=${basedir}/src/main/config/dev-vitam
-					</jvmArguments>
+                   	<jvmArguments>-Xmx512m -Dvitam.config.folder=${basedir}/src/main/config/dev-vitam</jvmArguments>
 					<arguments>
 						<!-- use src/main/config/application-dev.yml when using mvn spring-boot:run -->
 						<!-- See : https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html#boot-features-external-config-application-property-files -->
diff --git a/pom.xml b/pom.xml
index 00ad0a28..02d62187 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1084,7 +1084,7 @@
                     <artifactId>maven-project-info-reports-plugin</artifactId>
                     <version>${maven.project.info.reports.plugin.version}</version>
                 </plugin>
-                
+
                 <plugin>
                     <groupId>com.github.eirslett</groupId>
                     <artifactId>frontend-maven-plugin</artifactId>
@@ -1171,6 +1171,7 @@
                     <version>${spring.boot.version}</version>
                     <configuration>
                         <addResources>false</addResources>
+                        <jvmArguments>-Xmx512m</jvmArguments>
                     </configuration>
                 </plugin>
                 <plugin>
diff --git a/tools/start_vitamui.sh b/tools/start_vitamui.sh
index 1eecbb55..1f8b4176 100755
--- a/tools/start_vitamui.sh
+++ b/tools/start_vitamui.sh
@@ -19,6 +19,7 @@
 
 DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )"
 SPRINGBOOT="mvn spring-boot:run -Dspring-boot.run.noverify"
+#SPRINGBOOT='mvn -Pvitam --batch-mode spring-boot:run -Dspring-boot.run.noverify -Dspring-boot.run.jvmArguments='\''-XX:+UseG1GC' '-Xmx512m'\'
 NPMSTART="sh -c 'npm install; npm run start'"
 
 function launch() {
@@ -50,7 +51,7 @@ function start_api() {
      launch "../api/api-iam/iam-external" "$SPRINGBOOT"
 
      # Start Cas Server
-     launch "../cas/cas-server" "java -Dspring.config.additional-location=src/main/config/cas-server-application-dev.yml -jar target/cas-server.war"
+     launch "../cas/cas-server" "java -Xmx512m -Dspring.config.additional-location=src/main/config/cas-server-application-dev.yml -jar target/cas-server.war"
 }
 
 function start_ui_prod() {
@@ -107,15 +108,19 @@ echo
               ;;
          "back")
               start_api
+              sleep 15
               start_ui_back_dev
-             ;;
+              ;;
 	     "front")
              start_api
+             sleep 15
              start_ui_back_dev
+             sleep 15
              start_ui_front_dev
              ;;
          *)
              start_api
+             sleep 15
              start_ui_prod
              ;;
 	 esac
diff --git a/ui/ui-frontend/package-lock.json b/ui/ui-frontend/package-lock.json
index c997b691..60b84730 100644
--- a/ui/ui-frontend/package-lock.json
+++ b/ui/ui-frontend/package-lock.json
@@ -7881,9 +7881,9 @@
       }
     },
     "moment": {
-      "version": "2.26.0",
-      "resolved": "https://nexus.teamdlab.com/repository/npm/moment/-/moment-2.26.0.tgz",
-      "integrity": "sha512-oIixUO+OamkUkwjhAVE18rAMfRJNsNe/Stid/gwHSOfHrOtw9EhAY2AHvdKZ/k/MggcYELFCJz/Sn2pL8b8JMw=="
+      "version": "2.27.0",
+      "resolved": "https://nexus.teamdlab.com/repository/npm/moment/-/moment-2.27.0.tgz",
+      "integrity": "sha512-al0MUK7cpIcglMv3YF13qSgdAIqxHTO7brRtaz3DlSULbqfazqkc5kEjNrLDOM7fsjshoFIihnU8snrP7zUvhQ=="
     },
     "move-concurrently": {
       "version": "1.0.1",
@@ -11681,6 +11681,7 @@
     },
     "ui-frontend-common": {
       "version": "file:../ui-frontend-common/ui-frontend-common-1.0.3.tgz",
+      "integrity": "sha512-lRqFup1UUPzG1CriEPzpg7B9rif/sO0xx61vYu/2t945IDNznAEDE01d8s/s2ZkT+4+fULHsxe5aosDAbyJ2Zg==",
       "requires": {
         "@angular/animations": "8.2.14",
         "@angular/cdk": "^8.2.3",
-- 
GitLab