This repository contains the foundation for the next major version of the HAL management console (halOP) and the upcoming OpenShift version (halOS). To distinguish between the two editions, we introduce the following names:
- halOP: HAL on premise
- halOS: HAL on OpenShift
The work is in a very early state and very much in progress.
This edition is the successor of the current HAL management console. It is shipped with WildFly or can be run as a standalone application to connect to arbitrary WildFly instances.
In the development mode, the Java code is transpiled to JavaScript using J2CL. The HTML and CSS are transpiled to JavaScript using Parcel. Changes to HTML and CSS will be detected by Parcel, and the browser reloads the page automatically. Changes to the Java code will be detected by the J2CL Maven plugin, but you need to reload the browser manually.
To start halOP in development mode, run
mvn j2cl:watch -P opand wait until you see the message
[INFO] ----- Build Complete: ready for browser refresh -----
In another shell run
cd op/console
npm run watchThis will open a browser at http://localhost:1234.
halOP can run on its own. In this mode halOP starts a local web server and serves the console on its own without being part of a WildFly installation. halOP is “just” a single-page application (SPA) without any server side dependencies. The only requirement is a management interface of a running WIldFly instance.
To build halOP as a standalone Java application, run
mvn install -P op,prodThis will package the transpiled HTML, CSS and JavaScript resources into a Quarkus-based HTTP server. To start it, run
java -jar op/standalone/target/quarkus-app/quarkus-run.jarand open a browser at http://localhost:9090.
To build the native binary of halOP, run
mvn install -P op,prod,native -Dquarkus.native.container-build=falsePlease make sure that you have a recent version of GraalVM installed. See https://quarkus.io/guides/building-native-image#configuring-graalvm for details.
Native binaries for Linux, macOS and Windows are also attached to every release. Download the binary for your platform, make it executable and run it. Then open a browser at http://localhost:9090.
To make the binary executable, you might need to run something like this:
chmod +x hal-op-*
xattr -d com.apple.quarantine hal-op-*halOP is also available as a container image at https://quay.io/repository/halconsole/hal-op. Use
podman run -it -p 9090:9090 quay.io/halconsole/hal-opto start it and open a browser at http://localhost:9090.
If you want to customize the port of halOP (Java-based and native), please use -Dquarkus.http.port=<port> to change the port.
This version of HAL integrates with the OpenShift console. It can be used to manage WildFly insstances running on OpenShift.
halOS is not yet implemented!
This is an open source project. That means that everybody can contribute. It's not hard to get started. So start contributing today!
This project uses the following licenses: