You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@fineract.apache.org by vo...@apache.org on 2020/04/26 14:47:36 UTC

[fineract] branch develop updated (4b724c2 -> 394a7fb)

This is an automated email from the ASF dual-hosted git repository.

vorburger pushed a change to branch develop
in repository https://gitbox.apache.org/repos/asf/fineract.git.


    from 4b724c2  add @Ignore to flaky method in ClientLoanIntegrationTest (FINERACT-885)
     new c317db1  FINERACT-883
     new 0a80195  Fix rat reports
     new 394a7fb  IntegrationTests for git build info

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 fineract-provider/build.gradle                     | 395 +++++++++++----------
 .../properties/basicauth/application.properties    |   1 +
 .../basicauth/twofactor/application.properties     |   1 +
 .../properties/oauth/application.properties        |   1 +
 .../oauth/twofactor/application.properties         |   1 +
 .../integrationtests/ActuatorIntegrationTest.java} |  40 +--
 .../src/main/resources/application.properties      |   1 +
 7 files changed, 233 insertions(+), 207 deletions(-)
 copy fineract-provider/src/{test/java/org/apache/fineract/infrastructure/core/boot/tests/SpringBootServerLoginTest.java => integrationTest/java/org/apache/fineract/integrationtests/ActuatorIntegrationTest.java} (52%)


[fineract] 02/03: Fix rat reports

Posted by vo...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

vorburger pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/fineract.git

commit 0a80195ac28ae09cfd07b18f301a7f664980031c
Author: xurror <ka...@outlook.com>
AuthorDate: Thu Apr 23 04:16:40 2020 +0100

    Fix rat reports
---
 .travis.yml                    |   2 +-
 fineract-provider/build.gradle | 165 ++++++++++++++++++++---------------------
 2 files changed, 81 insertions(+), 86 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 955add4..933e5e5 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -61,5 +61,5 @@ script:
 # using "&&" instead of several "-" means that integrationTest does not run if test fails,
 # and Docker test does not run if integration test fails, which makes PR failure easier to understand.
 # @see https://docs.travis-ci.com/user/job-lifecycle/#customizing-the-build-phase
-  - ./gradlew --console=plain licenseMain licenseTest licenseIntegrationTest check  &&  ./gradlew --console=plain integrationTest  &&  sudo service mysql stop  &&  docker-compose build  &&  docker-compose up -d  &&  sleep 30s  &&  http --verify=no --timeout 240 --check-status get https://localhost:8443/fineract-provider/actuator/health
+  - ./gradlew clean && ./gradlew --console=plain licenseMain licenseTest licenseIntegrationTest check  &&  ./gradlew --console=plain integrationTest  &&  sudo service mysql stop  &&  docker-compose build  &&  docker-compose up -d  &&  sleep 30s  &&  http --verify=no --timeout 240 --check-status get https://localhost:8443/fineract-provider/actuator/health
 # We stop the mysql system service when running the Docker test to avoid port 3306 conflicts (unless we run the mysql in docker-compose on another port; req. FINERACT-773)
