70 lines
2.9 KiB
Markdown
70 lines
2.9 KiB
Markdown
# Module artifact 'com_r35157_nenjim-hubd-impl-ref'
|
|
Artifact description comes here
|
|
|
|
## Project setup
|
|
This module was initially created with the following command:
|
|
```bash
|
|
/usr/local/software/bin/module_setup -V -g com.r35157.nenjim -t libjdk -n hubd
|
|
(Script version: 0.0.2.4)
|
|
```
|
|
|
|
## Usage
|
|
Explain how to use this module
|
|
|
|
## Configuration format versions
|
|
|
|
Every application-owned, human-maintained runtime configuration file starts
|
|
with an explicit format version:
|
|
|
|
```text
|
|
FORMAT_VERSION=<version supported by that file's loader>
|
|
```
|
|
|
|
Blank lines and full-line comments may precede the declaration, but it must be
|
|
the first actual configuration entry. Loading fails before any other content
|
|
is parsed when the declaration is missing, duplicated, malformed, misplaced,
|
|
or different from the version supported by the corresponding loader.
|
|
|
|
Versions are independent for each configuration format. A breaking change to
|
|
one format, such as `alarms.conf`, does not change any other format's version.
|
|
When a breaking format change is made, update both the loader's hardcoded
|
|
`SUPPORTED_FORMAT_VERSION` and the declaration in the runtime and example
|
|
configuration files. Compatible additions do not require a version increment.
|
|
|
|
This policy currently applies to:
|
|
|
|
- `NenjimHub.conf` (mandatory version 1 with ordered `[AUTO_START]`)
|
|
- `alarms.conf`
|
|
- `alarmaction_Console.conf`
|
|
- `alarmaction_Pushover.conf`
|
|
- `alarmaction_JupiterPerpsPositionIncreaseAlarmAction.conf`
|
|
- `alarmaction_JupiterPerpsPositionDecreaseAlarmAction.conf`
|
|
- `evelyn.conf`
|
|
- `positions.conf`
|
|
|
|
Third-party configuration formats such as Log4j's XML configuration are
|
|
versioned by their owning library and do not use this declaration.
|
|
|
|
Nenjim Hub reads only `conf/NenjimHub.conf`; copy
|
|
`conf/NenjimHub.conf.example` before first use and edit the ordered process
|
|
list for the deployment role. The example is never loaded as runtime input.
|
|
|
|
The Evelyn status processes use `evelyn.status.prod` and `evelyn.status.test`.
|
|
When upgrading an existing deployment, replace `evelyn.service.prod` and
|
|
`evelyn.service.test` with those IDs in private `conf/NenjimHub.conf`, preserving
|
|
their order and enabled/commented selections. The instance names `Production`
|
|
and `Test`, their `data/evelyn/<instance-name>/status.log` files, and history
|
|
format version 1 remain unchanged.
|
|
|
|
`com.r35157.evelyn.service.status.EvelynStatusService` exposes immutable status
|
|
history and `AssetPrice getReferencePrice(Instant timestamp)`. The reference
|
|
price is calculated on demand for the supplied instant and carries the canonical
|
|
EVE/USDT trading pair. It works before startup and while sampling is stopped,
|
|
without accessing Ticker or history storage. See [Evelyn](docs/Evelyn.md) for the
|
|
curve and service contract.
|
|
|
|
## Release log:
|
|
| Date | Version | Description |
|
|
|:-----------------|:--------------:|----------------------|
|
|
| 2025/12/26 | v0.0.0 | First dummy release |
|