We tried to use fileSet/fileMode to make the OpenSearch config
permissions work when running OpenSearch with a different user.
That didn't work because the fileMode changed all files and removed the
executable bit from all executable scripts.
Now we use the Maven antrun plugin to set the permissions on the
OpenSearch files right after extraction.
* Refactor data-node download and assembly
- Download OpenSearch aarch64 distribution in addition to x64
- Extract OpenSearch distribution into "target/opensearch/*" instead of
"bin/download".
- Include OpenSearch distributions in "dist/" instead of "bin/" in
assembly
* Fix data-node test container creation
* Adjust OpenSearch location for architecture dependent locations
* If the configured location exists, use it
Otherwise, check for architecture dependent distribution directories.
* Switch default config file to locations that work with the tarball
* Rename datanode.jar to graylog-datanode.jar
* Rename datanodectl to graylog-datanode.sh
* Include graylog-datanode.sh in assembly as bin/graylog-datanode
* Add a jvm.options config file
* Add a production log4j2.xml config file
* Use bundled JVM if it exists
* fixed docker image for datanode integration tests
---------
Co-authored-by: Tomas Dvorak <tomas.dvorak@graylog.com>
* Datanode periodical for NodeService pings
* node service markAsAlive update without additional query
* added unit test for NodePingPeriodical
* code cleanup
* simplified NodePingPeriodicalTest