diff --git a/fineract-provider/build.gradle b/fineract-provider/build.gradle
index 746898b..595e755 100644
--- a/fineract-provider/build.gradle
+++ b/fineract-provider/build.gradle
@@ -43,7 +43,7 @@ buildscript {
      // below
      classpath "org.apache.openjpa:openjpa:$openJPAVersion"
      classpath 'com.radcortez.gradle:openjpa-gradle-plugin:3.1.0'
-     classpath 'gradle.plugin.org.nosphere.apache:creadur-rat-gradle:0.2.2'
+     classpath "org.nosphere.apache:creadur-rat-gradle:0.6.0"
      classpath "com.github.spotbugs:spotbugs-gradle-plugin:2.0.1"
       // Use Guava version 23+ as a workaround to spotbug intergration.
       // See: https://github.com/spotbugs/spotbugs-gradle-plugin/issues/128#issuecomment-535864882
@@ -175,86 +175,82 @@ jacocoTestReport{
 }
 
 rat {
-  xmlOutput = false
-  htmlOutput = false
-  plainOutput = true
-  verbose = false
-//  inputDir = './..'
-  reportDir = new File(buildDir,'reports/rat')
- excludes = [
-	'**/licenses/**',
-	'**/*.md',
-	'**/*.github/**',
-	'**/MANIFEST.MF',
-    '**/*.json',
-	'**/*.txt',
-	'**/*.log',
-	'**/fineractdev-eclipse-preferences.epf',
-	'**/template-expected.html',
-	'**/template.mustache',
-	'**/.classpath',
-	'**/.project',
-	'**/.idea/**',
-    '**/*.ipr',
-    '**/*.iws',
-	'**/.settings/**',
-	'**/bin/**',
-	'**/.git/**',
-    '**/.gitignore',
-    '**/.gitkeep',
-	'**/*.iml',
-	//Notice files
-	'**/NOTICE_RELEASE',
-	'**/NOTICE_SOURCE',
-    // Swagger License
-    '**/src/main/resources/swagger-ui/**',
-    // gradle
-    '**/.gradle/**',
-    '**/gradlew',
-    '**/gradlew.bat',
-    '**/gradle/wrapper/gradle-wrapper.properties',
-    '**/caches/**',
-    '**/daemon/**',
-    '**/native/**',
-    '**/wrapper/**',
-	'**/build/**',
-
-	//Api Docs
-	'**/api-docs/*.*',
-	'**/docs/system-architecture/.htaccess',
-	'**/docs/system-architecture/404.html',
-	'**/docs/system-architecture/index.html',
-	'**/docs/system-architecture/**/*.xml',
-	'**/bootstrap-3.0.0/assets/application.js',
-	'**/system-architecture/js/plugins.js',
-
-	//Apache License
-	'**/bootstrap-3.0.0/assets/less.js',
-	'**/css/bootstrap-3.0.0/**/*.*',
-
-	//Public Domain See http://www.JSON.org/js.html
-	'**/bootstrap-3.0.0/assets/json2.js.htm',
-
-	// MIT License
-	'**/modernizr-2.6.2.min.js',
-	'**/css/normalize.css',
-	'**/assets/filesaver.js',
-	'**/css/fonts/glyphicons-halflings-regular.svg',
-	'**/assets/jszip.js',
-	'**/assets/jquery.js',
-	'**/api-docs/jquery-1.7.min.js',
-	'**/css/toc-0.1.2/**/*.*',
-	'**/docs/system-architecture/css/main.css',
-	'**/system-architecture/js/vendor/jquery-1.9.1.min.js',
-	'**/system-architecture/js/vendor/toc-0.1.2/jquery.toc.min.js',
-	'**/assets/respond.min.js',
-	'**/assets/html5shiv.js',
-
-	//BSD License
-	'**/assets/uglify.js',
-    //Ignore out folder
-    '**/out/**',
-	]
+    verbose = false
+    reportDir = new File(buildDir,'reports/rat')
+    excludes = [
+        '**/licenses/**',
+        '**/*.md',
+        '**/*.github/**',
+        '**/MANIFEST.MF',
+        '**/*.json',
+        '**/*.txt',
+        '**/*.log',
+        '**/fineractdev-eclipse-preferences.epf',
+        '**/template-expected.html',
+        '**/template.mustache',
+        '**/.classpath',
+        '**/.project',
+        '**/.idea/**',
+        '**/*.ipr',
+        '**/*.iws',
+        '**/.settings/**',
+        '**/bin/**',
+        '**/.git/**',
+        '**/.gitignore',
+        '**/.gitkeep',
+        '**/*.iml',
+        //Notice files
+        '**/NOTICE_RELEASE',
+        '**/NOTICE_SOURCE',
+        // Swagger License
+        '**/src/main/resources/swagger-ui/**',
+        // gradle
+        '**/.gradle/**',
+        '**/gradlew',
+        '**/gradlew.bat',
+        '**/gradle/wrapper/gradle-wrapper.properties',
+        '**/caches/**',
+        '**/daemon/**',
+        '**/native/**',
+        '**/wrapper/**',
+        '**/build/**',
+
+        //Api Docs
+        '**/api-docs/*.*',
+        '**/docs/system-architecture/.htaccess',
+        '**/docs/system-architecture/404.html',
+        '**/docs/system-architecture/index.html',
+        '**/docs/system-architecture/**/*.xml',
+        '**/bootstrap-3.0.0/assets/application.js',
+        '**/system-architecture/js/plugins.js',
+
+        //Apache License
+        '**/bootstrap-3.0.0/assets/less.js',
+        '**/css/bootstrap-3.0.0/**/*.*',
+
+        //Public Domain See http://www.JSON.org/js.html
+        '**/bootstrap-3.0.0/assets/json2.js.htm',
+
+        // MIT License
+        '**/modernizr-2.6.2.min.js',
+        '**/css/normalize.css',
+        '**/assets/filesaver.js',
+        '**/css/fonts/glyphicons-halflings-regular.svg',
+        '**/assets/jszip.js',
+        '**/assets/jquery.js',
+        '**/api-docs/jquery-1.7.min.js',
+        '**/css/toc-0.1.2/**/*.*',
+        '**/docs/system-architecture/css/main.css',
+        '**/system-architecture/js/vendor/jquery-1.9.1.min.js',
+        '**/system-architecture/js/vendor/toc-0.1.2/jquery.toc.min.js',
+        '**/assets/respond.min.js',
+        '**/assets/html5shiv.js',
+
+        //BSD License
+        '**/assets/uglify.js',
+        //Ignore out folder
+        '**/out/**',
+    ]
 }
 
 configurations {
@@ -327,14 +323,14 @@ modernizer {
 
     ignorePackages = []
     ignoreClassNamePatterns = [
-         '.*AbstractPersistableCustom'   
+        '.*AbstractPersistableCustom'   
     ]
     ignoreGeneratedClasses = true
 
     exclusions = []
     exclusionPatterns = [
-//            To be removed when https://issues.apache.org/jira/browse/FINERACT-826 is fixed
-            'org/joda/time/.*'
+    // To be removed when https://issues.apache.org/jira/browse/FINERACT-826 is fixed
+        'org/joda/time/.*'
     ]
 }
 
@@ -406,7 +402,6 @@ war {
 license {
     header rootProject.file('../APACHE_LICENSETEXT.md')
     excludes([
-        "**/rat-report.txt",
         "**/git.properties",
         "**/*.html",
         "**/*.mustache",


[fineract] 01/03: FINERACT-883

Posted by vo...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

vorburger pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/fineract.git

commit c317db110f2886395c3919b0bb88aac683c233e4
Author: xurror <ka...@outlook.com>
AuthorDate: Tue Apr 21 16:47:34 2020 +0100

    FINERACT-883
    
    Display fineracts git build info actuator/info endpoint
---
 fineract-provider/.gitignore                       |  1 +
 fineract-provider/build.gradle                     | 30 +++++++++++++++++++---
 .../properties/basicauth/application.properties    |  1 +
 .../basicauth/twofactor/application.properties     |  1 +
 .../properties/oauth/application.properties        |  1 +
 .../oauth/twofactor/application.properties         |  1 +
 .../src/main/resources/application.properties      |  1 +
 7 files changed, 33 insertions(+), 3 deletions(-)

diff --git a/fineract-provider/.gitignore b/fineract-provider/.gitignore
index e4bae86..0118827 100644
--- a/fineract-provider/.gitignore
+++ b/fineract-provider/.gitignore
@@ -1,6 +1,7 @@
 bin
 out/
 build
+src/main/resources/git.properties
 repos
 .classpath
 .project
diff --git a/fineract-provider/build.gradle b/fineract-provider/build.gradle
index d6982f8..746898b 100644
--- a/fineract-provider/build.gradle
+++ b/fineract-provider/build.gradle
@@ -49,6 +49,7 @@ buildscript {
       // See: https://github.com/spotbugs/spotbugs-gradle-plugin/issues/128#issuecomment-535864882
      classpath 'com.google.guava:guava:28.1-jre'
      classpath "gradle.plugin.com.github.andygoossens:gradle-modernizer-plugin:1.3.0"
+     classpath "gradle.plugin.com.gorylenko.gradle-git-properties:gradle-git-properties:2.2.2"
   }
 }
 
@@ -68,6 +69,7 @@ apply plugin: "com.github.spotbugs"
 apply plugin: 'checkstyle'
 apply plugin: 'com.github.andygoossens.gradle-modernizer-plugin'
 apply plugin: 'jacoco'
+apply plugin: "com.gorylenko.gradle-git-properties"
 // apply plugin: 'pmd'
 
 dependencyManagement {
@@ -250,8 +252,8 @@ rat {
 
 	//BSD License
 	'**/assets/uglify.js',
-         //Ignore out folder
-         '**/out/**'
+    //Ignore out folder
+    '**/out/**',
 	]
 }
 
@@ -403,7 +405,15 @@ war {
 
 license {
     header rootProject.file('../APACHE_LICENSETEXT.md')
-    excludes(["**/*.html", "**/*.mustache", "**/package-info.java", "**/keystore.jks", "**/swagger-ui/**"])
+    excludes([
+        "**/rat-report.txt",
+        "**/git.properties",
+        "**/*.html",
+        "**/*.mustache",
+        "**/package-info.java",
+        "**/keystore.jks",
+        "**/swagger-ui/**",
+    ])
     strictCheck true
 }
 
@@ -557,6 +567,7 @@ def qualifyVersionIfNecessary(version) {
 springBoot {
     mainClassName = 'org.apache.fineract.ServerWithMariaDB4jApplication'
 }
+
 bootWar {
     mainClassName = 'org.apache.fineract.ServerWithMariaDB4jApplication'
 }
@@ -567,3 +578,16 @@ tasks.withType(SpotBugsTask) {
     reports.html.enabled = true
     reportLevel = "high"
 }
+
+gitProperties {
+    gitPropertiesResourceDir = "${project.rootDir}/src/main/resources"
+    dateFormat = "yyyy-MM-dd'T'HH:mmZ"
+    dateFormatTimeZone = "GMT"
+}
+
+generateGitProperties.outputs.upToDateWhen { false }
+
+clean {
+    delete "${project.rootDir}/src/main/resources/git.properties"
+}
+
diff --git a/fineract-provider/properties/basicauth/application.properties b/fineract-provider/properties/basicauth/application.properties
index b1f6aea..a6f6692 100644
--- a/fineract-provider/properties/basicauth/application.properties
+++ b/fineract-provider/properties/basicauth/application.properties
@@ -19,3 +19,4 @@
 
 spring.profiles.default=basicauth
 management.health.jms.enabled=false
+management.info.git.mode=FULL
diff --git a/fineract-provider/properties/basicauth/twofactor/application.properties b/fineract-provider/properties/basicauth/twofactor/application.properties
index b748491..59bd126 100644
--- a/fineract-provider/properties/basicauth/twofactor/application.properties
+++ b/fineract-provider/properties/basicauth/twofactor/application.properties
@@ -20,3 +20,4 @@
 spring.profiles.default=basicauth
 spring.profiles.active=basicauth,twofactor
 management.health.jms.enabled=false
+management.info.git.mode=FULL
diff --git a/fineract-provider/properties/oauth/application.properties b/fineract-provider/properties/oauth/application.properties
index b34050a..d958ec7 100644
--- a/fineract-provider/properties/oauth/application.properties
+++ b/fineract-provider/properties/oauth/application.properties
@@ -20,3 +20,4 @@
 spring.profiles.default=basicauth
 spring.profiles.active=oauth
 management.health.jms.enabled=false
+management.info.git.mode=FULL
diff --git a/fineract-provider/properties/oauth/twofactor/application.properties b/fineract-provider/properties/oauth/twofactor/application.properties
index 3164fff..1a2c979 100644
--- a/fineract-provider/properties/oauth/twofactor/application.properties
+++ b/fineract-provider/properties/oauth/twofactor/application.properties
@@ -20,3 +20,4 @@
 spring.profiles.default=basicauth
 spring.profiles.active=oauth,twofactor
 management.health.jms.enabled=false
+management.info.git.mode=FULL
diff --git a/fineract-provider/src/main/resources/application.properties b/fineract-provider/src/main/resources/application.properties
index b1f6aea..a6f6692 100644
--- a/fineract-provider/src/main/resources/application.properties
+++ b/fineract-provider/src/main/resources/application.properties
@@ -19,3 +19,4 @@
 
 spring.profiles.default=basicauth
 management.health.jms.enabled=false
+management.info.git.mode=FULL


[fineract] 03/03: IntegrationTests for git build info

Posted by vo...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

vorburger pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/fineract.git

commit 394a7fb1d1d268dda3c80f6f28859195ca7242c7
Author: xurror <ka...@outlook.com>
AuthorDate: Thu Apr 23 08:28:57 2020 +0100

    IntegrationTests for git build info
---
 .travis.yml                                        |   2 +-
 fineract-provider/.gitignore                       |   1 -
 fineract-provider/build.gradle                     | 222 +++++++++++----------
 .../integrationtests/ActuatorIntegrationTest.java  |  47 +++++
 4 files changed, 161 insertions(+), 111 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 933e5e5..955add4 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -61,5 +61,5 @@ script:
 # using "&&" instead of several "-" means that integrationTest does not run if test fails,
 # and Docker test does not run if integration test fails, which makes PR failure easier to understand.
 # @see https://docs.travis-ci.com/user/job-lifecycle/#customizing-the-build-phase
-  - ./gradlew clean && ./gradlew --console=plain licenseMain licenseTest licenseIntegrationTest check  &&  ./gradlew --console=plain integrationTest  &&  sudo service mysql stop  &&  docker-compose build  &&  docker-compose up -d  &&  sleep 30s  &&  http --verify=no --timeout 240 --check-status get https://localhost:8443/fineract-provider/actuator/health
+  - ./gradlew --console=plain licenseMain licenseTest licenseIntegrationTest check  &&  ./gradlew --console=plain integrationTest  &&  sudo service mysql stop  &&  docker-compose build  &&  docker-compose up -d  &&  sleep 30s  &&  http --verify=no --timeout 240 --check-status get https://localhost:8443/fineract-provider/actuator/health
 # We stop the mysql system service when running the Docker test to avoid port 3306 conflicts (unless we run the mysql in docker-compose on another port; req. FINERACT-773)
diff --git a/fineract-provider/.gitignore b/fineract-provider/.gitignore
index 0118827..e4bae86 100644
--- a/fineract-provider/.gitignore
+++ b/fineract-provider/.gitignore
@@ -1,7 +1,6 @@
 bin
 out/
 build
-src/main/resources/git.properties
 repos
 .classpath
 .project
diff --git a/fineract-provider/build.gradle b/fineract-provider/build.gradle
index 595e755..955375f 100644
--- a/fineract-provider/build.gradle
+++ b/fineract-provider/build.gradle
@@ -24,33 +24,33 @@ gradle clean tomcatrunwar
 project.ext.jerseyVersion = '1.17'
 
 buildscript {
-  ext {
-    openJPAVersion = '3.1.0'
-    jacocoVersion = '0.8.5'
-  }
-  repositories {
-  	 jcenter()
-  	 mavenCentral()
-  	 maven { url "https://plugins.gradle.org/m2/" }
-  }
-
-  dependencies {
-     classpath 'io.spring.gradle:dependency-management-plugin:1.0.9.RELEASE'
-     classpath 'com.bmuschko:gradle-tomcat-plugin:2.5',
-               'nl.javadude.gradle.plugins:license-gradle-plugin:0.11.0',
-               'org.zeroturnaround:gradle-jrebel-plugin:1.1.2',
-               'org.springframework.boot:spring-boot-gradle-plugin:2.2.4.RELEASE'
-     // below
-     classpath "org.apache.openjpa:openjpa:$openJPAVersion"
-     classpath 'com.radcortez.gradle:openjpa-gradle-plugin:3.1.0'
-     classpath "org.nosphere.apache:creadur-rat-gradle:0.6.0"
-     classpath "com.github.spotbugs:spotbugs-gradle-plugin:2.0.1"
-      // Use Guava version 23+ as a workaround to spotbug intergration.
-      // See: https://github.com/spotbugs/spotbugs-gradle-plugin/issues/128#issuecomment-535864882
-     classpath 'com.google.guava:guava:28.1-jre'
-     classpath "gradle.plugin.com.github.andygoossens:gradle-modernizer-plugin:1.3.0"
-     classpath "gradle.plugin.com.gorylenko.gradle-git-properties:gradle-git-properties:2.2.2"
-  }
+    ext {
+        openJPAVersion = '3.1.0'
+        jacocoVersion = '0.8.5'
+    }
+    repositories {
+        jcenter()
+        mavenCentral()
+        maven { url "https://plugins.gradle.org/m2/" }
+    }
+
+    dependencies {
+        classpath 'io.spring.gradle:dependency-management-plugin:1.0.9.RELEASE'
+        classpath 'com.bmuschko:gradle-tomcat-plugin:2.5',
+            'nl.javadude.gradle.plugins:license-gradle-plugin:0.11.0',
+            'org.zeroturnaround:gradle-jrebel-plugin:1.1.2',
+            'org.springframework.boot:spring-boot-gradle-plugin:2.2.4.RELEASE'
+        // below
+        classpath "org.apache.openjpa:openjpa:$openJPAVersion"
+        classpath 'com.radcortez.gradle:openjpa-gradle-plugin:3.1.0'
+        classpath 'gradle.plugin.org.nosphere.apache:creadur-rat-gradle:0.2.2'
+        classpath "com.github.spotbugs:spotbugs-gradle-plugin:2.0.1"
+        // Use Guava version 23+ as a workaround to spotbug intergration.
+        // See: https://github.com/spotbugs/spotbugs-gradle-plugin/issues/128#issuecomment-535864882
+        classpath 'com.google.guava:guava:28.1-jre'
+        classpath "gradle.plugin.com.github.andygoossens:gradle-modernizer-plugin:1.3.0"
+        classpath "gradle.plugin.com.gorylenko.gradle-git-properties:gradle-git-properties:2.2.2"
+    }
 }
 
 apply plugin: 'io.spring.dependency-management'
@@ -73,70 +73,70 @@ apply plugin: "com.gorylenko.gradle-git-properties"
 // apply plugin: 'pmd'
 
 dependencyManagement {
-  imports {
-    mavenBom 'org.springframework:spring-framework-bom:5.2.3.RELEASE'
-  }
-
-  dependencies {
-     dependency 'org.springframework.security.oauth:spring-security-oauth2:2.3.6.RELEASE'
-     dependency 'org.apache.openjpa:openjpa:3.1.0'
-     dependency 'com.squareup.retrofit:retrofit:1.6.1'
-     dependency 'com.squareup.okhttp:okhttp:2.0.0'
-     dependency 'com.squareup.okhttp:okhttp-urlconnection:2.0.0'
-     dependency 'com.google.code.gson:gson:+'
-     dependency 'com.google.guava:guava:28.1-jre'
-     dependency 'joda-time:joda-time:+'
-     dependency 'org.apache.commons:commons-email:1.3.3'
-     dependency 'org.apache.commons:commons-lang3:+'
-     dependency 'org.drizzle.jdbc:drizzle-jdbc:1.4'
-     dependency 'com.lowagie:itext:2.1.7'
-     dependency 'com.lowagie:itext-rtf:2.1.7'
-     dependency 'org.mnode.ical4j:ical4j:1.0.4'
-     dependency 'com.googlecode.flyway:flyway-core:2.1.1'
-     dependency 'org.quartz-scheduler:quartz:+'
-     dependency 'com.amazonaws:aws-java-sdk-s3:1.11.80'
-     dependency 'net.sf.ehcache:ehcache:+'
-     dependency 'com.github.spullara.mustache.java:compiler:0.8.12'
-     dependency 'com.jayway.jsonpath:json-path:0.9.1'
-     dependency 'org.apache.tika:tika-core:1.9'
-     dependency 'org.apache.httpcomponents:httpclient:+'
-     dependency 'io.swagger:swagger-jersey-jaxrs:1.5.15'
-     dependency 'org.springframework:spring-jms:4.0.7.RELEASE'
-     dependency 'org.apache.activemq:activemq-broker:+'
-     dependency 'javax.validation:validation-api:+'
-     dependency 'org.apache.bval:org.apache.bval.bundle:2.0.2'
-     dependencySet(group: 'io.rest-assured', version: '3.3.0'){
-         entry 'rest-assured'
-     }
-     dependency 'junit:junit:+'
-     //dependency 'junit:junit-dep:4.11'
-     dependency 'org.mockito:mockito-core:+'
-     dependency 'org.slf4j:slf4j-simple:1.7.30'
-     dependency 'com.mockrunner:mockrunner-jms:2.0.1'
-     dependency 'com.mockrunner:mockrunner-jdbc:2.0.1'
-
-     dependencySet(group: 'com.sun.jersey', version: jerseyVersion) {
-         entry 'jersey-core'
-         entry 'jersey-servlet'
-         entry 'jersey-server'
-         entry 'jersey-json'
-     }
-     dependencySet(group: 'com.sun.jersey.contribs', version: jerseyVersion) {
-         entry 'jersey-spring'
-         entry 'jersey-multipart'
-     }
-     dependencySet(group: 'org.apache.poi', version: '3.9') {
-         entry 'poi'
-         entry 'poi-ooxml'
-         entry 'poi-ooxml-schemas'
-     }
-     dependencySet(group: 'org.apache.tomcat.embed', version: '7.0.94') {
-         entry 'tomcat-embed-core'
-         entry 'tomcat-embed-jasper'
-         entry 'tomcat-embed-logging-log4j'
-     }
-     
-  }
+    imports {
+        mavenBom 'org.springframework:spring-framework-bom:5.2.3.RELEASE'
+    }
+
+    dependencies {
+        dependency 'org.springframework.security.oauth:spring-security-oauth2:2.3.6.RELEASE'
+        dependency 'org.apache.openjpa:openjpa:3.1.0'
+        dependency 'com.squareup.retrofit:retrofit:1.6.1'
+        dependency 'com.squareup.okhttp:okhttp:2.0.0'
+        dependency 'com.squareup.okhttp:okhttp-urlconnection:2.0.0'
+        dependency 'com.google.code.gson:gson:+'
+        dependency 'com.google.guava:guava:28.1-jre'
+        dependency 'joda-time:joda-time:+'
+        dependency 'org.apache.commons:commons-email:1.3.3'
+        dependency 'org.apache.commons:commons-lang3:+'
+        dependency 'org.drizzle.jdbc:drizzle-jdbc:1.4'
+        dependency 'com.lowagie:itext:2.1.7'
+        dependency 'com.lowagie:itext-rtf:2.1.7'
+        dependency 'org.mnode.ical4j:ical4j:1.0.4'
+        dependency 'com.googlecode.flyway:flyway-core:2.1.1'
+        dependency 'org.quartz-scheduler:quartz:+'
+        dependency 'com.amazonaws:aws-java-sdk-s3:1.11.80'
+        dependency 'net.sf.ehcache:ehcache:+'
+        dependency 'com.github.spullara.mustache.java:compiler:0.8.12'
+        dependency 'com.jayway.jsonpath:json-path:0.9.1'
+        dependency 'org.apache.tika:tika-core:1.9'
+        dependency 'org.apache.httpcomponents:httpclient:+'
+        dependency 'io.swagger:swagger-jersey-jaxrs:1.5.15'
+        dependency 'org.springframework:spring-jms:4.0.7.RELEASE'
+        dependency 'org.apache.activemq:activemq-broker:+'
+        dependency 'javax.validation:validation-api:+'
+        dependency 'org.apache.bval:org.apache.bval.bundle:2.0.2'
+        dependencySet(group: 'io.rest-assured', version: '3.3.0'){
+            entry 'rest-assured'
+        }
+        dependency 'junit:junit:+'
+        //dependency 'junit:junit-dep:4.11'
+        dependency 'org.mockito:mockito-core:+'
+        dependency 'org.slf4j:slf4j-simple:1.7.30'
+        dependency 'com.mockrunner:mockrunner-jms:2.0.1'
+        dependency 'com.mockrunner:mockrunner-jdbc:2.0.1'
+
+        dependencySet(group: 'com.sun.jersey', version: jerseyVersion) {
+            entry 'jersey-core'
+            entry 'jersey-servlet'
+            entry 'jersey-server'
+            entry 'jersey-json'
+        }
+        dependencySet(group: 'com.sun.jersey.contribs', version: jerseyVersion) {
+            entry 'jersey-spring'
+            entry 'jersey-multipart'
+        }
+        dependencySet(group: 'org.apache.poi', version: '3.9') {
+            entry 'poi'
+            entry 'poi-ooxml'
+            entry 'poi-ooxml-schemas'
+        }
+        dependencySet(group: 'org.apache.tomcat.embed', version: '7.0.94') {
+            entry 'tomcat-embed-core'
+            entry 'tomcat-embed-jasper'
+            entry 'tomcat-embed-logging-log4j'
+        }
+        
+    }
 }
 
 /* define the valid syntax level for source files */
@@ -175,7 +175,11 @@ jacocoTestReport{
 }
 
 rat {
+    xmlOutput = false
+    htmlOutput = false
+    plainOutput = true
     verbose = false
+    // inputDir = './..'
     reportDir = new File(buildDir,'reports/rat')
     excludes = [
         '**/licenses/**',
@@ -250,6 +254,9 @@ rat {
         '**/assets/uglify.js',
         //Ignore out folder
         '**/out/**',
+
+        // Git build info
+        "**/git.properties",
     ]
 }
 
@@ -457,20 +464,20 @@ sourceSets.test.output.resourcesDir = sourceSets.test.java.outputDir
 
 /* Exclude maria db and embedded tomcat related files for non dev builds */
 if (!(project.hasProperty('env') && project.getProperty('env') == 'dev')) {
-sourceSets {
-    main {
-        java {
-            exclude '**/Server*'
-            exclude '**/MariaDB4j*'
-            exclude '**/EmbeddedTomcatWithSSLConfiguration.java'
+    sourceSets {
+        main {
+            java {
+                exclude '**/Server*'
+                exclude '**/MariaDB4j*'
+                exclude '**/EmbeddedTomcatWithSSLConfiguration.java'
+            }
+        }
+        test {
+            java {
+                exclude '**/core/boot/tests/**'
+            }
         }
     }
-    test {
-    	java {
-    		exclude '**/core/boot/tests/**'
-    	}
-    }
-}
 }
 
 sourceSets {
@@ -575,14 +582,11 @@ tasks.withType(SpotBugsTask) {
 }
 
 gitProperties {
-    gitPropertiesResourceDir = "${project.rootDir}/src/main/resources"
+    gitPropertiesResourceDir = "$buildDir/classes/java/main/resources"
     dateFormat = "yyyy-MM-dd'T'HH:mmZ"
     dateFormatTimeZone = "GMT"
+    failOnNoGitDirectory = false
 }
 
+// make sure the generateGitProperties task always executes (even when git.properties is not changed)
 generateGitProperties.outputs.upToDateWhen { false }
-
-clean {
-    delete "${project.rootDir}/src/main/resources/git.properties"
-}
-
diff --git a/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/ActuatorIntegrationTest.java b/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/ActuatorIntegrationTest.java
new file mode 100644
index 0000000..48219f8
--- /dev/null
+++ b/fineract-provider/src/integrationTest/java/org/apache/fineract/integrationtests/ActuatorIntegrationTest.java
@@ -0,0 +1,47 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.fineract.integrationtests;
+
+import static org.junit.Assert.assertTrue;
+
+import io.restassured.RestAssured;
+import io.restassured.http.ContentType;
+import io.restassured.response.Response;
+import java.util.Map;
+import org.junit.Test;
+
+public class ActuatorIntegrationTest {
+
+    private final static String INFO_URL = "/fineract-provider/actuator/info";
+
+    @Test
+    public void testActuatorGitBuildInfo() {
+        Response response = RestAssured.given()
+            .headers("Content-Type", ContentType.JSON, "Accept", ContentType.JSON).when()
+            .get(INFO_URL).then().contentType(ContentType.JSON).extract().response();
+
+        Map<String, String> gitBuildInfo = response.jsonPath().getMap("git");
+
+        assertTrue(gitBuildInfo.containsKey("branch"));
+        assertTrue(gitBuildInfo.containsKey("remote"));
+
+    }
+
+}