Skip to content

Commit 7d9df1b

Browse files
Merge pull request #306220 from Descatles/wenhao/appcat-7.7.0.4
[WIP]update for appcat 7.7.0.4
2 parents 9d96c5c + 849f0d0 commit 7d9df1b

4 files changed

Lines changed: 95 additions & 13 deletions

File tree

articles/migrate/appcat/appcat-7-cli-guide.md

Lines changed: 66 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,12 @@ The following sections provide a detailed description of the available `appcat a
4242
| Source & target technologies | | |
4343
| | `--list-sources` | Displays the available migration source technologies. |
4444
| | `--list-targets` | Displays the available migration target technologies. |
45+
| | `--list-capabilities` | Displays the available migration capabilities |
46+
| | `--list-os` | Displays the available migration target operating systems. |
4547
| | `--source`, `-s` | Specifies the source technologies for analysis. Use a comma-separated list for multiple values - for example, `--source <source1>,<source2>,...`. Use the `--list-sources` argument to list all available sources. |
4648
| | `--target`, `-t` | Specifies the target technologies for analysis. Use a comma-separated list for multiple values - for example, `--target <target1>,<target2>,...`. Use the `--list-targets` argument to list all available targets. |
49+
| | `--capability`, `-c` | Specifies capability technologies for analysis. Use a comma-separated list for multiple values - for example, `--capability <capability1>,<capability2>,...`. Use the `--list-capabilities` argument to list all available capabilities. |
50+
| | `--os` | Specifies operating systems for analysis. Use a comma-separated list for multiple values - for example, `--os <os1>,<os2>,...`. Use the `--list-os` argument to list all available operating systems. |
4751
| Analysis options | | |
4852
| | `--analyze-known-libraries` | Enables analysis of known open-source libraries - specified in AppCAT's `maven.default.index` - during source code analysis. The default value is `false`. |
4953
| | `--custom-maven-settings` | Specifies the path to a custom Maven settings file. |
@@ -99,7 +103,7 @@ The `--list-sources` parameter shows the following source technologies:
99103
| EAP | Best practices for migrating Java applications that use JBoss EAP technology. | `eap` |
100104
| EAP 7 | Best practices for migrating Java applications that use JBoss EAP 7 technology. | `eap7` |
101105

102-
##### Support targets
106+
##### Supported targets
103107

104108
The `--list-targets` parameter shows the following target technologies:
105109

@@ -108,15 +112,30 @@ The `--list-targets` parameter shows the following target technologies:
108112
| Azure App Service | Best practices for deploying an app to Azure App Service. | `azure-appservice` |
109113
| Azure Kubernetes Service | Best practices for deploying an app to Azure Kubernetes Service. | `azure-aks` |
110114
| Azure Container Apps | Best practices for deploying an app to Azure Container Apps. | `azure-container-apps` |
111-
| Cloud Readiness | General best practices for making an application Cloud (Azure) ready. | `cloud-readiness` |
112-
| Linux | General best practices for making an application Linux ready. | `linux` |
113-
| OpenJDK 11 | General best practices for running a Java 8 application with Java 11. | `openjdk11` |
114-
| OpenJDK 17 | General best practices for running a Java 11 application with Java 17. | `openjdk17` |
115-
| OpenJDK 21 | General best practices for running a Java 17 application with Java 21. | `openjdk21` |
115+
116+
##### Supported operating systems
117+
118+
The `--list-os` parameter shows the following operating systems:
119+
120+
| OS name | Description | OS |
121+
|---------|---------------------------------------------------------------|----------|
122+
| Linux | Best practices for migrating applications to the Linux platform. | `linux` |
123+
| Windows | Best practices for migrating applications to the Windows platform. | `windows` |
124+
125+
##### Supported capabilities
126+
127+
The `--list-capabilities` parameter shows the following capabilities:
128+
129+
| Capability name | Description | Capability |
130+
|-----------------|-----------------------------------------------------------|-------------------|
131+
| Containerization | Best practices for containerizing applications. | `containerization` |
132+
| OpenJDK 11 | Best practices for migrating to OpenJDK 11. | `openjdk11` |
133+
| OpenJDK 17 | Best practices for migrating to OpenJDK 17. | `openjdk17` |
134+
| OpenJDK 21 | Best practices for migrating to OpenJDK 21. | `openjdk21` |
116135

117136
##### Configure ignore files
118137

119-
In the AppCAT CLI install path, you can configure the `.appcat-ignore` file to exclude specified folders or paths when running the `appcat analyze` command.
138+
In the AppCAT CLI install path, you can configure the **.appcat-ignore** file to exclude specified folders or paths when running the `appcat analyze` command.
120139

121140
#### Global parameters
122141

@@ -179,6 +198,24 @@ In the AppCAT CLI install path, you can configure the `.appcat-ignore` file to e
179198
--target=<target-name>
180199
```
181200

