Skip to content

hal/foundation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

HAL Foundation

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.

Technical Stack

halOP (HAL On Premise)

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.

Development

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 op

and wait until you see the message

[INFO] -----  Build Complete: ready for browser refresh  -----

In another shell run

cd op/console
npm run watch

This will open a browser at http://localhost:1234.

Standalone

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.

Java

To build halOP as a standalone Java application, run

mvn install -P op,prod

This 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.jar

and open a browser at http://localhost:9090.

Native

To build the native binary of halOP, run

mvn install -P op,prod,native -Dquarkus.native.container-build=false

Please 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-*

Container

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-op

to start it and open a browser at http://localhost:9090.

Customization

If you want to customize the port of halOP (Java-based and native), please use -Dquarkus.http.port=<port> to change the port.

halOS (HAL on OpenShift)

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!

Contributing

This is an open source project. That means that everybody can contribute. It's not hard to get started. So start contributing today!

Licenses

This project uses the following licenses:

About

Foundation for the next major HAL version and halOS

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Contributors 3

  •  
  •  
  •