This is an enhancement of the test case in JDK-8296754, which tests against an archive created by the "boot JDK", which is usually set as the previous official JDK release when building the JDK repo. See:
https://github.com/openjdk/jdk/blob/a249a52501f3cd7d4fbe5293d14ac8d0d6ffcc69/test/hotspot/jtreg/runtime/cds/appcds/dynamicArchive/TestAutoCreateSharedArchiveUpgrade.java
To be more comprehensive, we should enhance so that
[1] If it's able to acquire previous valid JDK releases:
- Download and install previous JDK versions (19 through N)
where N == java.lang.Runtime.version​().major() - 1
- Test the interaction of the current JDK versus each of the previous releases
[2] If it's not able to find the previous releases revert to the existing logic in TestAutoCreateSharedArchiveUpgrade.java (use the test.boot.jdk or test.previous.jdk properties).
************************
We need to add some extra properties to be passed to test/lib/jdk/test/lib/artifacts/JibArtifactManager.java (more details will be added here ....)