201+
- Analyze a source code directory with specific source to combine target technologies, capabilities, and operating system:
202+
203+
```bash
204+
appcat analyze \
205+
--input <path-to-source> \
206+
--output <path-to-output> \
207+
--source springboot \
208+
--target azure-aks,azure-appservice,azure-container-apps
209+
--capability containerization
210+
--os windows
211+
```
212+
213+
The `--target`, `--capabilities`, and `-os` parameters are combined with an `AND` condition, meaning that the rules must simultaneously match the following criteria:
214+
215+
- An Azure service such as `azure-aks`, `azure-appservice`, or `azure-container-apps`.
216+
- The capability to detect containerization issues.
217+
- The Windows OS platform.
218+
182219
- Analyze a source code directory and keep the detected context lines with custom line numbers:
183220

184221
```bash
@@ -188,9 +225,29 @@ In the AppCAT CLI install path, you can configure the `.appcat-ignore` file to e
188225
--context-lines-number <line-number>
189226
```
190227

191-
The following screenshot shows an example of using `--context-lines-number 3`:
228+
The following screenshot shows an example of using `--context-lines-number 3`:
229+
230+
:::image type="content" source="media/java/appcat-7-cli-command-with-context-line-number.png" alt-text="Screenshot of the appcat report issue code snippet difference with context-lines-number parameter." lightbox="media/java/appcat-7-cli-command-with-context-line-number.png":::
231+
232+
- Restrict report content without code snippets:
233+
234+
```bash
235+
appcat analyze \
236+
--input <path-to-source> \
237+
--output <path-to-output> \
238+
--code-snips-number -1
239+
```
240+
241+
When `--code-snips-number -1` is set, code snippets aren't exported to the report. This behavior helps prevent sensitive data from being included.
242+
243+
:::image type="content" source="media/java/appcat-7-cli-command-with-code-snips-number.png" alt-text="Screenshot of the AppCAT report showing the difference with and without code snippets." lightbox="media/java/appcat-7-cli-command-with-code-snips-number.png":::
244+
245+
You can also check the `metadata.privacyMode` property in `report.json`.
246+
247+
`PrivacyMode` values:
192248

193-
:::image type="content" source="media/java/appcat-7-cli-command-with-context-line-number.png" alt-text="Screenshot of the appcat report issue code snippet difference with context-lines-number parameter." lightbox="media/java/appcat-7-cli-command-with-context-line-number.png":::
249+
- Unrestricted – the report includes code snippets.
250+
- Restricted – the report doesn't include code snippets.
194251

195252
### appcat transform
196253

articles/migrate/appcat/appcat-7-release-notes.md

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,24 @@ This article provides the release notes for Azure Migrate application and code a
1818

1919
## Release history
2020

21+
### 7.7.0.4
22+
23+
This release contains the following new features and enhancements:
24+
25+
- **Enhanced command parameters**: Added new parameters to the `appcat analyze` command:
26+
- `--list-capabilities`: Display available migration capabilities.
27+
- `--list-os`: Display available migration target operating systems.
28+
- `--capability`: Specify capability technologies for analysis.
29+
- `--os`: Specify operating systems for analysis.
30+
- **Improved target specification**: Refined the `--targets` parameter by removing OS and capability values, which are now handled by dedicated parameters.
31+
- **Unified output format**: Introduced a new consolidated **report.json** output file.
32+
2133
### 7.7.0.3
2234

2335
This release contains the following fixes and enhancements:
2436

2537
- Refine issue domain names and category names.
26-
- Move *.appcat-ignore* into user home path instead of the AppCAT installation folder.
38+
- Move **.appcat-ignore** into user home path instead of the AppCAT installation folder.
2739
- Remove unnecessary temporary files during analysis, such as Eclipse-specific configuration.
2840
- Return error message directly for non-Java projects.
2941

@@ -136,6 +148,12 @@ This release is based on a different set of components of the Konveyor project.
136148

137149
## Known issues
138150

151+
### 7.7.0.4
152+
153+
- Rules issues:
154+
- The `azure-system-config-01000` rules aren't being triggered.
155+
- An error in the **Watcher Error** channel on Windows: `Windows system assumed buffer larger than it is, events have likely been missed`. This error message appears on the command line during long-running jobs on Windows.
156+
139157
### 7.7.0.3
140158

141159
- Rules issues:

articles/migrate/appcat/appcat-7-rule-guide.md

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,10 +54,17 @@ The following rule example identifies whether the MySQL database is found in the
5454
description: MySQL database found
5555
effort: 3
5656
labels:
57-
- konveyor.io/target=azure-aks
58-
- konveyor.io/source
59-
- domain=azure-readiness
57+
labels:
58+
- target=azure-appservice
59+
- target=azure-aks
60+
- target=azure-container-apps
61+
- source
62+
- domain=cloud-readiness
6063
- category=database-migration
64+
- database
65+
- mysql
66+
- os=windows
67+
- os=linux
6168
links:
6269
- title: Azure Database for MySQL documentation
6370
url: https://learn.microsoft.com/azure/mysql
254 KB
Loading

0 commit comments

Comments
 (0)