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

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


The following commit(s) were added to refs/heads/1.7.0 by this push:
     new 555240c09 FINERACT-1607: Improve documentation on Cucumber usage
555240c09 is described below

commit 555240c0940ed087cba8d8d3791756c6f16bcbc8
Author: Aleks <[email protected]>
AuthorDate: Wed May 11 01:53:23 2022 +0200

    FINERACT-1607: Improve documentation on Cucumber usage
---
 build.gradle                                       |  29 +++++-
 .../src/docs/en/chapters/release/index.adoc        |   2 +
 .../src/docs/en/chapters/release/publish.adoc      |  32 ++++++
 .../en/chapters/testing/cucumber-cheatsheet.adoc   | 110 ++++++++++++++++++++-
 .../en/chapters/testing/cucumber-introduction.adoc |   3 -
 .../en/chapters/testing/cucumber-tutorial.adoc     |   3 -
 .../src/docs/en/chapters/testing/cucumber.adoc     |   4 -
 fineract-doc/src/docs/en/index.adoc                |   8 +-
 fineract-provider/build.gradle                     |   5 +-
 .../features/accounting/accounting.common.feature  |  19 ++++
 .../resources/features/batch/batch.builder.feature |  19 ++++
 .../features/commands/commands.provider.feature    |  19 ++++
 .../infrastructure.classpath.feature               |  19 ++++
 .../infrastructure/infrastructure.core.feature     |  19 ++++
 .../infrastructure.sqlbuilder.feature              |  19 ++++
 .../test/resources/features/mix/mix.report.feature |  19 ++++
 .../features/module/modules.example.feature        |  19 ++++
 .../features/module/modules.service.feature        |  19 ++++
 .../portfolio/loanproduct.validation.feature       |  19 ++++
 .../features/template/template.service.feature     |  19 ++++
 gradle.properties                                  |   1 +
 21 files changed, 384 insertions(+), 22 deletions(-)

