@genesislcap/blank-app-seed 1.5.5 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.genx/package.json +1 -1
- package/.genx/prompts/server.js +10 -1
- package/.genx/prompts.js +2 -1
- package/.genx/tests/fixtures/testapp/docker-compose.yml +1 -1
- package/.genx/tests/fixtures/testapp/server/{jvm/testapp-config/src/main/resources → testapp-app/src/main/genesis}/cfg/testapp-processes.xml +1 -1
- package/.genx/versions.json +3 -3
- package/.github/CODEOWNERS +1 -1
- package/.github/workflows/build.yml +2 -3
- package/.gitignore +3 -6
- package/.releaserc +1 -1
- package/CHANGELOG.md +18 -0
- package/README.md +2 -2
- package/build.gradle.kts +1 -1
- package/client/package.json +6 -2
- package/docker-compose.yml +1 -11
- package/gradle/wrapper/gradle-wrapper.properties +1 -1
- package/gradle.properties +1 -0
- package/gradlew +7 -7
- package/gradlew.bat +0 -0
- package/package.json +1 -1
- package/server/README.md +13 -0
- package/server/{jvm/build.gradle.kts → build.gradle.kts} +1 -14
- package/server/{jvm/gradle → gradle}/wrapper/gradle-wrapper.properties +1 -1
- package/server/gradle.properties +16 -0
- package/server/{jvm/gradlew → gradlew} +7 -7
- package/server/{jvm/gradlew.bat → gradlew.bat} +0 -0
- package/server/{jvm/settings.gradle.kts → settings.gradle.kts} +24 -31
- package/server/{{appName}}-app/build.gradle.kts +20 -0
- package/server/{jvm/{{appName}}-site-specific/src/main/resources → {{appName}}-app/src/main/genesis}/cfg/genesis-system-definition.kts +8 -11
- package/server/{{appName}}-app/src/main/genesis/cfg/{{appName}}-processes.xml +93 -0
- package/server/{{appName}}-app/src/main/genesis/cfg/{{appName}}-service-definitions.xml +23 -0
- package/server/{{appName}}-app/src/main/genesis/scripts/{{appName}}-consolidator.kts +19 -0
- package/server/{{appName}}-app/src/main/genesis/scripts/{{appName}}-data-pipeline.kts +19 -0
- package/server/{{appName}}-app/src/main/genesis/scripts/{{appName}}-dataserver.kts +19 -0
- package/server/{{appName}}-app/src/main/genesis/scripts/{{appName}}-eventhandler.kts +19 -0
- package/server/{{appName}}-app/src/main/genesis/scripts/{{appName}}-reqrep.kts +19 -0
- package/server/{{appName}}-app/src/main/genesis/scripts/{{appName}}-streamer-client.kts +19 -0
- package/server/{{appName}}-app/src/main/genesis/scripts/{{appName}}-streamer.kts +19 -0
- package/settings.gradle.kts +1 -31
- package/server/jvm/README.md +0 -27
- package/server/jvm/docker-scripts/configureDB.sh +0 -12
- package/server/jvm/docker-scripts/docker-entrypoint.sh +0 -7
- package/server/jvm/docker-scripts/genesisInstall.sh +0 -5
- package/server/jvm/docker-scripts/remap.sh +0 -23
- package/server/jvm/gradle.properties +0 -10
- package/server/jvm/{{appName}}-config/build.gradle.kts +0 -8
- package/server/jvm/{{appName}}-config/src/main/kotlin/donotdelete.txt +0 -1
- package/server/jvm/{{appName}}-config/src/main/resources/cfg/{{appName}}-processes.xml +0 -15
- package/server/jvm/{{appName}}-config/src/main/resources/cfg/{{appName}}-service-definitions.xml +0 -15
- package/server/jvm/{{appName}}-deploy/build.gradle.kts +0 -35
- package/server/jvm/{{appName}}-dictionary-cache/build.gradle.kts +0 -13
- package/server/jvm/{{appName}}-dictionary-cache/{{appName}}-generated-dao/build.gradle.kts +0 -1
- package/server/jvm/{{appName}}-dictionary-cache/{{appName}}-generated-fields/build.gradle.kts +0 -1
- package/server/jvm/{{appName}}-dictionary-cache/{{appName}}-generated-hft/build.gradle.kts +0 -1
- package/server/jvm/{{appName}}-dictionary-cache/{{appName}}-generated-sysdef/build.gradle.kts +0 -1
- package/server/jvm/{{appName}}-dictionary-cache/{{appName}}-generated-view/build.gradle.kts +0 -1
- package/server/jvm/{{appName}}-distribution/build.gradle.kts +0 -97
- package/server/jvm/{{appName}}-eventhandler/build.gradle.kts +0 -13
- package/server/jvm/{{appName}}-messages/build.gradle.kts +0 -6
- package/server/jvm/{{appName}}-messages/src/main/kotlin/global/genesis/message/common/readme.md +0 -1
- package/server/jvm/{{appName}}-messages/src/main/kotlin/global/genesis/message/event/readme.md +0 -1
- package/server/jvm/{{appName}}-messages/src/main/kotlin/global/genesis/message/request/readme.md +0 -1
- package/server/jvm/{{appName}}-messages/src/main/resources/META-INF/global/genesis/message/product-info +0 -1
- package/server/jvm/{{appName}}-script-config/build.gradle.kts +0 -16
- package/server/jvm/{{appName}}-script-config/src/main/kotlin/donotdelete.txt +0 -1
- package/server/jvm/{{appName}}-script-config/src/main/resources/scripts/{{appName}}-dataserver.kts +0 -13
- package/server/jvm/{{appName}}-script-config/src/main/resources/scripts/{{appName}}-eventhandler.kts +0 -13
- package/server/jvm/{{appName}}-script-config/src/main/resources/scripts/{{appName}}-reqrep.kts +0 -13
- package/server/jvm/{{appName}}-script-config/src/test/kotlin/GenesisTestSupportTest.kt +0 -23
- package/server/jvm/{{appName}}-script-config/src/test/resources/GenesisHome/donotdelete.txt +0 -0
- package/server/jvm/{{appName}}-site-specific/README.md +0 -3
- package/server/jvm/{{appName}}-site-specific/build.gradle.kts +0 -114
- package/server/jvm/{{appName}}-site-specific/src/main/kotlin/donotdelete.txt +0 -1
- package/server/nginx/Dockerfile +0 -5
- package/server/nginx/cert.crt +0 -20
- package/server/nginx/cert.key +0 -27
- package/server/nginx/default.conf +0 -40
- /package/.genx/tests/fixtures/testapp/server/{jvm/testapp-config/src/main/resources → testapp-app/src/main/genesis}/cfg/testapp-fields-dictionary.kts +0 -0
- /package/.genx/tests/fixtures/testapp/server/{jvm/testapp-config/src/main/resources → testapp-app/src/main/genesis}/cfg/testapp-service-definitions.xml +0 -0
- /package/.genx/tests/fixtures/testapp/server/{jvm/testapp-config/src/main/resources → testapp-app/src/main/genesis}/cfg/testapp-tables-dictionary.kts +0 -0
- /package/.genx/tests/fixtures/testapp/server/{jvm/testapp-script-config/src/main/resources → testapp-app/src/main/genesis}/scripts/testapp-dataserver.kts +0 -0
- /package/.genx/tests/fixtures/testapp/server/{jvm/testapp-script-config/src/main/resources → testapp-app/src/main/genesis}/scripts/testapp-eventhandler.kts +0 -0
- /package/server/{jvm/gradle → gradle}/wrapper/gradle-wrapper.jar +0 -0
- /package/server/{jvm/{{appName}}-config/src/main/resources → {{appName}}-app/src/main/genesis}/cfg/{{appName}}-fields-dictionary.kts +0 -0
- /package/server/{jvm/{{appName}}-config/src/main/resources → {{appName}}-app/src/main/genesis}/cfg/{{appName}}-system-definition.kts +0 -0
- /package/server/{jvm/{{appName}}-config/src/main/resources → {{appName}}-app/src/main/genesis}/cfg/{{appName}}-tables-dictionary.kts +0 -0
- /package/server/{jvm/{{appName}}-config/src/main/resources → {{appName}}-app/src/main/genesis}/cfg/{{appName}}-view-dictionary.kts +0 -0
- /package/server/{jvm/{{appName}}-site-specific/src/main/resources/data/user.csv → {{appName}}-app/src/main/genesis/data/USER.csv} +0 -0
- /package/server/{jvm/{{appName}}-eventhandler/src/test/resources/GenesisHome/donotdelete.txt → {{appName}}-app/src/main/kotlin/.gitkeep} +0 -0
package/.genx/package.json
CHANGED
package/.genx/prompts/server.js
CHANGED
|
@@ -3,7 +3,8 @@ const {mavenArtifactVersionRegex} = require('./validators');
|
|
|
3
3
|
module.exports = async (inquirer, prevAns = {}) => {
|
|
4
4
|
const {
|
|
5
5
|
groupId = prevAns.groupId,
|
|
6
|
-
applicationVersion = prevAns.applicationVersion
|
|
6
|
+
applicationVersion = prevAns.applicationVersion,
|
|
7
|
+
enableDeployPlugin = prevAns.enableDeployPlugin
|
|
7
8
|
} = await inquirer.prompt([
|
|
8
9
|
{
|
|
9
10
|
name: 'groupId',
|
|
@@ -20,9 +21,17 @@ module.exports = async (inquirer, prevAns = {}) => {
|
|
|
20
21
|
default:'1.0.0-SNAPSHOT',
|
|
21
22
|
validate: mavenArtifactVersionRegex
|
|
22
23
|
},
|
|
24
|
+
{
|
|
25
|
+
name: 'enableDeployPlugin',
|
|
26
|
+
type: 'confirm',
|
|
27
|
+
message: 'Enable deploy plugin?',
|
|
28
|
+
when: prevAns.enableDeployPlugin === undefined,
|
|
29
|
+
default: prevAns.enableDeployPlugin || false
|
|
30
|
+
},
|
|
23
31
|
]);
|
|
24
32
|
return {
|
|
25
33
|
groupId,
|
|
26
34
|
applicationVersion,
|
|
35
|
+
enableDeployPlugin,
|
|
27
36
|
};
|
|
28
37
|
};
|
package/.genx/prompts.js
CHANGED
|
@@ -11,12 +11,13 @@ module.exports = async (inquirer, prevAns = {}) => {
|
|
|
11
11
|
License: ${license}`);
|
|
12
12
|
|
|
13
13
|
const {apiHost, enableSSO} = await apiPrompts(inquirer, prevAns)
|
|
14
|
-
const {groupId, applicationVersion} = await genesisServerPrompts(inquirer, prevAns);
|
|
14
|
+
const {groupId, applicationVersion, enableDeployPlugin} = await genesisServerPrompts(inquirer, prevAns);
|
|
15
15
|
|
|
16
16
|
return {
|
|
17
17
|
apiHost,
|
|
18
18
|
enableSSO,
|
|
19
19
|
groupId,
|
|
20
20
|
applicationVersion,
|
|
21
|
+
enableDeployPlugin,
|
|
21
22
|
};
|
|
22
23
|
};
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
<package>global.genesis.eventhandler.pal</package>
|
|
31
31
|
<script>testapp-eventhandler.kts</script>
|
|
32
32
|
<description>Handles events</description>
|
|
33
|
-
<classpath>testapp-
|
|
33
|
+
<classpath>testapp-app*</classpath>
|
|
34
34
|
<language>pal</language>
|
|
35
35
|
</process>
|
|
36
36
|
</processes>
|
package/.genx/versions.json
CHANGED
package/.github/CODEOWNERS
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
# for reference see https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/creating-a-repository-on-github/about-code-owners#example-of-a-codeowners-file
|
|
2
2
|
|
|
3
|
-
* @cistov @derekdon @MrBrunoWolff @skawian @kievitsp @jacinpoz
|
|
3
|
+
* @cistov @derekdon @MrBrunoWolff @skawian @kievitsp @jacinpoz @khouari1
|
|
@@ -2,7 +2,6 @@ name: Build
|
|
|
2
2
|
|
|
3
3
|
on:
|
|
4
4
|
push:
|
|
5
|
-
branches: [main, master, develop, alpha]
|
|
6
5
|
pull_request:
|
|
7
6
|
branches: [main, master, develop, alpha]
|
|
8
7
|
workflow_dispatch:
|
|
@@ -37,7 +36,7 @@ jobs:
|
|
|
37
36
|
|
|
38
37
|
- name: Generate sample app
|
|
39
38
|
working-directory: /tmp
|
|
40
|
-
run: npx -y @genesislcap/genx@latest init testapp -s "${{github.workspace}}" -x
|
|
39
|
+
run: npx -y @genesislcap/genx@latest init testapp -s "${{github.workspace}}" -x --enableDeployPlugin
|
|
41
40
|
|
|
42
41
|
- name: Copy fixtures
|
|
43
42
|
run: cp -R ./.genx/tests/fixtures/testapp/* /tmp/testapp
|
|
@@ -60,7 +59,7 @@ jobs:
|
|
|
60
59
|
|
|
61
60
|
- name: Create Server Dockerfile
|
|
62
61
|
working-directory: /tmp/testapp
|
|
63
|
-
run: ./gradlew :
|
|
62
|
+
run: ./gradlew :server:testapp-app:createDockerfile -PclientSpecific=true
|
|
64
63
|
|
|
65
64
|
- name: Build Docker images
|
|
66
65
|
working-directory: /tmp/testapp
|
package/.gitignore
CHANGED
|
@@ -39,6 +39,9 @@ target/
|
|
|
39
39
|
.gradle
|
|
40
40
|
**/build/
|
|
41
41
|
!src/**/build/
|
|
42
|
+
client/bootstrapDone
|
|
43
|
+
.husky/.gitignore
|
|
44
|
+
build-cache/
|
|
42
45
|
|
|
43
46
|
# Ignore Gradle GUI config
|
|
44
47
|
gradle-app.setting
|
|
@@ -48,7 +51,6 @@ gradle-app.setting
|
|
|
48
51
|
|
|
49
52
|
# Cache of project
|
|
50
53
|
.gradletasknamecache
|
|
51
|
-
server/jvm/server/position-deploy/gradle.properties
|
|
52
54
|
|
|
53
55
|
# Dependency directories
|
|
54
56
|
node_modules
|
|
@@ -56,11 +58,6 @@ node_modules
|
|
|
56
58
|
# Intellij plugin folder
|
|
57
59
|
.genesis-home
|
|
58
60
|
|
|
59
|
-
build-cache
|
|
60
|
-
|
|
61
|
-
# Server
|
|
62
|
-
server/jvm/{{appName}}-deploy/gradle.properties
|
|
63
|
-
|
|
64
61
|
# Client
|
|
65
62
|
|
|
66
63
|
# Logs
|
package/.releaserc
CHANGED
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [2.0.1](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v2.0.0...v2.0.1) (2024-03-11)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* add kotlin folder for kotlin scripts are recognised correctly by intellij [PLAT-1165](https://github.com/genesiscommunitysuccess/blank-app-seed/issues/1165) (#141) 5d9cc3e
|
|
9
|
+
|
|
10
|
+
## [2.0.0](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v1.5.5...v2.0.0) (2024-03-07)
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### ⚠ BREAKING CHANGES
|
|
14
|
+
|
|
15
|
+
* simplified server folder structure
|
|
16
|
+
|
|
17
|
+
### Features
|
|
18
|
+
|
|
19
|
+
* simplified server folder structure (DVOP-620) (#133) 17a58c4
|
|
20
|
+
|
|
3
21
|
## [1.5.5](https://github.com/genesiscommunitysuccess/blank-app-seed/compare/v1.5.4...v1.5.5) (2024-02-01)
|
|
4
22
|
|
|
5
23
|
|
package/README.md
CHANGED
|
@@ -44,11 +44,11 @@ If you need an introduction to the Genesis platform and its modules it's worth h
|
|
|
44
44
|
|
|
45
45
|
## Project Structure
|
|
46
46
|
|
|
47
|
-
This project contains **server
|
|
47
|
+
This project contains **server** and **client** directories which contain the server and client code respectively.
|
|
48
48
|
|
|
49
49
|
### Server
|
|
50
50
|
|
|
51
|
-
The server code for this project can be found [here](./server/
|
|
51
|
+
The server code for this project can be found [here](./server/README.md).
|
|
52
52
|
It is built using a DSL-like definition based on the Kotlin language: GPAL.
|
|
53
53
|
|
|
54
54
|
### Web Client
|
package/build.gradle.kts
CHANGED
package/client/package.json
CHANGED
|
@@ -68,12 +68,16 @@
|
|
|
68
68
|
},
|
|
69
69
|
"prettier": "@genesislcap/prettier-config",
|
|
70
70
|
"devDependencies": {
|
|
71
|
-
"@genesiscommunitysuccess/cep-fast-plugin": "
|
|
72
|
-
"@genesiscommunitysuccess/custom-elements-lsp": "
|
|
71
|
+
"@genesiscommunitysuccess/cep-fast-plugin": "5.0.3",
|
|
72
|
+
"@genesiscommunitysuccess/custom-elements-lsp": "5.0.3",
|
|
73
73
|
"@genesislcap/design-system-configurator": "{{versions.UI}}",
|
|
74
74
|
"@genesislcap/eslint-config": "{{versions.UI}}",
|
|
75
75
|
"@genesislcap/foundation-testing": "{{versions.UI}}",
|
|
76
76
|
"@genesislcap/genx": "{{versions.UI}}",
|
|
77
|
+
"@genesislcap/eslint-stylelint-builder": "{{versions.UI}}",
|
|
78
|
+
"@genesislcap/uvu-playwright-builder": "{{versions.UI}}",
|
|
79
|
+
"@genesislcap/vite-builder": "{{versions.UI}}",
|
|
80
|
+
"@genesislcap/webpack-builder": "{{versions.UI}}",
|
|
77
81
|
"@genesislcap/prettier-config": "{{versions.UI}}",
|
|
78
82
|
"@genesislcap/stylelint-config": "{{versions.UI}}",
|
|
79
83
|
"@types/node": "20.11.5",
|
package/docker-compose.yml
CHANGED
|
@@ -4,7 +4,7 @@ services:
|
|
|
4
4
|
tty: true
|
|
5
5
|
container_name: gsf
|
|
6
6
|
build:
|
|
7
|
-
context: server/
|
|
7
|
+
context: server/{{appName}}-app/build/docker/
|
|
8
8
|
dockerfile: Dockerfile
|
|
9
9
|
networks:
|
|
10
10
|
qs_network:
|
|
@@ -15,16 +15,6 @@ services:
|
|
|
15
15
|
- '1337:22'
|
|
16
16
|
- '5432:5432'
|
|
17
17
|
- '4569:4569'
|
|
18
|
-
nginx-proxy:
|
|
19
|
-
ports:
|
|
20
|
-
- '80:80'
|
|
21
|
-
- '443:443'
|
|
22
|
-
container_name: nginx
|
|
23
|
-
build:
|
|
24
|
-
context: server/nginx/
|
|
25
|
-
dockerfile: Dockerfile
|
|
26
|
-
networks:
|
|
27
|
-
- qs_network
|
|
28
18
|
frontend:
|
|
29
19
|
container_name: frontend
|
|
30
20
|
build:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
distributionBase=GRADLE_USER_HOME
|
|
2
2
|
distributionPath=wrapper/dists
|
|
3
|
-
distributionUrl=https\://services.gradle.org/distributions/gradle-8.
|
|
3
|
+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-bin.zip
|
|
4
4
|
networkTimeout=10000
|
|
5
5
|
validateDistributionUrl=true
|
|
6
6
|
zipStoreBase=GRADLE_USER_HOME
|
package/gradle.properties
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
kotlin.code.style=official
|
|
2
2
|
org.gradle.jvmargs=-Xmx6g -Xss512k -XX:+HeapDumpOnOutOfMemoryError -XX:+UseG1GC -XX:+UseStringDeduplication -XX:ReservedCodeCacheSize=512m -Dkotlin.daemon.jvm.options=-Xmx2g -Dfile.encoding=UTF-8
|
|
3
3
|
org.gradle.caching=true
|
|
4
|
+
org.gradle.configuration-cache=true
|
package/gradlew
CHANGED
|
@@ -145,7 +145,7 @@ if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
|
|
|
145
145
|
case $MAX_FD in #(
|
|
146
146
|
max*)
|
|
147
147
|
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
|
|
148
|
-
# shellcheck disable=
|
|
148
|
+
# shellcheck disable=SC3045
|
|
149
149
|
MAX_FD=$( ulimit -H -n ) ||
|
|
150
150
|
warn "Could not query maximum file descriptor limit"
|
|
151
151
|
esac
|
|
@@ -153,7 +153,7 @@ if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
|
|
|
153
153
|
'' | soft) :;; #(
|
|
154
154
|
*)
|
|
155
155
|
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
|
|
156
|
-
# shellcheck disable=
|
|
156
|
+
# shellcheck disable=SC3045
|
|
157
157
|
ulimit -n "$MAX_FD" ||
|
|
158
158
|
warn "Could not set maximum file descriptor limit to $MAX_FD"
|
|
159
159
|
esac
|
|
@@ -202,11 +202,11 @@ fi
|
|
|
202
202
|
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
|
203
203
|
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
|
|
204
204
|
|
|
205
|
-
# Collect all arguments for the java command
|
|
206
|
-
# * DEFAULT_JVM_OPTS, JAVA_OPTS,
|
|
207
|
-
# and
|
|
208
|
-
#
|
|
209
|
-
#
|
|
205
|
+
# Collect all arguments for the java command;
|
|
206
|
+
# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of
|
|
207
|
+
# shell script including quotes and variable substitutions, so put them in
|
|
208
|
+
# double quotes to make sure that they get re-expanded; and
|
|
209
|
+
# * put everything else in single quotes, so that it's not re-expanded.
|
|
210
210
|
|
|
211
211
|
set -- \
|
|
212
212
|
"-Dorg.gradle.appname=$APP_BASE_NAME" \
|
package/gradlew.bat
CHANGED
|
File without changes
|
package/package.json
CHANGED
package/server/README.md
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Genesis Product Server
|
|
2
|
+
|
|
3
|
+
## Project structure
|
|
4
|
+
|
|
5
|
+
The blank-app-seed project has now been converted to a Simplified project structure and the old project structure is now referred to as Legacy.
|
|
6
|
+
The {{appName}}-app module is the server's main module and, as a minimum, is the only one required.
|
|
7
|
+
All of the project's server code can be put in this module including configuration files, GPAL scripts and other Java/Kotlin code.
|
|
8
|
+
|
|
9
|
+
By default, the main module will be detected by a module ending with -app.
|
|
10
|
+
You can use the Genesis Gradle Settings plugin property `mainModuleName` to specify a custom name.
|
|
11
|
+
The Genesis Settings plugin is configured in server/settings.gradle.kts with the `genesis` extension.
|
|
12
|
+
|
|
13
|
+
For more details on project structures, see the [docs](https://learn.genesis.global/docs/operations/project-structure/introduction/).
|
|
@@ -1,25 +1,12 @@
|
|
|
1
1
|
ext.set("localDaogenVersion", "{{localGenId}}")
|
|
2
2
|
|
|
3
3
|
plugins {
|
|
4
|
-
kotlin("jvm") version "1.9.10"
|
|
5
4
|
`maven-publish`
|
|
6
|
-
id("global.genesis.build")
|
|
7
5
|
}
|
|
8
6
|
|
|
9
|
-
subprojects
|
|
10
|
-
apply(plugin = "org.jetbrains.kotlin.jvm")
|
|
7
|
+
subprojects {
|
|
11
8
|
apply(plugin = "org.gradle.maven-publish")
|
|
12
9
|
|
|
13
|
-
val junitVersion = "5.10.0"
|
|
14
|
-
dependencies {
|
|
15
|
-
implementation(platform("global.genesis:genesis-bom:${properties["genesisVersion"]}"))
|
|
16
|
-
testImplementation(kotlin("test"))
|
|
17
|
-
constraints {
|
|
18
|
-
// define versions of your dependencies here so that submodules do not have to define versions
|
|
19
|
-
testImplementation("org.junit.jupiter:junit-jupiter-api:$junitVersion")
|
|
20
|
-
testImplementation("org.junit.jupiter:junit-jupiter-engine:$junitVersion")
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
10
|
tasks {
|
|
24
11
|
withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile> {
|
|
25
12
|
kotlinOptions {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
distributionBase=GRADLE_USER_HOME
|
|
2
2
|
distributionPath=wrapper/dists
|
|
3
|
-
distributionUrl=https\://services.gradle.org/distributions/gradle-8.
|
|
3
|
+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-bin.zip
|
|
4
4
|
networkTimeout=10000
|
|
5
5
|
validateDistributionUrl=true
|
|
6
6
|
zipStoreBase=GRADLE_USER_HOME
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
bundleGeneratedClasses=true
|
|
2
|
+
org.gradle.jvmargs=-Xmx6g -Xss512k -XX:+HeapDumpOnOutOfMemoryError -XX:+UseG1GC -XX:+UseStringDeduplication -XX:ReservedCodeCacheSize=512m -Dkotlin.daemon.jvm.options=-Xmx2g -Dfile.encoding=UTF-8
|
|
3
|
+
org.gradle.configuration-cache=true
|
|
4
|
+
enableDockerTasks=true
|
|
5
|
+
dockerCompactProcesses=true
|
|
6
|
+
genesisVersion={{ versions.GSF }}
|
|
7
|
+
authVersion={{ versions.Auth }}
|
|
8
|
+
|
|
9
|
+
# Default ssh config for the docker dev environment
|
|
10
|
+
genesis-home=/app/run
|
|
11
|
+
ssh-username=genesis
|
|
12
|
+
ssh-password=genesis
|
|
13
|
+
ssh-host=localhost
|
|
14
|
+
ssh-port=1337
|
|
15
|
+
|
|
16
|
+
enableDockerContainerTasks=true
|
|
@@ -145,7 +145,7 @@ if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
|
|
|
145
145
|
case $MAX_FD in #(
|
|
146
146
|
max*)
|
|
147
147
|
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
|
|
148
|
-
# shellcheck disable=
|
|
148
|
+
# shellcheck disable=SC3045
|
|
149
149
|
MAX_FD=$( ulimit -H -n ) ||
|
|
150
150
|
warn "Could not query maximum file descriptor limit"
|
|
151
151
|
esac
|
|
@@ -153,7 +153,7 @@ if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
|
|
|
153
153
|
'' | soft) :;; #(
|
|
154
154
|
*)
|
|
155
155
|
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
|
|
156
|
-
# shellcheck disable=
|
|
156
|
+
# shellcheck disable=SC3045
|
|
157
157
|
ulimit -n "$MAX_FD" ||
|
|
158
158
|
warn "Could not set maximum file descriptor limit to $MAX_FD"
|
|
159
159
|
esac
|
|
@@ -202,11 +202,11 @@ fi
|
|
|
202
202
|
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
|
203
203
|
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
|
|
204
204
|
|
|
205
|
-
# Collect all arguments for the java command
|
|
206
|
-
# * DEFAULT_JVM_OPTS, JAVA_OPTS,
|
|
207
|
-
# and
|
|
208
|
-
#
|
|
209
|
-
#
|
|
205
|
+
# Collect all arguments for the java command;
|
|
206
|
+
# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of
|
|
207
|
+
# shell script including quotes and variable substitutions, so put them in
|
|
208
|
+
# double quotes to make sure that they get re-expanded; and
|
|
209
|
+
# * put everything else in single quotes, so that it's not re-expanded.
|
|
210
210
|
|
|
211
211
|
set -- \
|
|
212
212
|
"-Dorg.gradle.appname=$APP_BASE_NAME" \
|
|
File without changes
|
|
@@ -1,29 +1,15 @@
|
|
|
1
1
|
rootProject.name = "genesisproduct-{{appName}}"
|
|
2
2
|
|
|
3
|
-
buildCache {
|
|
4
|
-
local {
|
|
5
|
-
directory = File(rootDir.parentFile.parent, "build-cache")
|
|
6
|
-
removeUnusedEntriesAfterDays = 30
|
|
7
|
-
isEnabled = true
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
|
|
11
3
|
pluginManagement {
|
|
12
4
|
pluginManagement {
|
|
13
5
|
val genesisVersion: String by settings
|
|
14
|
-
|
|
6
|
+
|
|
15
7
|
plugins {
|
|
16
|
-
id("global.genesis.
|
|
17
|
-
id("global.genesis.deploy") version deployPluginVersion
|
|
8
|
+
id("global.genesis.settings") version genesisVersion
|
|
18
9
|
}
|
|
19
10
|
}
|
|
11
|
+
|
|
20
12
|
repositories {
|
|
21
|
-
mavenLocal {
|
|
22
|
-
// VERY IMPORTANT!!! EXCLUDE AGRONA AS IT IS A POM DEPENDENCY AND DOES NOT PLAY NICELY WITH MAVEN LOCAL!
|
|
23
|
-
content {
|
|
24
|
-
excludeGroup("org.agrona")
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
13
|
mavenCentral()
|
|
28
14
|
gradlePluginPortal()
|
|
29
15
|
maven {
|
|
@@ -38,23 +24,30 @@ pluginManagement {
|
|
|
38
24
|
password = extra.properties["genesisArtifactoryPassword"].toString()
|
|
39
25
|
}
|
|
40
26
|
}
|
|
27
|
+
mavenLocal {
|
|
28
|
+
// VERY IMPORTANT!!! EXCLUDE AGRONA AS IT IS A POM DEPENDENCY AND DOES NOT PLAY NICELY WITH MAVEN LOCAL!
|
|
29
|
+
content {
|
|
30
|
+
excludeGroup("org.agrona")
|
|
31
|
+
}
|
|
32
|
+
}
|
|
41
33
|
}
|
|
42
34
|
}
|
|
43
35
|
|
|
36
|
+
plugins {
|
|
37
|
+
id("global.genesis.settings")
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
genesis {
|
|
41
|
+
dependencies {
|
|
42
|
+
dependency("global.genesis:auth:${extra.properties["authVersion"]}")
|
|
43
|
+
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
plugins {
|
|
47
|
+
genesisDeploy.enabled = {{ enableDeployPlugin }}
|
|
48
|
+
}
|
|
44
49
|
|
|
50
|
+
}
|
|
45
51
|
|
|
46
|
-
include("{{appName}}-config")
|
|
47
|
-
include("{{appName}}-messages")
|
|
48
|
-
include("{{appName}}-eventhandler")
|
|
49
|
-
include("{{appName}}-script-config")
|
|
50
|
-
include("{{appName}}-distribution")
|
|
51
|
-
include("{{appName}}-dictionary-cache")
|
|
52
|
-
include("{{appName}}-dictionary-cache:{{appName}}-generated-sysdef")
|
|
53
|
-
include("{{appName}}-dictionary-cache:{{appName}}-generated-fields")
|
|
54
|
-
include("{{appName}}-dictionary-cache:{{appName}}-generated-dao")
|
|
55
|
-
include("{{appName}}-dictionary-cache:{{appName}}-generated-hft")
|
|
56
|
-
include("{{appName}}-dictionary-cache:{{appName}}-generated-view")
|
|
57
|
-
include("{{appName}}-deploy")
|
|
58
|
-
include("{{appName}}-site-specific")
|
|
59
52
|
|
|
60
|
-
|
|
53
|
+
include("{{appName}}-app")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
dependencies {
|
|
2
|
+
compileOnly(genesis("script-dependencies"))
|
|
3
|
+
genesisGeneratedCode(withTestDependency = true)
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
description = "{{appName}}-app"
|
|
7
|
+
|
|
8
|
+
sourceSets {
|
|
9
|
+
main {
|
|
10
|
+
resources {
|
|
11
|
+
srcDirs("src/main/resources", "src/main/genesis")
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
tasks {
|
|
17
|
+
copyDependencies {
|
|
18
|
+
enabled = false
|
|
19
|
+
}
|
|
20
|
+
}
|
|
@@ -1,22 +1,19 @@
|
|
|
1
|
-
package genesis.cfg
|
|
2
|
-
|
|
3
1
|
systemDefinition {
|
|
4
2
|
global {
|
|
5
|
-
item(name = "DEPLOYED_PRODUCT", value = "{{appName}}")
|
|
6
|
-
item(name = "MqLayer", value = "ZeroMQ")
|
|
7
|
-
{{#if useDocker}}
|
|
8
3
|
item(name = "DbLayer", value = "SQL")
|
|
9
|
-
item(name = "DbHost", value = "jdbc:postgresql://localhost:5432/?user=postgres&password=
|
|
10
|
-
{{
|
|
11
|
-
item(name = "
|
|
12
|
-
|
|
13
|
-
{{/if}}
|
|
4
|
+
item(name = "DbHost", value = "jdbc:postgresql://localhost:5432/?user=postgres&password=docker")
|
|
5
|
+
item(name = "DEPLOYED_PRODUCT", value = "{{appName}}")
|
|
6
|
+
item(name = "MqLayer", value = env["MQ_LAYER", "ZeroMQ"])
|
|
7
|
+
|
|
14
8
|
item(name = "DictionarySource", value = "DB")
|
|
15
9
|
item(name = "AliasSource", value = "DB")
|
|
16
10
|
item(name = "HookStateStore", value = "DB")
|
|
17
11
|
item(name = "MetricsEnabled", value = "false")
|
|
18
12
|
item(name = "ZeroMQProxyInboundPort", value = "5001")
|
|
19
13
|
item(name = "ZeroMQProxyOutboundPort", value = "5000")
|
|
14
|
+
env["DB_USERNAME"].takeIf { it.isNotBlank() }?.let { item(name = "DbUsername", value = it) }
|
|
15
|
+
env["DB_PASSWORD"].takeIf { it.isNotBlank() }?.let { item(name = "DbPassword", value = it) }
|
|
16
|
+
env["DB_SQL_CONNECTION_POOL_SIZE"].takeIf { it.isNotBlank() }?.let { item(name = "DbSqlConnectionPoolSize", value = it) }
|
|
20
17
|
item(name = "DbMode", value = "VANILLA")
|
|
21
18
|
item(name = "GenesisNetProtocol", value = "V2")
|
|
22
19
|
item(name = "ResourcePollerTimeout", value = "5")
|
|
@@ -25,11 +22,11 @@ systemDefinition {
|
|
|
25
22
|
item(name = "MetadataChronicleMapAverageValueSizeBytes", value = "1024")
|
|
26
23
|
item(name = "MetadataChronicleMapEntriesCount", value = "512")
|
|
27
24
|
item(name = "DaemonServerPort", value = "4568")
|
|
25
|
+
item(name = "DaemonHealthPort", value = "4569")
|
|
28
26
|
item(
|
|
29
27
|
name = "JVM_OPTIONS",
|
|
30
28
|
value = "-XX:MaxHeapFreeRatio=70 -XX:MinHeapFreeRatio=30 -XX:+UseG1GC -XX:+UseStringDeduplication -XX:OnOutOfMemoryError=\"handleOutOfMemoryError.sh %p\""
|
|
31
29
|
)
|
|
32
|
-
item(name = "DaemonHealthPort", value = "4569")
|
|
33
30
|
}
|
|
34
31
|
|
|
35
32
|
systems {
|