Chapter 1. Migration toolkit for applications 8.2


This Release Notes section provides high-level coverage of the improvements and additions that have been implemented in migration toolkit for applications (MTA) 8.2.

1.1. MTA 8.2.1

The MTA 8.2.1 section lists the issues fixed in this release.

1.1.1. Fixed issues

Review issues that have been fixed in migration toolkit for applications (MTA) version 8.2.1.

mta-ops transform uses the --overwrite flag for consistent behavior

Before this update, the mta-ops transform command used a --force flag. This flag functioned only with the --instructions-file option. Without an instructions file, plugin stage directories were silently overwritten. Additionally, custom stage directories blocked the pipeline with no way to proceed. With this release, the --force flag was replaced with --overwrite. This change aligns the transform command with other mta-ops subcommands. As a result, all stage directories require the --overwrite flag to replace existing content. This gives you explicit control over data replacement during a pipeline re-run.

MTA-7234

The MTA Operator delegates authentication to the external Keycloak instance after an upgrade

Before this update, an IdentityProvider custom resource (CR) that was not created by the Operator could specify the primary: true parameter. When this parameter was true, authentication was completely delegated to the external identity provider (IdP). As a result, only the external IdP login page was presented. However, the IdentityProvider CR created by the Operator during an upgrade did not specify primary: true. With this release, the Operator sets primary: true by default in the managed IdentityProvider. Additionally, the Tackle CR supports the idp_primary field that is propagated to the Operator-managed IdentityProvider.

MTA-7496

1.2. MTA 8.2.0

Review new features, enhancements, deprecated features, fixed issues, and known issues in migration toolkit for applications (MTA) 8.2.0.

1.2.1. New features and enhancements

Review new features and enhancements in migration toolkit for applications (MTA) 8.2.0.

The mta-ops command-line interface for stateless workload migrations

The mta-ops command-line interface (CLI) is a new standalone tool that migrates stateless Red Hat OpenShift workloads. It uses a multi-stage pipeline to locally export, transform, and render your application manifests. As a result, you can safely generate and validate manifests before using standard deployment tools.

For more information, see Migrating stateless workloads by using the mta-ops CLI.

An OIDC-compliant Hub provider for authentication and authorization

The MTA Hub implements an OpenID Connect (OIDC) standards-compliant provider that offers local user authentication and federation to other providers. You can use any of the following authentication methods:

  • The Hub OIDC for basic local authentication to reduce infrastructure management and configuration. You do not require any additional configuration to use basic local authentication.
  • An LDAP-backed authentication by using a declarative YAML configuration file.
  • An identity provider with MTA.

    You can integrate Google, Okta, Microsoft Entra ID, or a Keycloak instance you provision independently as an identity provider. If you deployed Keycloak in the MTA namespace in earlier versions before an upgrade, MTA automatically configures your instance as the identity provider.

    For more information, see Authentication and authorization.

MTA-7399

MTA introduces new commands and reorganized subcommands

The MTA command-line interface (CLI) introduces a reorganized command model to streamline major tasks you perform by using the CLI. You can use the main command and associated subcommands to complete specific tasks.

For more information, see About the MTA commands.

MTA-7398

C# provider uses the .NET Compiler Platform (Roslyn) analyzer for analyses

The C# provider uses the .NET Compiler Platform (Roslyn) analyzer to analyze C# applications. As a result, you do not need external tools to analyze project dependencies. The updated C# provider uses regular expressions for inheritence-aware symbol resolution. The symbol resolution improves application analysis by detecting references of the using directives, object creation, annotations, method invocations, and type declarations. The C# provider also handles dynamic member access and tracks value flow in the source code.

MTA-7400

1.2.2. Deprecated features

This section provides a list of all features deprecated in migration toolkit for applications (MTA) 8.2.0.

The following MTA command-line interface (CLI) commands are deprecated:

Expand
Table 1.1. Deprecated commands

Command

Feature or component

Alternative action

$ mta-cli analyze --list-targets

Analyze command option to list target technologies.

Use the $ mta-cli rules list-targets command.

$ mta-cli analyze --list-sources

Analyze command option to list source technologies.

Use the $ mta-cli rules list-sources command.

$ mta-cli analyze --list-providers

Analyze command option to list providers for application analysis.

Use the $ mta-cli provider list command.

$ mta-cli test <path_to_test_ruleset>

Test command to perform a dry run on default or custom ruleset.

Use the $ mta-cli rules test <path_to_test_ruleset> command.

$ mta-cli transform

Transform command to update Java libraries and frameworks in source code.

Use the $ mta-cli openrewrite command.

1.2.3. Known issues

