Rechercher

Ce contenu n'est pas disponible dans la langue sélectionnée.

Chapter 5. MTA 7-0-0

download PDF

5.1. New features

This section describes the new features and improvements of the Migration Toolkit for Applications (MTA) 7.0.0.

Enhanced assessment module with custom questionnaire

In MTA 7.0.0, the assessment module has been enhanced. The assessment module in this release allows you to import questionnaires using a custom YAML syntax for questionnaire definition.

Grouping applications for assessment into archetypes

In MTA 7.0.0, you can assess and analyze entire groups of applications or archetypes, according to common characteristics.

Application archetypes are defined according to criteria tags and application taxonomy. Each archetype selects how the applications are assessed according to its characteristics.

Unlink applications from JIRA

In MTA 7.0.0, you now have the ability to unlink an application from a Jira ticket, so that you can manage the links between applications and tickets more effectively. To unlink an application from a Jira ticket, click the Unlink from Jira icon in the details view of the application or in the details view of a Migration wave.

YAML syntax for new rules

New rules that use YAML syntax to support metadata, message and tag actions, rule conditions, provider conditions for Java and Go providers, and other file tagging and characteristics.

Dynamic reports

MTA 7.0.0 produces dynamic analysis reports that collect aggregated issues and dependencies across the application portfolio. They identify portfolio-wide trends, drill down to specific lines in source code, and fully integrate with MTA User Interface (UI).

Support added for Azure Red Hat OpenShift (ARO)

MTA 7.0.0 introduces support for Azure Red Hat OpenShift (ARO).

Support added for Red Hat OpenShift on AWS (ROSA)

MTA 7.0.0 introduces support for Red Hat OpenShift on AWS (ROSA).

Multi-language analysis

MTA 7.0.0 supports migrating applications written in Java and Golang implemented in Language Server Protocol (LSP).

Important

Multi-language analysis for Golang is a Technology Preview feature only. Technology Preview features are not supported with Red Hat production service level agreements (SLAs) and might not be functionally complete. Red Hat does not recommend using them in production. These features provide early access to upcoming product features, enabling customers to test functionality and provide feedback during the development process.

For more information about the support scope of Red Hat Technology Preview features, see Technology Preview Features Support Scope.

5.2. Known issues

Migration Toolkit for Applications (MTA) version 7.0.0 has the following issues.

Pathfinder assessment migration fails on upgrade from MTA 6.2.1 to MTA 7.0.0

If MTA 6.2.1 is installed, when attempting to switch the channel to stable-7.0, the operator upgrade succeeds, but a task in the operator pod fails. This failure results in existing pathfinder assessments not being migrated to MTA 7.0.0. This bug will be resolved in MTA 7.0.1. No assessment data will be lost, it is will simply not be visible in the UI until the release of MTA 7.0.1. MTA-2139

Delayed permission update and user deactivation in RBAC

When deleting, deactivating or degrading the role of a user, such as changing the user from Admin to Migrator, the change can take several minutes to take effect. This delay in changing the user status can pose an operational or security risk. MTA-1809

Re-enabling Keycloak breaks MTA

Keycloak is enabled by default. If you disable and then re-enable Keycloak, you cannot perform any actions in the MTA web console after logging in again.

This error is caused as the credential-mta-rhsso secret is updated when auth/Keycloak is disabled and re-enabled.

The suggested workaround is to restore the old password in the credential-mta-rhsso secret, after re-enabling auth. MTA-1152

org.apache.derby.derby dependency not analyzed

The org.apache.derby.derby dependency is not analyzed. MTA-1817

Redundant warning on reassessment of applications with inherited assessments

The system repeatedly shows a warning message about overriding an inherited assessment when reassessing an application.

This warning, appropriate for the first assessment, incorrectly reappears on subsequent reassessments, suggesting that the application is still inheriting its assessment, even after it has been overridden. MTA-1825

Custom rule for javax.{*} package import is not triggered when uploaded as an XML file

In MTA 7.0.0, some XML custom rule files are converted to the new YAML format during analysis. The root cause is that Java search patterns that use IMPORT as location and end in .{*}, do not function as expected. MTA-2000

To resolve this issue, whenever a custom rule has a pattern ending in .{*} and location IMPORT, the pattern .{*} can be changed to {*} and the location changed to PACKAGE, as in the following example.

Example 5.1. To view the javax-package-custom-target.windup.xml, click here.

<?xml version="1.0"?>
<ruleset xmlns="http://windup.jboss.org/schema/jboss-ruleset" id="javax-package"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://windup.jboss.org/schema/jboss-ruleset http://windup.jboss.org/schema/jboss-ruleset/windup-jboss-ruleset.xsd">
    <metadata>
        <description>
            This ruleset evaluates whether a custom target can be used within a custom rule
        </description>
        <dependencies>
            <addon id="org.jboss.windup.rules,windup-rules-javaee,3.0.0.Final" />
            <addon id="org.jboss.windup.rules,windup-rules-java,3.0.0.Final" />
        </dependencies>
        <targetTechnology id="phil" versionRange="[7,8)" />
    </metadata>
    <rules>
        <rule id="javax-package-custom-target-00001">
            <when>
                <javaclass references="javax{*}">
                    <location>PACKAGE</location>
                </javaclass>
            </when>
            <perform>
                <hint title="CUSTOM RULE for javax.* package import" effort="1" category-id="potential">
                    <message>`javax.*` packages must be renamed to `jakarta.*` for Jakarta EE9 compatibility.</message>
                    <link title="Renamed Packages" href="https://github.com/wildfly-extras/batavia/blob/master/impl/ecl/src/main/resources/org/wildfly/extras/transformer/eclipse/jakarta-renames.properties"/>
                </hint>
            </perform>
        </rule>
    </rules>
