Getting Started for Developers
WildFly Elytron is the main project that contains the security APIs, SPIs, and implementations of various components that are used across the WildFly application server. Although Elytron was developed for WildFly, it is possible to use Elytron outside of WildFly.
This is the core of the WildFly application server and the initial place where we integrate Elytron with WildFly.
This is the main application server project. Integration related to Elytron can also be found here.
This is the integration project for integrating Elytron based HTTP authentication with web containers and clients.
This project provides OpenSSL bindings for Java, attempting to use existing JSSE APIs as much as possible.
When starting on a new Elytron feature, we prepare an analysis document and submit a PR against the WildFly Proposals repository to get feedback on the new feature.
For an introduction to Elytron, take a look at this presentation which also includes a few demos.
Another great way to learn more about Elytron is to take a look at our blog posts on various Elytron features.
Questions on Elytron are always welcome in WildFly’s user forums.
You will need:
For instructions that will walk you through installing Java, Maven, and Git for your operating system and show you how to fork and clone the WildFly Elytron project, take a look at our setup guides.
Fork wildfly-elytron, wildfly-core, and wildfly to your GitHub account and clone your newly forked repositories into your local workspace. Then, for each repository, add a remote ref to upstream, for pulling future updates. For example:
git remote add upstream https://github.com/wildfly-security/wildfly-elytron
cd to the appropriate directory and then run:
mvn clean install
To skip the tests, use:
mvn clean install -DskipTests=true
To run only a specific test, use:
mvn clean install -Dtest=TestClassName
If you have made a change in Elytron and need to test out the change in WildFly, the following steps can be used to build a version of WildFly that incorporates your Elytron changes:
version.org.wildfly.security.elytronproperty in the
wildfly-core/pom.xmlfile to reference your locally built
version.org.wildfly.coreproperty in the
wildfly/pom.xmlfile to reference your locally built
|Refer to the building section in the WildFly OpenSSL repository to get more information about building the native code.|
Before submitting a PR, it is important to make sure the appropriate test suites pass with your changes.
wildfly-elytron, all tests will be run when executing
mvn clean install.
wildfly, the following command can be used to run the full test suite:
mvn clean install -DallTests -fae > alltests.txt