Migration toolkit for applications (MTA) version 8.2.0 is affected by the following newly identified and previously known issues. A known issue is listed in all future release notes until resolved, at which point it is published as a fixed issue.

1.2.3.1. mta-ops command-line interface

kubectl apply overwrites existing target resources without warning

When you deploy exported manifests with the kubectl apply command, existing resources in the target namespace are silently overwritten. This is standard kubectl apply behavior and not specific to the mta-ops command-line interface (CLI). As a consequence, you might accidentally overwrite existing workloads on the target cluster.

To work around this problem, manually verify that the target namespace does not have conflicting resources before deployment.

MTA-7103

mta-ops transform does not accept the --overwrite flag

The mta-ops transform command does not currently support the --overwrite flag. If a custom stage directory already exists, the pipeline stops. As a consequence, you cannot automatically overwrite existing custom modifications during a pipeline re-run.

To work around this problem, manually delete the existing transform or custom stage directory before you re-run the mta-ops transform command.

MTA-7234

1.2.3.2. MTA authentication

Keycloak administrators logging in to MTA cannot create a user

After authenticating to the MTA web console as a Keycloak administrator, you cannot perform user management tasks because these tasks require new scopes for the user, role, and tokens resources in MTA. A local user with admin role can create and manage users.

To work around this problem, add the following scopes for administrator users in Keycloak:

  • users:get
  • users:post
  • users:put
  • users:delete
  • roles:get
  • roles:post
  • roles:put
  • roles:delete
  • tokens:get
  • tokens:post
  • tokens:delete
  • scopes:get

    MTA-7235

MTA does not automatically redirect to the external identity provider for authentication

After you configure an external identity provider (IdP) for authentication, MTA does not automatically redirect to the IdP login page. As a consequence, you must click the Sign in with <identity_provider> option on the MTA login page to access the IdP login page.

To work around this problem, set the idp_primary field to true in the Tackle custom resource (CR). The MTA Hub identifies the external IdP as the primary authentication method and automatically routes to its login page for authentication.

MTA-7236

1.2.3.3. MTA analysis

MTA analysis does not match rule patterns when import statements have a wildcard

When you use a wildcard to import packages used by an annotation in your Java source code, an MTA analysis does not trigger a violation for such annotations. As a consequence, you are unable to fix all occurrences of an annotation defined in a rule because MTA triggered no incidents for some annotations.

No known workaround exists.

MTA-6530

MTA web console completes tech discovery and analysis with errors

The MTA web console completes tech discovery and analysis of certain projects with errors. As a consequence, the tech discovery does not generate all relevant tags and the analysis could miss triggering issues.

To work around this problem, ensure that you have a Gradle or a Maven build file at the root directory of your project.

MTA-6140

Custom rules do not trigger a violation in compiled binary application analysis

When you run an analysis by using a custom YAML rule for a compiled Java binary in the MTA web console, MTA does not trigger a violation.

No known workaround exists.

MTA-5199

1.2.4. Fixed issues

Review issues that have been fixed in migration toolkit for applications (MTA) version 8.2.0.

1.2.4.1. MTA command-line interface

MTA analysis generates a record when you use an HTTP or HTTPS proxy

Before this update, MTA did not generate an analysis log when you used the --http-proxy or --https-proxy option in an MTA CLI analysis. As a consequence, you could not verify if MTA routed the analysis through the proxy. With this fix, you can verify proxy use because MTA analysis records the use of a proxy.

MTA-6553

1.2.4.2. MTA web console

MTA discovers Maven applications that use self-signed certificates

Before this update, after you enabled the option to Consume insecure artifact repositories in the MTA web console, MTA discovery for Maven applications that use self-signed certificates failed. As a consequence, you could not generate deployment assets for the affected applications. With this fix, MTA connects with Maven application repositories that use a self-signed certificate and completes application discovery.

MTA-7361

MTA web console validates YAML custom rules

Before this update, the MTA web console did not validate the custom YAML rules you upload for an analysis or in custom targets. As a consequence, if a rule contained invalid keys or syntax errors, you did not see an error message. With this fix, MTA improves user experience by validating the custom rules you upload in the web console.

MTA-6834

MTA triggers violation for open source dependencies in Gradle applications

Before this update, MTA did not trigger violations for open source dependency libraries when analyzing Gradle applications. As a consequence, a source+dependency analysis generated fewer incidents in the static report. With this fix, MTA includes violations on open source dependencies in the Gradle analysis results.

MTA-6211

Red Hat logoGithubredditYoutubeTwitter

Learn

Try, buy, & sell

Communities

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat Documentation

Legal Notice

Theme

© 2026 Red Hat
Back to top