</ruleset>

For a complete list of all known issues in this release, see the list of Known Issues in Jira.

5.3. Resolved issues

The following highlighted issues have been resolved in Migration Toolkit for Applications (MTA) version 7.0.0.

No update notification after editing fields

In previous versions of MTA, no Update Notification appeared at top of window after the fields Application, Job Function, and Business services were updated. MTA-1024

Not possible to create a Jira instance behind a proxy

In previous versions of MTA, it was not possible to create a Jira instance (issues.stage.redhat.com) behind a proxy. MTA-849

CVE-2023-6291: A flaw was found in the redirect_uri validation logic

A flaw was found in the redirect_uri validation logic that allows for a bypass of otherwise explicitly allowed hosts. The problem arises in the verifyRedirectUri method, which attempts to enforce rules on user-controllable input, but can cause a desynchronization in how Keycloak and browsers interpret URLs.

For more details, see (CVE-2023-6291).

For a complete list of all issues resolved in this release, see the list of Resolved Issues in Jira.

5.4. Upgrade notes

The following are upgrade notes for Migration Toolkit for Applications (MTA)

Hub database volume size

In version 7.0.0 of MTA, the default size of the hub database volume has been increased to 10GiB.

If your storage class does not support volume expansion, then an upgrade from 6.2.1 to 7.0.0 will result in a failure due to the operator trying to change the volume size from 5GiB to 10GiB.

To avoid this issue, you can directly set the volume size by setting:

...
hub_database_volume_size: 5Gi
...

By doing this, you will avoid the operator trying to resize the volume.

If this value was set when the previous version was deployed, there is no need to take any action, as it will work as expected.

Existing data

When upgrading to MTA 7.0.0, all existing data will be retained, except for individual analysis reports for applications.

As both the analysis and reporting engines have been replaced with this version, you will be required to conduct a re-run of the analysis in order to obtain data on issues and dependencies.

Version upgrade

You can upgrade to MTA 7.0.0 from 6.2.1. It is not recommended to pursue any alternative upgrade route. If you wish to upgrade from a previous version, it is recommended to proceed in a sequential manner until you finally upgrade from MTA version 6.2.1 to 7.0.0.

5.5. Technical changes

The following technical changes have been made in Migration Toolkit for Applications (MTA) 7.0.0:

  • The Maven Plugin has been deprecated.
  • Language Server Protocol (LSP) Analyzer change.

5.5.1. Rules

Rules can only be written in YAML

Rules written in Groovy and Java are discontinued in MTA version 7.0.0. Some of the previous Groovy Java rules have been converted to YAML rules wherever possible.

An important modification to the rule’s engine is that it is no longer possible to query anything apart from the tags stored within the engine’s internal data structures. This means that all the features that were enabled by using the graph-query element in the rule are no longer available.

Java Class child elements not supported in MTA

The Java Class child elements annotation-list, annotation-type and annotation-literal are not supported in MTA version 7.0.0.

Elements <project> and <dependency> are merged into one dependency condition

The capabilities of <project> and <dependency> elements in the old syntax are merged into one dependency condition in the new rules syntax.

Transformation capabilities of xslt element are discontinued

XML transformation capabilities offered by the xslt element are discontinued.

Explicit iteration element is discontinued

The explicit iteration element is discontinued in MTA version 7.0.0. If a condition returns a list of items via the as construct, iteration is implied.

Test rules not supported in the current version

Test rules are not supported in MTA version 7.0.0.

Overriding a rule discontinued

Overriding a rule is discontinued in MTA version 7.0.0.

Creating custom rule categories discontinued

Creating custom rule categories is discontinued in MTA version 7.0.0.

Information and optional categories of rules are discontinued.

In MTA version 7.0.0, any previous rules of information and optional categories will only create technology tags.

Java analysis capabilities

In MTA version 7.0.0, the following Java analysis capabilities have been deprecated:

  • Ability to match on specific arguments of a Java method constructor is not supported in the current version
  • Matching Java references from JavaServer Pages (JSP) files are not supported in the current version
  • Mavenizing a Java project, meaning write a POM and possibly move code around so that it builds in Maven, is discontinued.

Analysis report changes

The following functionality in Analysis reports has been deprecated:

  • Story points are shown as integers. The “level of effort” view and their mappings are deprecated in MTA version 7.0.0.
  • Transactions reports are deprecated in MTA version 7.0.0.
  • The view for “Archives shared by multiple applications” is deprecated in MTA version 7.0.0.
  • The view for “Review rule providers execution overview” deprecated in MTA version 7.0.0.
Red Hat logoGithubRedditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez leBlog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.