diff --git a/build.gradle b/build.gradle
index 5a1042533..03a22692b 100644
--- a/build.gradle
+++ b/build.gradle
@@ -96,8 +96,7 @@ allprojects  {
 
     jgitver {
         strategy 'PATTERN'
-        versionPattern '${M}.${m}.${p}-${meta.GIT_SHA1_8}'
-        // versionPattern '${v}'
+        versionPattern ( project.hasProperty('fineract.release.version') ? 
'${v}' : '${M}.${m}.${p}-${meta.GIT_SHA1_8}' )
     }
 
     repositories {
@@ -265,6 +264,7 @@ configure(project.fineractJavaProjects) {
     apply plugin: 'se.thinkcode.cucumber-runner'
     apply from: 
"${rootDir}/buildSrc/src/main/groovy/org.apache.fineract.dependencies.gradle"
 
+    group = 'org.apache.fineract'
 
     /* define the valid syntax level for source files */
     sourceCompatibility = JavaVersion.VERSION_17
@@ -590,10 +590,15 @@ configure(project.fineractJavaProjects) {
 
 configure(project.fineractPublishProjects) {
     apply plugin: 'maven-publish'
+    apply plugin: 'signing'
 
     publishing {
         publications {
             mavenJava(MavenPublication) {
+                groupId 'org.apache.fineract'
+                artifactId project.name
+                version "${project.version}-SNAPSHOT"
+
                 from components.java
 
                 versionMapping {
@@ -606,7 +611,7 @@ configure(project.fineractPublishProjects) {
                 }
 
                 pom {
-                    name = 'Fineract'
+                    name = "Fineract: ${project.name}"
                     description = 'A secure, multi-tenanted microfinance 
platform'
                     url = 'https://fineract.apache.org'
                     licenses {
@@ -624,7 +629,23 @@ configure(project.fineractPublishProjects) {
             }
         }
 
-        // TODO FINERACT-1102: Actually use this to deploy to ASF (Apache 
Software Foundation) Nexus Maven Repository
+        repositories {
+            def releaseUrl = 
'https://repository.apache.org/content/repositories/releases'
+            def stagingUrl = 
'https://repository.apache.org/content/repositories/snapshots'
+
+            maven {
+                name 'apache'
+                url hasProperty('fineract.release.version') ? releaseUrl : 
stagingUrl
+                credentials {
+                    username "${findProperty('fineract.config.username')}"
+                    password "${findProperty('fineract.config.password')}"
+                }
+            }
+        }
+    }
+
+    signing {
+        sign publishing.publications.mavenJava
     }
 }
 
diff --git a/fineract-doc/src/docs/en/chapters/release/index.adoc 
b/fineract-doc/src/docs/en/chapters/release/index.adoc
index 8bbfe89e5..d8efa23f3 100644
--- a/fineract-doc/src/docs/en/chapters/release/index.adoc
+++ b/fineract-doc/src/docs/en/chapters/release/index.adoc
@@ -11,3 +11,5 @@ include::{diagramsdir}/release-schedule.puml[]
 include::configuration.adoc[leveloffset=+1]
 
 include::process.adoc[leveloffset=+1]
+
+include::publish.adoc[leveloffset=+1]
diff --git a/fineract-doc/src/docs/en/chapters/release/publish.adoc 
b/fineract-doc/src/docs/en/chapters/release/publish.adoc
new file mode 100644
index 000000000..609bdcbc1
--- /dev/null
+++ b/fineract-doc/src/docs/en/chapters/release/publish.adoc
@@ -0,0 +1,32 @@
+= Publish Release Artifacts
+
+NOTE: More on releases at the ASF see 
https://www.apache.org/legal/release-policy.html#distribute-raw-artifact
+
+== Requirements
+
+You need to have your GPG keypairs properly set up. The JAR release artifacts 
(currently only `fineract-client`) are signed with a Gradle plugin just before 
being uploaded to the Maven repository. Please make sure that the following 
properties are set in your private `gradle.properties` file in your home folder:
+
+[source,properties]
+----
+signing.keyId=7890ABCD
+signing.password=*****
+signing.secretKeyRingFile=~/.gnupg/secring.gpg
+----
+
+This is quite similiar to the Fineract release plugin properties for GPG. In 
one of the next release we'll merge these two setups to avoid this duplicated 
configuration.
+
+== Maven Repository
+
+We are using the ASF's official https://repository.apache.org[Nexus Maven 
repository] to publish our snapshot and release artifacts.
+
+NOTE: Find more information at 
https://infra.apache.org/publishing-maven-artifacts.html
+
+== NPM Registry
+
+For convenience we will be using Github Packages to publish Fineract's 
Typescript API client.
+
+TBD
+
+== Docker Hub
+
+TBD
diff --git a/fineract-doc/src/docs/en/chapters/testing/cucumber-cheatsheet.adoc 
b/fineract-doc/src/docs/en/chapters/testing/cucumber-cheatsheet.adoc
index 4a2888a05..ec246d7f9 100644
--- a/fineract-doc/src/docs/en/chapters/testing/cucumber-cheatsheet.adoc
+++ b/fineract-doc/src/docs/en/chapters/testing/cucumber-cheatsheet.adoc
@@ -1,3 +1,109 @@
-= Cheatsheet
+= Cucumber Cheatsheet
 
-TBD
\ No newline at end of file
+Cucumber is a test framework based on Behavior-Driven Development (BDD). Tests 
are written in plain text with very basic syntax rules. These rules form a mini 
language that is called Gherkin.
+
+A specification resembles spoken language. This makes it ideal for use with 
non-technical people that have domain specific knowledge. The emphasis of 
Cucumber lies on finding examples to describe your test cases. The few keywords 
and language rules are easy to explain to anyone (compared JUnit for example).
+
+== Keywords
+
+The Gherkin language has the following keywords:
+
+* `Feature`
+* `Rule`
+* `Scenario Outline` or `Scenario Template`
+* `Example` or `Scenario`
+* `Examples` or `Scenarios`
+* `Background`
+* `Given`
+* `And`
+* `But`
+* `When`
+* `Then`
+
+There are a couple of additional signs used in Gherkin:
+
+* `|` is as column delimiters in `Examples` tables
+* with `@` you can assign any kind of tags to categorize the specs (or e.g. 
relate them to certain Jira tickets)
+* `#` is used to indicate line comments
+
+IMPORTANT: The tag `@ignore` is used to skip tests. This is a somewhat 
arbitrary choice (we could use any other tag to indicate temporarily disabled 
tests).
+
+Each non-empty line of a test specification needs to start with one of these 
keywords. The text blocks that follows the keywords are mapped to so called 
step definitions that contain the actual test code.
+
+A typical Cucumber test specification written in Gherkin looks like this:
+
+[source,gherkin,subs="attributes+,+macros"]
+----
+include::{rootdir}/fineract-provider/src/test/resources/features/template/template.service.feature[lines=19..]
+----
+
+The corresponding step definitions would look like this:
+
+[source,java,subs="attributes+,+macros"]
+----
+include::{rootdir}/fineract-provider/src/test/java/org/apache/fineract/template/service/TemplateServiceStepDefinitions.java[lines=19..]
+----
+
+NOTE: This example is an actual test specification that you can find in the 
`fineract-provider` module.
+
+=== Feature
+
+This keyword is used to group scenarios and to group related scenarios. All 
Gherkin specifications must start with the word `Feature`.
+
+=== Descriptions
+
+A description is any non-empty line that doesn't start with a keyword. 
Descriptions can be placed under the keywords:
+
+* `Feature`
+* `Rule`
+* `Background`
+* `Example`/`Scenario`
+* `Scenario Outline`
+
+=== Rule
+
+Rule is used to group multiple related scenarios together.
+
+=== Example/Scenario
+
+This is the important part of the specification as it should describe the 
business logic in more detail with the usage of steps (usually `Given`, `When`, 
`Then`)
+
+=== Steps
+
+TBD
+
+=== Given
+
+TBD
+
+=== When
+
+TBD
+
+=== Then
+
+TBD
+
+=== And, But
+
+TBD
+
+=== Background
+
+TBD
+
+=== Scenario Outline
+
+TBD
+
+=== Examples/Tables
+
+TBD
+
+== Outlook
+
+As a proof of concept we've converted all unit tests in `fineract-provider` 
into Cucumber tests. The more interesting part starts when we'll attack the 
integration tests with over 400 mostly business logic related tests. These 
tests fit very well in Cucumber's test specification structure (a lot of 
_if-then-else_ or in Gherkin: _Given-When-Then_). Migrating all tests will take 
a while, but we would already recommend trying to implement tests as Cucumber 
specifications. It should be relat [...]
+
+Hopefully this will motivate even more people from the broader Fineract 
community to participate in the project by sharing their domain specific 
knowledge as Cucumber specifications. Specifications are written in Englisch 
(although not a technical requirement).
+
+NOTE: Have a look at the specifications in `fineract-provider` for an initial 
inspiration. For more information please see https://cucumber.io/docs
\ No newline at end of file
diff --git 
a/fineract-doc/src/docs/en/chapters/testing/cucumber-introduction.adoc 
b/fineract-doc/src/docs/en/chapters/testing/cucumber-introduction.adoc
deleted file mode 100644
index 42839e88a..000000000
--- a/fineract-doc/src/docs/en/chapters/testing/cucumber-introduction.adoc
+++ /dev/null
@@ -1,3 +0,0 @@
-= Introduction
-
-TBD
\ No newline at end of file
diff --git a/fineract-doc/src/docs/en/chapters/testing/cucumber-tutorial.adoc 
b/fineract-doc/src/docs/en/chapters/testing/cucumber-tutorial.adoc
deleted file mode 100644
index 912dad8a5..000000000
--- a/fineract-doc/src/docs/en/chapters/testing/cucumber-tutorial.adoc
+++ /dev/null
@@ -1,3 +0,0 @@
-= Tutorial
-
-TBD
\ No newline at end of file
diff --git a/fineract-doc/src/docs/en/chapters/testing/cucumber.adoc 
b/fineract-doc/src/docs/en/chapters/testing/cucumber.adoc
index 90c356bb4..272fc8953 100644
--- a/fineract-doc/src/docs/en/chapters/testing/cucumber.adoc
+++ b/fineract-doc/src/docs/en/chapters/testing/cucumber.adoc
@@ -3,8 +3,4 @@
 
 TBD
 
-include::cucumber-introduction.adoc[leveloffset=+1]
-
-include::cucumber-tutorial.adoc[leveloffset=+1]
-
 include::cucumber-cheatsheet.adoc[leveloffset=+1]
diff --git a/fineract-doc/src/docs/en/index.adoc 
b/fineract-doc/src/docs/en/index.adoc
index d030fbd32..c68bd3dd3 100644
--- a/fineract-doc/src/docs/en/index.adoc
+++ b/fineract-doc/src/docs/en/index.adoc
@@ -39,16 +39,16 @@ include::chapters/development/index.adoc[leveloffset=+1]
 
 include::chapters/security/index.adoc[leveloffset=+1]
 
-include::{rootdir}/fineract-client/build/generated/asciidoc/index.adoc[leveloffset=+1]
-
-include::chapters/sdk/index.adoc[leveloffset=+1]
-
 include::chapters/testing/index.adoc[leveloffset=+1]
 
 include::chapters/documentation/index.adoc[leveloffset=+1]
 
 include::chapters/release/index.adoc[leveloffset=+1]
 
+include::chapters/sdk/index.adoc[leveloffset=+1]
+
+include::{rootdir}/fineract-client/build/generated/asciidoc/index.adoc[leveloffset=+1]
+
 include::faq.adoc[leveloffset=+1]
 
 include::glossary.adoc[leveloffset=+1]
diff --git a/fineract-provider/build.gradle b/fineract-provider/build.gradle
index 84ac3e8fa..1d8f96ab7 100644
--- a/fineract-provider/build.gradle
+++ b/fineract-provider/build.gradle
@@ -51,11 +51,11 @@ compileJava.doLast {
 import org.apache.tools.ant.filters.ReplaceTokens
 
 task prepareInputYaml {
-    outputs.file('config/swagger/fineract-input.yaml')
+    outputs.file("${buildDir}/tmp/swagger/fineract-input.yaml")
 
     doLast {
         copy {
-            from file('config/swagger/fineract-input.yaml.template')
+            from 
file("${projectDir}/config/swagger/fineract-input.yaml.template")
             into file("${buildDir}/tmp/swagger")
             rename { String filename -> return 'fineract-input.yaml' }
             filter(ReplaceTokens, tokens: [VERSION: 
"${project.version}".toString()])
@@ -323,6 +323,7 @@ jar.dependsOn resolve
 test.dependsOn resolve
 checkstyleMain.dependsOn resolve
 checkstyleTest.dependsOn resolve
+rat.dependsOn prepareInputYaml
 spotbugsTest.dependsOn resolve
 compileTestJava.dependsOn ':fineract-client:processResources'
 bootJarMainClassName.dependsOn resolve
diff --git 
a/fineract-provider/src/test/resources/features/accounting/accounting.common.feature
 
b/fineract-provider/src/test/resources/features/accounting/accounting.common.feature
index ec58e7a1e..9589b179f 100644
--- 
a/fineract-provider/src/test/resources/features/accounting/accounting.common.feature
+++ 
b/fineract-provider/src/test/resources/features/accounting/accounting.common.feature
@@ -1,3 +1,22 @@
+#
+# 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.
+#
+
 Feature: Accounting Service
 
   @accounting
diff --git 
a/fineract-provider/src/test/resources/features/batch/batch.builder.feature 
b/fineract-provider/src/test/resources/features/batch/batch.builder.feature
index 6c84197e8..62dfec23c 100644
--- a/fineract-provider/src/test/resources/features/batch/batch.builder.feature
+++ b/fineract-provider/src/test/resources/features/batch/batch.builder.feature
@@ -1,3 +1,22 @@
+#
+# 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.
+#
+
 Feature: Batch Service
 
   @batch
diff --git 
a/fineract-provider/src/test/resources/features/commands/commands.provider.feature
 
b/fineract-provider/src/test/resources/features/commands/commands.provider.feature
index 450134514..34fb1518e 100644
--- 
a/fineract-provider/src/test/resources/features/commands/commands.provider.feature
+++ 
b/fineract-provider/src/test/resources/features/commands/commands.provider.feature
@@ -1,3 +1,22 @@
+#
+# 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.
+#
+
 Feature: Commands Service
 
   @template
diff --git 
a/fineract-provider/src/test/resources/features/infrastructure/infrastructure.classpath.feature
 
b/fineract-provider/src/test/resources/features/infrastructure/infrastructure.classpath.feature
index 8ee4b9b97..6a03cccfa 100644
--- 
a/fineract-provider/src/test/resources/features/infrastructure/infrastructure.classpath.feature
+++ 
b/fineract-provider/src/test/resources/features/infrastructure/infrastructure.classpath.feature
@@ -1,3 +1,22 @@
+#
+# 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.
+#
+
 Feature: Classpath duplicates
 
   @infrastructure
diff --git 
a/fineract-provider/src/test/resources/features/infrastructure/infrastructure.core.feature
 
b/fineract-provider/src/test/resources/features/infrastructure/infrastructure.core.feature
index e78bd0e76..a7ebd8279 100644
--- 
a/fineract-provider/src/test/resources/features/infrastructure/infrastructure.core.feature
+++ 
b/fineract-provider/src/test/resources/features/infrastructure/infrastructure.core.feature
@@ -1,3 +1,22 @@
+#
+# 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.
+#
+
 Feature: Core Infrastructure
 
   @infrastructure
diff --git 
a/fineract-provider/src/test/resources/features/infrastructure/infrastructure.sqlbuilder.feature
 
b/fineract-provider/src/test/resources/features/infrastructure/infrastructure.sqlbuilder.feature
index c5fdf8530..23044a0c9 100644
--- 
a/fineract-provider/src/test/resources/features/infrastructure/infrastructure.sqlbuilder.feature
+++ 
b/fineract-provider/src/test/resources/features/infrastructure/infrastructure.sqlbuilder.feature
@@ -1,3 +1,22 @@
+#
+# 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.
+#
+
 Feature: SQL Builder
 
   @sqlbuilder
diff --git 
a/fineract-provider/src/test/resources/features/mix/mix.report.feature 
b/fineract-provider/src/test/resources/features/mix/mix.report.feature
index 54c7d651d..bac3f143b 100644
--- a/fineract-provider/src/test/resources/features/mix/mix.report.feature
+++ b/fineract-provider/src/test/resources/features/mix/mix.report.feature
@@ -1,3 +1,22 @@
+#
+# 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.
+#
+
 Feature: MIX XBRL
 
   @mix
diff --git 
a/fineract-provider/src/test/resources/features/module/modules.example.feature 
b/fineract-provider/src/test/resources/features/module/modules.example.feature
index ad2be04b8..c4454a4f1 100644
--- 
a/fineract-provider/src/test/resources/features/module/modules.example.feature
+++ 
b/fineract-provider/src/test/resources/features/module/modules.example.feature
@@ -1,3 +1,22 @@
+#
+# 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.
+#
+
 Feature: Example Modules
 
   @modules
diff --git 
a/fineract-provider/src/test/resources/features/module/modules.service.feature 
b/fineract-provider/src/test/resources/features/module/modules.service.feature
index 6aee6ba4f..e2cc191a4 100644
--- 
a/fineract-provider/src/test/resources/features/module/modules.service.feature
+++ 
b/fineract-provider/src/test/resources/features/module/modules.service.feature
@@ -1,3 +1,22 @@
+#
+# 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.
+#
+
 Feature: Service Modules
 
   @modules
diff --git 
a/fineract-provider/src/test/resources/features/portfolio/loanproduct.validation.feature
 
b/fineract-provider/src/test/resources/features/portfolio/loanproduct.validation.feature
index 0167830fa..36a7a0f2b 100644
--- 
a/fineract-provider/src/test/resources/features/portfolio/loanproduct.validation.feature
+++ 
b/fineract-provider/src/test/resources/features/portfolio/loanproduct.validation.feature
@@ -1,3 +1,22 @@
+#
+# 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.
+#
+
 Feature: Loan Product Validation
 
   @loanproduct
diff --git 
a/fineract-provider/src/test/resources/features/template/template.service.feature
 
b/fineract-provider/src/test/resources/features/template/template.service.feature
index 53152ce00..e0e168d94 100644
--- 
a/fineract-provider/src/test/resources/features/template/template.service.feature
+++ 
b/fineract-provider/src/test/resources/features/template/template.service.feature
@@ -1,3 +1,22 @@
+#
+# 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.
+#
+
 Feature: Template Service
 
   @template
diff --git a/gradle.properties b/gradle.properties
index 0da3f472a..7d886728a 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -20,3 +20,4 @@ org.gradle.jvmargs=-Xmx2g --add-exports 
jdk.compiler/com.sun.tools.javac.api=ALL
 buildType=BUILD
 org.gradle.caching=true
 org.gradle.parallel=true
+org.gradle.logging.level=warn

Reply via email to