@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.
Files changed (89) hide show
  1. package/.genx/package.json +1 -1
  2. package/.genx/prompts/server.js +10 -1
  3. package/.genx/prompts.js +2 -1
  4. package/.genx/tests/fixtures/testapp/docker-compose.yml +1 -1
  5. package/.genx/tests/fixtures/testapp/server/{jvm/testapp-config/src/main/resources → testapp-app/src/main/genesis}/cfg/testapp-processes.xml +1 -1
  6. package/.genx/versions.json +3 -3
  7. package/.github/CODEOWNERS +1 -1
  8. package/.github/workflows/build.yml +2 -3
  9. package/.gitignore +3 -6
  10. package/.releaserc +1 -1
  11. package/CHANGELOG.md +18 -0
  12. package/README.md +2 -2
  13. package/build.gradle.kts +1 -1
  14. package/client/package.json +6 -2
  15. package/docker-compose.yml +1 -11
  16. package/gradle/wrapper/gradle-wrapper.properties +1 -1
  17. package/gradle.properties +1 -0
  18. package/gradlew +7 -7
  19. package/gradlew.bat +0 -0
  20. package/package.json +1 -1
  21. package/server/README.md +13 -0
  22. package/server/{jvm/build.gradle.kts → build.gradle.kts} +1 -14
  23. package/server/{jvm/gradle → gradle}/wrapper/gradle-wrapper.properties +1 -1
  24. package/server/gradle.properties +16 -0
  25. package/server/{jvm/gradlew → gradlew} +7 -7
  26. package/server/{jvm/gradlew.bat → gradlew.bat} +0 -0
  27. package/server/{jvm/settings.gradle.kts → settings.gradle.kts} +24 -31
  28. package/server/{{appName}}-app/build.gradle.kts +20 -0
  29. package/server/{jvm/{{appName}}-site-specific/src/main/resources → {{appName}}-app/src/main/genesis}/cfg/genesis-system-definition.kts +8 -11
  30. package/server/{{appName}}-app/src/main/genesis/cfg/{{appName}}-processes.xml +93 -0
  31. package/server/{{appName}}-app/src/main/genesis/cfg/{{appName}}-service-definitions.xml +23 -0
  32. package/server/{{appName}}-app/src/main/genesis/scripts/{{appName}}-consolidator.kts +19 -0
  33. package/server/{{appName}}-app/src/main/genesis/scripts/{{appName}}-data-pipeline.kts +19 -0
  34. package/server/{{appName}}-app/src/main/genesis/scripts/{{appName}}-dataserver.kts +19 -0
  35. package/server/{{appName}}-app/src/main/genesis/scripts/{{appName}}-eventhandler.kts +19 -0
  36. package/server/{{appName}}-app/src/main/genesis/scripts/{{appName}}-reqrep.kts +19 -0
  37. package/server/{{appName}}-app/src/main/genesis/scripts/{{appName}}-streamer-client.kts +19 -0
  38. package/server/{{appName}}-app/src/main/genesis/scripts/{{appName}}-streamer.kts +19 -0
  39. package/settings.gradle.kts +1 -31
  40. package/server/jvm/README.md +0 -27
  41. package/server/jvm/docker-scripts/configureDB.sh +0 -12
  42. package/server/jvm/docker-scripts/docker-entrypoint.sh +0 -7
  43. package/server/jvm/docker-scripts/genesisInstall.sh +0 -5
  44. package/server/jvm/docker-scripts/remap.sh +0 -23
  45. package/server/jvm/gradle.properties +0 -10
  46. package/server/jvm/{{appName}}-config/build.gradle.kts +0 -8
  47. package/server/jvm/{{appName}}-config/src/main/kotlin/donotdelete.txt +0 -1
  48. package/server/jvm/{{appName}}-config/src/main/resources/cfg/{{appName}}-processes.xml +0 -15
  49. package/server/jvm/{{appName}}-config/src/main/resources/cfg/{{appName}}-service-definitions.xml +0 -15
  50. package/server/jvm/{{appName}}-deploy/build.gradle.kts +0 -35
  51. package/server/jvm/{{appName}}-dictionary-cache/build.gradle.kts +0 -13
  52. package/server/jvm/{{appName}}-dictionary-cache/{{appName}}-generated-dao/build.gradle.kts +0 -1
  53. package/server/jvm/{{appName}}-dictionary-cache/{{appName}}-generated-fields/build.gradle.kts +0 -1
  54. package/server/jvm/{{appName}}-dictionary-cache/{{appName}}-generated-hft/build.gradle.kts +0 -1
  55. package/server/jvm/{{appName}}-dictionary-cache/{{appName}}-generated-sysdef/build.gradle.kts +0 -1
  56. package/server/jvm/{{appName}}-dictionary-cache/{{appName}}-generated-view/build.gradle.kts +0 -1
  57. package/server/jvm/{{appName}}-distribution/build.gradle.kts +0 -97
  58. package/server/jvm/{{appName}}-eventhandler/build.gradle.kts +0 -13
  59. package/server/jvm/{{appName}}-messages/build.gradle.kts +0 -6
  60. package/server/jvm/{{appName}}-messages/src/main/kotlin/global/genesis/message/common/readme.md +0 -1
  61. package/server/jvm/{{appName}}-messages/src/main/kotlin/global/genesis/message/event/readme.md +0 -1
  62. package/server/jvm/{{appName}}-messages/src/main/kotlin/global/genesis/message/request/readme.md +0 -1
  63. package/server/jvm/{{appName}}-messages/src/main/resources/META-INF/global/genesis/message/product-info +0 -1
  64. package/server/jvm/{{appName}}-script-config/build.gradle.kts +0 -16
  65. package/server/jvm/{{appName}}-script-config/src/main/kotlin/donotdelete.txt +0 -1
  66. package/server/jvm/{{appName}}-script-config/src/main/resources/scripts/{{appName}}-dataserver.kts +0 -13
  67. package/server/jvm/{{appName}}-script-config/src/main/resources/scripts/{{appName}}-eventhandler.kts +0 -13
  68. package/server/jvm/{{appName}}-script-config/src/main/resources/scripts/{{appName}}-reqrep.kts +0 -13
  69. package/server/jvm/{{appName}}-script-config/src/test/kotlin/GenesisTestSupportTest.kt +0 -23
  70. package/server/jvm/{{appName}}-script-config/src/test/resources/GenesisHome/donotdelete.txt +0 -0
  71. package/server/jvm/{{appName}}-site-specific/README.md +0 -3
  72. package/server/jvm/{{appName}}-site-specific/build.gradle.kts +0 -114
  73. package/server/jvm/{{appName}}-site-specific/src/main/kotlin/donotdelete.txt +0 -1
  74. package/server/nginx/Dockerfile +0 -5
  75. package/server/nginx/cert.crt +0 -20
  76. package/server/nginx/cert.key +0 -27
  77. package/server/nginx/default.conf +0 -40
  78. /package/.genx/tests/fixtures/testapp/server/{jvm/testapp-config/src/main/resources → testapp-app/src/main/genesis}/cfg/testapp-fields-dictionary.kts +0 -0
  79. /package/.genx/tests/fixtures/testapp/server/{jvm/testapp-config/src/main/resources → testapp-app/src/main/genesis}/cfg/testapp-service-definitions.xml +0 -0
  80. /package/.genx/tests/fixtures/testapp/server/{jvm/testapp-config/src/main/resources → testapp-app/src/main/genesis}/cfg/testapp-tables-dictionary.kts +0 -0
  81. /package/.genx/tests/fixtures/testapp/server/{jvm/testapp-script-config/src/main/resources → testapp-app/src/main/genesis}/scripts/testapp-dataserver.kts +0 -0
  82. /package/.genx/tests/fixtures/testapp/server/{jvm/testapp-script-config/src/main/resources → testapp-app/src/main/genesis}/scripts/testapp-eventhandler.kts +0 -0
  83. /package/server/{jvm/gradle → gradle}/wrapper/gradle-wrapper.jar +0 -0
  84. /package/server/{jvm/{{appName}}-config/src/main/resources → {{appName}}-app/src/main/genesis}/cfg/{{appName}}-fields-dictionary.kts +0 -0
  85. /package/server/{jvm/{{appName}}-config/src/main/resources → {{appName}}-app/src/main/genesis}/cfg/{{appName}}-system-definition.kts +0 -0
  86. /package/server/{jvm/{{appName}}-config/src/main/resources → {{appName}}-app/src/main/genesis}/cfg/{{appName}}-tables-dictionary.kts +0 -0
  87. /package/server/{jvm/{{appName}}-config/src/main/resources → {{appName}}-app/src/main/genesis}/cfg/{{appName}}-view-dictionary.kts +0 -0
  88. /package/server/{jvm/{{appName}}-site-specific/src/main/resources/data/user.csv → {{appName}}-app/src/main/genesis/data/USER.csv} +0 -0
  89. /package/server/{jvm/{{appName}}-eventhandler/src/test/resources/GenesisHome/donotdelete.txt → {{appName}}-app/src/main/kotlin/.gitkeep} +0 -0
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@genesislcap/blank-app-seed-config",
3
3
  "description": "Genesis Blank App Seed Configuration",
