Skip to content

Commit

Permalink
Ensure compatibility to ecu.test 2024.2 and 2024.3 (#716)
Browse files Browse the repository at this point in the history
* Update COM application name (#713)

* Fic CasC integration (#713)

* Add prf not supported warning to publishTRF step (#713)

* Add warnings that prf is not supported (#713)

* Update compat matrix (#713)

* Fix checkstyle warnings (#713)

* Update toolDependencies.yml (#713)
  • Loading branch information
ErikRehmTT authored Sep 2, 2024
1 parent 3f35a94 commit 9084019
Show file tree
Hide file tree
Showing 20 changed files with 124 additions and 106 deletions.
82 changes: 37 additions & 45 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -956,71 +956,63 @@ Since [release 2.39](https://github.com/jenkinsci/ecutest-plugin/releases/tag/ec
tracetronic tool support terms. Please consult the [compatibility matrix](#compatibility) for detailed
information.

Due to the deprecation and the feature freeze of this plugin it will not support this new PRF file format. Consider
migrating to the [ecu.test execution plugin](https://plugins.jenkins.io/ecu-test-execution/) if you want to publish
the new PRF files to Jenkins.

## FAQ

Frequently asked questions, common issues and error messages about the [ecu.test Jenkins Plugin](https://github.com/jenkinsci/ecutest-plugin) and [ecu.test](https://www.tracetronic.com/products/ecu-test/) itself
can be found in the [tracetronic Knowledge Base](https://kb.tracetronic.com/display/KB/Jenkins+Plugin).

## Compatibility

- Jenkins LTS 2.319.3 or higher
- Jenkins LTS 2.426.3 or higher
- Java SE Runtime Environment 17 or higher
- Check [min versions](toolDependencies.yml) for tt tools
<details>
<summary><a href="https://www.tracetronic.com/products/ecu-test">ecu.test</a> compat matrix (min 2023.1)</summary>

| Version | latest - 2.44 | 2.43 - 2.39 | 2.38 - 2.26 | 2.25 - 2.23 | 2.22 - 2.19 | 2.18 - 2.15 | 2.15 | 2.14 - 2.13 | 2.12 - 2.8 | 2.7 - 2.5 | 2.4 - 2.2 | 2.1 - 2.0 |
|:-------:|:------------------:|:------------------:|:------------------:|:------------------:|:------------------:|:------------------:|:------------------:|:------------------:|:------------------:|:------------------:|:------------------:|:------------------:|
| 2024.1 | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 2023.4 | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 2023.3 | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 2023.2 | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 2023.1 | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 2022.4 | :grey_question: | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 2022.3 | :grey_question: | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 2022.2 | :grey_question: | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 2022.1 | :grey_question: | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 2021.4 | :grey_question: | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 2021.3 | :grey_question: | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 2021.2 | :grey_question: | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 2021.1 | :grey_question: | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 2020.4 | :grey_question: | :grey_question: | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 2020.3 | :grey_question: | :grey_question: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 2020.2 | :grey_question: | :grey_question: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: |
| 2020.1 | :grey_question: | :grey_question: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: |
| 8.1.0 | :grey_question: | :grey_question: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: |
| 8.0.0 | :grey_question: | :grey_question: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: |
| 7.2.0 | :grey_question: | :grey_question: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: |
| 7.1.0 | :grey_question: | :grey_question: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :x: |
| 7.0.0 | :grey_question: | :grey_question: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |

<summary><a href="https://www.tracetronic.com/products/ecu-test">ecu.test</a> compat matrix (min 2024.1)</summary>

| Version | latest - 2.45 | 2.44 | 2.43 - 2.39 | 2.38 - 2.26 |
|:-------:|:------------------:|:------------------:|:------------------:|:------------------:|
| 2024.3 | :heavy_check_mark: | :x: | :x: | :x: |
| 2024.2 | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: |
| 2024.1 | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: |
| 2023.4 | :grey_question: | :heavy_check_mark: | :heavy_check_mark: | :x: |
| 2023.3 | :x: | :heavy_check_mark: | :heavy_check_mark: | :x: |
| 2023.2 | :x: | :heavy_check_mark: | :heavy_check_mark: | :x: |
| 2023.1 | :x: | :heavy_check_mark: | :heavy_check_mark: | :x: |
| 2022.4 | :x: | :grey_question: | :heavy_check_mark: | :heavy_check_mark: |
| 2022.3 | :x: | :grey_question: | :heavy_check_mark: | :heavy_check_mark: |
| 2022.2 | :x: | :grey_question: | :heavy_check_mark: | :heavy_check_mark: |
| 2022.1 | :x: | :grey_question: | :heavy_check_mark: | :heavy_check_mark: |
| 2021.4 | :x: | :grey_question: | :heavy_check_mark: | :heavy_check_mark: |
| 2021.3 | :x: | :grey_question: | :heavy_check_mark: | :heavy_check_mark: |
| 2021.2 | :x: | :grey_question: | :heavy_check_mark: | :heavy_check_mark: |
| 2021.1 | :x: | :grey_question: | :heavy_check_mark: | :heavy_check_mark: |

**Explanation:** :heavy_check_mark: -> compatible | :grey_question: -> not tested, might be compatible | :x: -> not
compatible

</details>
<details>
<summary>optional: <a href="https://www.tracetronic.com/products/test-guide">test.guide</a> compat matrix (min 1.87.0) </summary>

| Version | latest - 2.44 | 2.43 - 2.26 | 2.25 - 2.23 | 2.22 | 2.21 - 2.18 | 2.17 - 2.16 | 2.15 - 2.14 | 2.13 - 2.12 | 2.11 | 2.10 - 2.8 | 2.7 - 2.6 |
|:-------:|:------------------:|:------------------:|:------------------:|:-----------------:|:-----------------:|:-----------------:|:-----------------:|:-----------------:|:-----------------:|:-----------------:|:-----------------:|
| 1.169.1 | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 1.129.0 | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 1.120.0 | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 1.113.0 | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 1.104.0 | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 1.95.0 | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 1.87.0 | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 1.84.2 | :x: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark:| :x: | :x: | :x: | :x: | :x: | :x: | :x: |
| 1.82.0 | :x: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark:| :heavy_check_mark:| :x: | :x: | :x: | :x: | :x: | :x: |
| 1.80.0 | :x: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark:| :heavy_check_mark:| :heavy_check_mark:| :x: | :x: | :x: | :x: | :x: |
| 1.76.0 | :x: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark:| :heavy_check_mark:| :heavy_check_mark:| :heavy_check_mark:| :x: | :x: | :x: | :x: |
| 1.72.0 | :x: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark:| :heavy_check_mark:| :heavy_check_mark:| :heavy_check_mark:| :heavy_check_mark:| :heavy_check_mark:| :x: | :x: |
| 1.67.0 | :x: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark:| :heavy_check_mark:| :heavy_check_mark:| :heavy_check_mark:| :heavy_check_mark:| :heavy_check_mark:| :heavy_check_mark:| :x: |
| 1.64.1 | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :heavy_check_mark:| :heavy_check_mark:| :heavy_check_mark:| :heavy_check_mark:|
</details>
| Version | latest - 2.44 | 2.43 - 2.26 | 2.25 - 2.23 |
|:-------:|:------------------:|:------------------:|:------------------:|
| 1.169.1 | :heavy_check_mark: | :x: | :x: |
| 1.129.0 | :heavy_check_mark: | :heavy_check_mark: | :x: |
| 1.120.0 | :heavy_check_mark: | :heavy_check_mark: | :x: |
| 1.113.0 | :heavy_check_mark: | :heavy_check_mark: | :x: |
| 1.104.0 | :heavy_check_mark: | :heavy_check_mark: | :x: |
| 1.95.0 | :heavy_check_mark: | :heavy_check_mark: | :x: |
| 1.87.0 | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| 1.84.2 | :x: | :heavy_check_mark: | :heavy_check_mark: |

* Note that some lacking version incompatibilities in the test.guide - ecu.test-Plugin compatibility matrix are due
to configuration fields which are not natively supported. You may still add these lacking configurations via the
*custom fields* in the test.guide configuration on the Jenkins server.
</details>

## License

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,12 +30,12 @@ public class ETPlugin {
/**
* Defines the minimum required ecu.test version supported by this plugin.
*/
public static final ToolVersion ET_MIN_VERSION = new ToolVersion(2023, 1, 0);
public static final ToolVersion ET_MIN_VERSION = new ToolVersion(2024, 1, 0);

/**
* Defines the maximum allowed ecu.test version supported by this plugin.
*/
public static final ToolVersion ET_MAX_VERSION = new ToolVersion(2024, 1, 0);
public static final ToolVersion ET_MAX_VERSION = new ToolVersion(2024, 3, 0);

Check warning on line 38 in src/main/java/de/tracetronic/jenkins/plugins/ecutest/ETPlugin.java

View check run for this annotation

ci.jenkins.io / Code Coverage

Not covered lines

Lines 33-38 are not covered by tests

/**
* Defines the minimum test.guide version supported by this plugin.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,11 @@ public class TRFPublisher extends AbstractReportPublisher {
*/
public static final String TRF_EXCLUDES = "*/**/Job_*" + TRF_EXTENSION;

/**
* Pattern uses to match the not support .prf files.
*/
public static final String PRF_PATTERN = "**/*.prf";

/**
* The URL name to {@link TRFReport}s holding by {@link AbstractTRFAction}.
*/
Expand Down Expand Up @@ -91,6 +96,14 @@ public void performReport(final Run<?, ?> run, final FilePath workspace, final L
for (final FilePath reportDir : reportDirs) {
final FilePath archiveTargetDir = archiveTarget.child(reportDir.getName());
final FilePath reportFile = getFirstReportFile(reportDir);
if (reportDir.list(PRF_PATTERN).length > 0) {
logger.logWarn(String.format("Found a .prf file in report folder %s. Due to the deprecation of "
+ "this plugin it does not support this new file format. Consider migrating to the ecu.test"
+ " execution plugin or deactivate the creation of .prf files. Skipping this report "
+ "folder!",
reportDir));
continue;

Check warning on line 105 in src/main/java/de/tracetronic/jenkins/plugins/ecutest/report/trf/TRFPublisher.java

View check run for this annotation

ci.jenkins.io / Code Coverage

Not covered lines

Lines 99-105 are not covered by tests
}
if (reportFile != null && reportFile.exists()) {
try {
logger.logInfo(String.format("- Archiving TRF report: %s", reportFile));
Expand Down Expand Up @@ -153,8 +166,8 @@ private void traverseReports(final List<TRFReport> trfReports, final FilePath ar
}

/**
* Traverses the sub-report directories recursively and searches for TRF reports.
* Includes the report files generated during separate sub-project execution.
* Traverses the sub-report directories recursively and searches for TRF reports. Includes the report files
* generated during separate sub-project execution.
*
* @param trfReport the TRF report
* @param testReportDir the main test report directory
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ public final class ETComProperty implements Serializable {
/**
* Default COM specific programmatic identifier.
*/
public static final String DEFAULT_PROG_ID = "ECU-TEST.Application";
public static final String DEFAULT_PROG_ID = "ecu.test.Application";
/**
* Default COM response timeout in seconds.
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,8 @@

<?jelly escape-by-default='true'?>
<j:jelly xmlns:j="jelly:core" xmlns:st="jelly:stapler">
<!-- Stretch to full width -->
<tr>
<td colspan="3" width="100%"/>
</tr>
<div class="alert alert-warning">
${%prf.warning}
</div>
<st:include class="de.tracetronic.jenkins.plugins.ecutest.report.AbstractReportPublisher" page="config.jelly"/>
</j:jelly>
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#
# Copyright (c) 2015-2024 tracetronic GmbH
#
# SPDX-License-Identifier: BSD-3-Clause
#
prf.warning=This plugin does not support the new PRF file format. Please consider migrating to the ecu.test \
execution plugin if you use the new PRF file format.
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#
# Copyright (c) 2015-2024 tracetronic GmbH
#
# SPDX-License-Identifier: BSD-3-Clause
#
prf.warning=Dieses Plugin unterst\u00FCtzt nicht das neue PRF Format. Bitte erw\u00E4gen Sie einen Wechsel auf das \
ecu.test execution Plugin, falls Sie das neue PRF Format nutzen.
Original file line number Diff line number Diff line change
Expand Up @@ -43,19 +43,19 @@ public void testImportConfiguration() {

ETInstallation installation = installations[0];
assertThat(installation.getName(), is("ecu.test"));
assertThat(installation.getHome(), is("C:\\ECU-TEST"));
assertThat(installation.getHome(), is("C:\\ecu.test"));
assertThat(installation.getProgId(), is(ETComProperty.DEFAULT_PROG_ID));
assertThat(installation.getTimeout(), is(ETComProperty.DEFAULT_TIMEOUT));
assertThat(installation.getProperties(), empty());

installation = installations[1];
assertThat(installation.getName(), is("ECU-TEST 7.2"));
assertThat(installation.getHome(), is("C:\\Program Files\\ECU-TEST 7.2"));
assertThat(installation.getProgId(), is("ECU-TEST.Application.7.2"));
assertThat(installation.getName(), is("ecu.test 2024.1"));
assertThat(installation.getHome(), is("C:\\Program Files\\ecu.test 2024.1"));
assertThat(installation.getProgId(), is("ecu.test.Application.2024.1"));
assertThat(installation.getTimeout(), is(60));
assertThat(installation.getProperties().size(), is(1));
assertThat(installation.getProperties().get(0), is(instanceOf(ETToolProperty.class)));
assertThat(((ETToolProperty) installation.getProperties().get(0)).getProgId(), is("ECU-TEST.Application.7.2"));
assertThat(((ETToolProperty) installation.getProperties().get(0)).getProgId(), is("ecu.test.Application.2024.1"));
assertThat(((ETToolProperty) installation.getProperties().get(0)).getTimeout(), is(60));
assertThat(((ETToolProperty) installation.getProperties().get(0)).isRegisterComServer(), is(true));
}
Expand Down
Loading

0 comments on commit 9084019

Please sign in to comment.