Chained transformers are now working and have been merged to wildfly-core. So they should
be usable from the next wildfly-core release.
I have documented the changes to chained transformers and the test framework in the Domain
Mode Subsystem Transformers document:
* You no longer need to generate the .dmr files for new subsystem versions:
[Testing a configuration that works] (The last paragraph or so)
* Chained transformers
Then I have updated the [Evolving transformers with subsystem ModelVersions] section to
document the chained transformers at: [Chained transformers]. This section also contains
the system properties needed to run the ‘legacy’ tests which do not get run by default.
[Testing a configuration that works] -
On 7 Jul 2014, at 19:59, Brian Stansberry <brian.stansberry(a)redhat.com> wrote:
On 7/7/14, 1:25 PM, Kabir Khan wrote:
> I am looking at adding chained transformers to the core model transformers, i.e.
DomainTransformers and the classes it uses. However, I’d like to get an extra eye on the
sequence of versions in the chains used.
>
>
https://github.com/wildfly/wildfly-core/blob/master/host-controller/src/m...
contains the following versions and comments:
>
> //AS 7.1.2.Final / EAP 6.0.0
> private static final ModelVersion VERSION_1_2 = ModelVersion.create(1, 2, 0);
> //AS 7.1.3.Final / EAP 6.0.1
> private static final ModelVersion VERSION_1_3 = ModelVersion.create(1, 3, 0);
> //AS 7.2.0.Final / EAP 6.1.0 / EAP 6.1.1
> private static final ModelVersion VERSION_1_4 = ModelVersion.create(1, 4, 0);
> // EAP 6.2.0
> private static final ModelVersion VERSION_1_5 = ModelVersion.create(1, 5, 0);
> // EAP 6.3.0
> private static final ModelVersion VERSION_1_6 = ModelVersion.create(1, 6, 0);
> //WF 8.0.0.Final
> private static final ModelVersion VERSION_2_0 = ModelVersion.create(2, 0, 0);
> //WF 8.1.0.Final
> private static final ModelVersion VERSION_2_1 = ModelVersion.create(2, 1, 0);
>
> Since some features were introduced in 1.6.0 and 1.5.0 for EAP which also exist in
2.0.0 (and probably 2.1.0) I guess that the chains should be:
> * For WildFly: 3.0.0->2.1.0->2.0.0
> * For JBoss EAP and AS 7 releases:
3.0.0->1.6.0->1.5.0->1.4.0->1.3.0->1.2.0
>
Yes.
> To get good coverage of my refactoring, and of the chained transformers themselves, I
am also reintroducing the core-model-test 7.1.2 test controller again. Once I am done with
the chained transformers, I will look at pulling the legacy test controllers for both
core-model-test and subsystem-test out into their own repository. That way they can be
kept around without polluting the codebase. This should end the days of having 3 versions
of WildFly/AS7 classes appear in the IDE classpath, which is annoying when you want to
look up a class by name.
>
:)
> On 7 Jul 2014, at 18:24, Brian Stansberry <brian.stansberry(a)redhat.com> wrote:
>
>> Thanks for all this, Kabir.
>>
>> On 7/7/14, 5:43 AM, Kabir Khan wrote:
>>> This has been merged to wildfly-core.
>>> To test the transformers against 7.1.x and EAP 6.0.x use
-Djboss.test.transformers.subsystem.old.
>>> To get the EAP ones you will also need -Djboss.test.transformers.eap, as
usual.
>>>
>>> On 6 Jul 2014, at 12:22, Kabir Khan <kabir.khan(a)jboss.com> wrote:
>>>
>>>> On 6 Jul 2014, at 11:45, Kabir Khan <kabir.khan(a)jboss.com> wrote:
>>>>
>>>>>
https://github.com/wildfly/wildfly-core/pull/10 enables this and also
gets rid of all the .dmr files used by the subsystem tests. The tests will now simply
generate these on demand.
>>>>>
>>>>> All tests in core pass with this (also for 7.1.x when enabled). In
wildfly everything passes when running the tests, although there are some issues in the
following subsystems when running against 7.1.x
>>>>> * jgroups - needs a touched up .dmr file for 7.1.x, I have s commit
>>>> s/s commit/a commit
>>>>> * infinispan - something goes wrong in the
>>>> … 7.1.x tests, I’ve not looked into it
>>>>> * messaging - although not a 7.1.x issue, the PR enables testing
against WF 8 as well. However, the messaging extension uses some methods which are no
longer available in WF 9. This could be fixed by adding a test-controller-8_0_0.
>>>>>
>>>>> These problems are probably not too important to spend a lot of time
on at this stage, since they do not occur when running against the versions enabled by
default. The point of allowing the 7.1.x testing again is to get better coverage while
converting the chained transformer stuff so that I can work through problems while I
remember how this works, rather than in many month’s time.
>>>>>
>>>>> On 5 Jul 2014, at 10:57, Kabir Khan <kabir.khan(a)jboss.com>
wrote:
>>>>>
>>>>>> I’ve got the chained transformers mostly working in its own
tests, but have some issues to iron out when using them for real, which is not picked up
by the tests I wrote. Currently I am trying to convert the jmx subsystem, and think I will
also do the other ones in wildfly-core (remoting and logging).
>>>>>>
>>>>>> Since we have disabled transformer testing against WildFly 8, and
AS 7.1.x, there isn’t actually much of a chain to test at the moment. To get better
coverage of what I have done in real subsystem scenarios, I would like to temporarily
reinstate the test controller for 7.1.x, and to use a system property to enable running of
tests against 7.1.x and WildFly 8 unless someone has some strong objections. If people
start converting to use chained transformers, since the 7.1.x tests already exist, I think
this will be valuable validation of what they are doing.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> wildfly-dev mailing list
>>>>>> wildfly-dev(a)lists.jboss.org
>>>>>>
https://lists.jboss.org/mailman/listinfo/wildfly-dev
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> wildfly-dev mailing list
>>>>> wildfly-dev(a)lists.jboss.org
>>>>>
https://lists.jboss.org/mailman/listinfo/wildfly-dev
>>>>
>>>>
>>>> _______________________________________________
>>>> wildfly-dev mailing list
>>>> wildfly-dev(a)lists.jboss.org
>>>>
https://lists.jboss.org/mailman/listinfo/wildfly-dev
>>>
>>>
>>> _______________________________________________
>>> wildfly-dev mailing list
>>> wildfly-dev(a)lists.jboss.org
>>>
https://lists.jboss.org/mailman/listinfo/wildfly-dev
>>>
>>
>>
>> --
>> Brian Stansberry
>> Senior Principal Software Engineer
>> JBoss by Red Hat
>> _______________________________________________
>> wildfly-dev mailing list
>> wildfly-dev(a)lists.jboss.org
>>
https://lists.jboss.org/mailman/listinfo/wildfly-dev
>
--
Brian Stansberry
Senior Principal Software Engineer
JBoss by Red Hat
_______________________________________________
wildfly-dev mailing list
wildfly-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/wildfly-dev