4
- "version": "1.5.5",
4
+ "version": "2.0.1",
5
5
  "license": "Apache-2.0",
6
6
  "genxSeedConfig": {
7
7
  "exclude": [
@@ -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
  };
@@ -4,7 +4,7 @@ services:
4
4
  tty: true
5
5
  container_name: gsf
6
6
  build:
7
- context: server/jvm/testapp-deploy/build/docker/
7
+ context: server/testapp-app/build/docker/
8
8
  dockerfile: Dockerfile
9
9
  networks:
10
10
  qs_network:
@@ -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-messages*,testapp-eventhandler*</classpath>
33
+ <classpath>testapp-app*</classpath>
34
34
  <language>pal</language>
35
35
  </process>
36
36
  </processes>
@@ -1,5 +1,5 @@
1
1
  {
2
- "UI": "14.137.1",
3
- "GSF": "7.0.7",
4
- "Auth": "7.0.1"
2
+ "UI": "14.148.0",
3
+ "GSF": "7.1.7",
4
+ "Auth": "7.1.3"
5
5
  }
@@ -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 :genesisproduct-testapp:testapp-deploy:createDockerfile
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
@@ -73,4 +73,4 @@
73
73
  }
74
74
  ]
75
75
  ]
76
- }
76
+ }
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/jvm** and **client** directories which contain the server and client code respectively.
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/jvm/README.md).
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
@@ -12,4 +12,4 @@ tasks {
12
12
  }
