[wildfly-dev] WildFly 8 subsystem transformers for 7.2.0 slaves

Kabir Khan kabir.khan at jboss.com
Mon Oct 7 07:54:29 EDT 2013


I've created linked JIRAs under WFLY-2218 for subsystems that have changed since 7.2.0. Please note that https://github.com/wildfly/wildfly/pull/5213 will need to be merged before you can work on those. Alternatively base your work on that branch.
On 4 Oct 2013, at 14:20, Kabir Khan wrote:

> Hi all,
> 
> We are late enough in the WildFly 8 release cycle that we need to start thinking about transformers against 7.2.0 slaves. I have opened https://issues.jboss.org/browse/WFLY-2218 scheduled for 8.0.0.CR1 (currently major, but should probably be a blocker), and will open sub-tasks for subsystems that need transformation for 7.2.0 over the next few days. The blurb from the Jira issue:
> 
> We have not tested the majority of subsystem transformers against AS 7.2.0. I have attempted to document why we need subsystem transformation here, and also how to use the framework: https://docs.jboss.org/author/display/WFLY8/Domain+Mode+Subsystem+https://docs.jboss.org/author/display/WFLY8/Domain+Mode+Subsystem+Transformers. This document is WIP, and I will be updating it a bit more over the next few days.
> 
> https://gist.github.com/kabir/6825607 contains the difference of a running WildFly instance against AS 7.2.0 in domain mode (for subsystems you don't really need to bother about this one)
> 
> https://gist.github.com/kabir/6825559 contains the difference of a running WildFly instance against AS 7.2.0 in standalone mode, here you can see what has changed in the subsystems.
> 
> When creating a new subsystem transformers test against 7.2.0, you will need the resource definition for the ModelVersion your subsystem uses in 7.2.0. If this is not found, you need to add a test to your subsystem, which you can delete once you have the .dmr file containing the resource defintion. Here is what I did to generate the file for JMX
>    @Test
>    public void deleteMeWhenDone() throws Exception {
>        ModelTestControllerVersion controllerVersion = ModelTestControllerVersion.V7_2_0_FINAL;
>        ModelVersion modelVersion = ModelVersion.create(1, 1, 0); //Whatever version of your subsystem 7.2.0.Final has
>        KernelServicesBuilder builder = createKernelServicesBuilder(null);
> 
>        builder.createLegacyKernelServicesBuilder(null, controllerVersion, modelVersion)
>            .addMavenResourceURL("org.jboss.as:jboss-as-jmx:" + controllerVersion.getMavenGavVersion());
>        KernelServices services = builder.build();
> 
>        generateLegacySubsystemResourceRegistrationDmr(services, modelVersion);
>    }
> Now run the test and delete it. The legacy .dmr file should be in target/test-classes/org/jboss/as/subsystem/test/<your-subsystem-name>-<your-version>.dmr. Copy this .dmr file to subsystem-test/framework/src/main/resources/org/jboss/as/subsystem/test.
> 
> You will likely also need to update org.jboss.as.subsystem.test.KnownVersions to include your latest subsystem version, once you start doing real testing.
> 
> Bear in mind that if you need to add some transformation to 7.2.0 due to some new feature in WildFly 8, you will probably also need to add the same transformation to 7.1.x as well!
> -------
> 
> Thanks to Richard Achamatowicz for 'forcing me' to write the mentioned document ;-) It explains a fair bit of background of why transformation is needed, and serves as a reference for the APIs. I hope to find the time to update it to include a more use-case oriented section as well.
> 
> Cheers,
> 
> Kabir
> _______________________________________________
> wildfly-dev mailing list
> wildfly-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/wildfly-dev




More information about the wildfly-dev mailing list