13
13
  }
14
14
  }
15
- }
15
+ }
@@ -68,12 +68,16 @@
68
68
  },
69
69
  "prettier": "@genesislcap/prettier-config",
70
70
  "devDependencies": {
71
- "@genesiscommunitysuccess/cep-fast-plugin": "4.1.1",
72
- "@genesiscommunitysuccess/custom-elements-lsp": "4.1.1",
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",
@@ -4,7 +4,7 @@ services:
4
4
  tty: true
5
5
  container_name: gsf
6
6
  build:
7
- context: server/jvm/{{appName}}-deploy/build/docker/
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.4-bin.zip
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=SC2039,SC3045
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=SC2039,SC3045
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, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
207
- # and any embedded shellness will be escaped.
208
- # * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
209
- # treated as '${Hostname}' itself on the command line.
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
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@genesislcap/blank-app-seed",
3
3
  "description": "Genesis Blank App Seed",
4
- "version": "1.5.5",
4
+ "version": "2.0.1",
5
5
  "license": "Apache-2.0",
6
6
  "scripts": {
7
7
  "release": "semantic-release"
@@ -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.4-bin.zip
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=SC2039,SC3045
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=SC2039,SC3045
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, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
207
- # and any embedded shellness will be escaped.
208
- # * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
209
- # treated as '${Hostname}' itself on the command line.
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
- val deployPluginVersion: String by settings
6
+
15
7
  plugins {
16
- id("global.genesis.build") version genesisVersion
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
- includeBuild("../../client")
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=postgres")
10
- {{else}}
11
- item(name = "DbLayer", value = "FDB")
12
- item(name = "DbHost", value = "localhost")
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 {