From 3310247dc832ac9c20fddb57e77965a5a4e69977 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian=20Kr=C3=BCger?= <56278322+fabapp2@users.noreply.github.com> Date: Wed, 20 Dec 2023 22:32:25 +0000 Subject: [PATCH] Fix too long path problem with Windows The long path was problematic under Windows without explicitly setting Git config. To prevent this the repository data is copied to tmp dir from a zip file. --- .../private-artifact-repository-tests/pom.xml | 7 + .../sbm/PrivateArtifactRepositoryTest.java | 172 ++++++------------ .../private-repository/.gitignore | 11 +- .../private-repository/reposilite-data.zip | Bin 0 -> 24096 bytes ...pendency-project-1.0-20231105.102337-1.jar | Bin 2436 -> 0 bytes ...ency-project-1.0-20231105.102337-1.jar.md5 | 1 - ...ncy-project-1.0-20231105.102337-1.jar.sha1 | 1 - ...pendency-project-1.0-20231105.102337-1.pom | 25 --- ...ency-project-1.0-20231105.102337-1.pom.md5 | 1 - ...ncy-project-1.0-20231105.102337-1.pom.sha1 | 1 - .../1.0-SNAPSHOT/dependency-project-1.0.jar | Bin 2436 -> 0 bytes .../1.0-SNAPSHOT/maven-metadata.xml | 25 --- .../1.0-SNAPSHOT/maven-metadata.xml.md5 | 1 - .../1.0-SNAPSHOT/maven-metadata.xml.sha1 | 1 - .../dependency-project/maven-metadata.xml | 11 -- .../dependency-project/maven-metadata.xml.md5 | 1 - .../maven-metadata.xml.sha1 | 1 - .../reposilite-data/shared.configuration.json | 75 -------- .../private-repository/.gitignore | 17 -- .../private-repository/README.adoc | 36 ---- .../dependency-project/pom.xml.template | 25 --- .../example/dependency/DependencyClass.java | 13 -- .../dependent-project/pom.xml.template | 33 ---- .../com/example/dependent/DependentClass.java | 7 - ...pendency-project-1.0-20231105.102337-1.jar | Bin 2436 -> 0 bytes ...ency-project-1.0-20231105.102337-1.jar.md5 | 1 - ...ncy-project-1.0-20231105.102337-1.jar.sha1 | 1 - ...pendency-project-1.0-20231105.102337-1.pom | 25 --- ...ency-project-1.0-20231105.102337-1.pom.md5 | 1 - ...ncy-project-1.0-20231105.102337-1.pom.sha1 | 1 - .../1.0-SNAPSHOT/dependency-project-1.0.jar | Bin 2436 -> 0 bytes .../1.0-SNAPSHOT/maven-metadata.xml | 25 --- .../1.0-SNAPSHOT/maven-metadata.xml.md5 | 1 - .../1.0-SNAPSHOT/maven-metadata.xml.sha1 | 1 - .../dependency-project/maven-metadata.xml | 11 -- .../dependency-project/maven-metadata.xml.md5 | 1 - .../maven-metadata.xml.sha1 | 1 - .../reposilite-data/shared.configuration.json | 75 -------- .../user.home/.m2/settings-clear-password.xml | 14 -- .../user.home/.m2/settings-security.xml | 4 - .../user.home/.m2/settings.xml.template | 15 -- 41 files changed, 73 insertions(+), 569 deletions(-) create mode 100644 spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data.zip delete mode 100644 spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.jar delete mode 100644 spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.jar.md5 delete mode 100644 spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.jar.sha1 delete mode 100644 spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom delete mode 100644 spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom.md5 delete mode 100644 spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom.sha1 delete mode 100644 spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0.jar delete mode 100644 spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml delete mode 100644 spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml.md5 delete mode 100644 spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml.sha1 delete mode 100644 spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml delete mode 100644 spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml.md5 delete mode 100644 spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml.sha1 delete mode 100644 spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/shared.configuration.json delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/.gitignore delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/README.adoc delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/dependency-project/pom.xml.template delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/dependency-project/src/main/java/com/example/dependency/DependencyClass.java delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/dependent-project/pom.xml.template delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/dependent-project/src/main/java/com/example/dependent/DependentClass.java delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.jar delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.jar.md5 delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.jar.sha1 delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom.md5 delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom.sha1 delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0.jar delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml.md5 delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml.sha1 delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml.md5 delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml.sha1 delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/shared.configuration.json delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/user.home/.m2/settings-clear-password.xml delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/user.home/.m2/settings-security.xml delete mode 100644 spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/user.home/.m2/settings.xml.template diff --git a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/pom.xml b/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/pom.xml index 67ecc6c..ec143e9 100644 --- a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/pom.xml +++ b/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/pom.xml @@ -163,6 +163,13 @@ provided + + net.lingala.zip4j + zip4j + 2.6.1 + test + + \ No newline at end of file diff --git a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/src/test/java/org/springframework/sbm/PrivateArtifactRepositoryTest.java b/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/src/test/java/org/springframework/sbm/PrivateArtifactRepositoryTest.java index 3f93369..a8d9986 100644 --- a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/src/test/java/org/springframework/sbm/PrivateArtifactRepositoryTest.java +++ b/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/src/test/java/org/springframework/sbm/PrivateArtifactRepositoryTest.java @@ -15,7 +15,7 @@ */ package org.springframework.sbm; -import org.apache.commons.io.FileUtils; +import net.lingala.zip4j.ZipFile; import org.apache.maven.shared.invoker.*; import org.junit.jupiter.api.*; import org.junit.jupiter.api.io.TempDir; @@ -42,14 +42,11 @@ import org.testcontainers.utility.DockerImageName; import org.testcontainers.utility.MountableFile; import java.io.*; -import java.net.URL; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.util.Arrays; import java.util.List; -import java.util.zip.ZipEntry; -import java.util.zip.ZipInputStream; import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Fail.fail; @@ -97,30 +94,52 @@ public class PrivateArtifactRepositoryTest { // All test resources live here public static final String TESTCODE_DIR = "testcode/maven-projects/private-repository"; + public static final String REPOSITORIES_ZIP = Path + .of("./testcode/maven-projects/private-repository/reposilite-data.zip") + .toAbsolutePath() + .toString(); + + public static final String DEPENDENCY_CLASS_FQNAME = "com.example.dependency.DependencyClass"; + + private static final String NEW_USER_HOME = Path.of(".") + .resolve(TESTCODE_DIR + "/user.home") + .toAbsolutePath() + .normalize() + .toString(); + private static final File LOCAL_MAVEN_REPOSITORY = Path.of(NEW_USER_HOME + "/.m2/repository").toFile(); + + private static final Path DEPENDENCY_PATH_IN_LOCAL_MAVEN_REPO = Path + .of(NEW_USER_HOME + "/.m2/repository/com/example/dependency/dependency-project") + .toAbsolutePath() + .normalize(); + + // File path was too long under Windows when Maven repository was under TESTCODE_DIR + + // "/reposilite-data" + // To fix this the repo with jars for reposilite is extracted from a zip to its target + // dir. + private static final Path TEMP_DIR; + static { + try { + TEMP_DIR = Files.createTempDirectory("reposilite-data"); + } + catch (IOException e) { + throw new RuntimeException(e); + } + if (!Files.exists(TEMP_DIR.resolve("reposilite-data"))) { + TestHelper.unzip(TEMP_DIR); + } + } + private static final Path REPOSILITE_DATA_DIR = TEMP_DIR.resolve("reposilite-data"); + // The private Artifact repository (reposilite) provides the dependency. @Container static GenericContainer reposilite = new GenericContainer(DockerImageName.parse("dzikoysk/reposilite:3.4.10")) .withExposedPorts(8080) // copy required config files and cached dependency to repository - .withCopyFileToContainer(MountableFile.forHostPath("./" + TESTCODE_DIR + "/reposilite-data"), "/app/data") + .withCopyFileToContainer(MountableFile.forHostPath(REPOSILITE_DATA_DIR), "/app/data") // Create temp user 'user' with password 'secret' .withEnv("REPOSILITE_OPTS", "--token user:secret --shared-config shared.configuration.json"); - public static final String DEPENDENCY_CLASS_FQNAME = "com.example.dependency.DependencyClass"; - - private static final String NEW_USER_HOME = Path.of(".") - .resolve(TESTCODE_DIR + "/user.home") - .toAbsolutePath() - .normalize() - .toString(); - - private static final Path DEPENDENCY_PATH_IN_LOCAL_MAVEN_REPO = Path - .of(NEW_USER_HOME + "/.m2/repository/com/example/dependency/dependency-project") - .toAbsolutePath() - .normalize(); - - private static final File LOCAL_MAVEN_REPOSITORY = Path.of(NEW_USER_HOME + "/.m2/repository").toFile(); - private static MavenRepository originalMavenRepository; private static String originalUserHome; @@ -146,14 +165,6 @@ public class PrivateArtifactRepositoryTest { Whitebox.setInternalState(MavenRepository.class, "MAVEN_LOCAL_DEFAULT", mavenRepository); } - @AfterAll - static void afterAll() { - // set back to initial values - System.setProperty("user.home", originalUserHome); - Whitebox.setInternalState(MavenRepository.class, "MAVEN_LOCAL_DEFAULT", originalMavenRepository); - FileSystemUtils.deleteRecursively(LOCAL_MAVEN_REPOSITORY); - } - @BeforeEach void beforeEach() throws IOException { Integer port = reposilite.getMappedPort(8080); @@ -162,6 +173,14 @@ public class PrivateArtifactRepositoryTest { TestHelper.clearDependencyFromLocalMavenRepo(); } + @AfterAll + static void afterAll() { + // set back to initial values + System.setProperty("user.home", originalUserHome); + Whitebox.setInternalState(MavenRepository.class, "MAVEN_LOCAL_DEFAULT", originalMavenRepository); + FileSystemUtils.deleteRecursively(LOCAL_MAVEN_REPOSITORY); + } + @Test @DisplayName("Maven settings should be read from secured private repo") void mavenSettingsShouldBeReadFromSecuredPrivateRepo() { @@ -275,15 +294,6 @@ public class PrivateArtifactRepositoryTest { } } - } - - /* - * Currently not used as the dependency is provided to the container (cached). But - * kept in case deployment of the dependency or building the dependent project is - * needed. - */ - class DeploymentHelper { - void deployDependency(Path pomXmlPath) throws MavenInvocationException { InvocationRequest request = new DefaultInvocationRequest(); request.setPomFile(pomXmlPath.toFile()); @@ -328,86 +338,24 @@ public class PrivateArtifactRepositoryTest { } } - static void installMavenForTestIfNotExists(Path tempDir) { - if (!Path.of("./testcode/maven-projects/private-repository/user.home/apache-maven-3.9.5/bin/mvn") - .toFile() - .exists()) { - String mavenDownloadUrl = "https://dlcdn.apache.org/maven/maven-3/3.9.5/binaries/apache-maven-3.9.5-bin.zip"; - try { - Path mavenInstallDir = Path.of(TESTCODE_DIR + "/user.home"); - File downloadedMavenZipFile = tempDir.resolve("apache-maven-3.9.5-bin.zip").toFile(); - FileUtils.copyURLToFile(new URL(mavenDownloadUrl), downloadedMavenZipFile, 10000, 30000); - Unzipper.unzip(downloadedMavenZipFile, mavenInstallDir); - File file = mavenInstallDir.resolve("apache-maven-3.9.5/bin/mvn").toFile(); - file.setExecutable(true, false); - assertThat(file.canExecute()).isTrue(); - } - catch (IOException e) { - throw new RuntimeException(e); - } + static void unzip(Path repoDir) { + try { + ; + ZipFile zipFile = new ZipFile(REPOSITORIES_ZIP); + zipFile.extractAll(repoDir.toString()); } - } - - class Unzipper { - - private static void unzip(File downloadedMavenZipFile, Path mavenInstallDir) { - try { - byte[] buffer = new byte[1024]; - ZipInputStream zis = null; - - zis = new ZipInputStream(new FileInputStream(downloadedMavenZipFile)); - - ZipEntry zipEntry = zis.getNextEntry(); - while (zipEntry != null) { - File newFile = newFile(mavenInstallDir.toFile(), zipEntry); - if (zipEntry.isDirectory()) { - if (!newFile.isDirectory() && !newFile.mkdirs()) { - throw new IOException("Failed to create directory " + newFile); - } - } - else { - // fix for Windows-created archives - File parent = newFile.getParentFile(); - if (!parent.isDirectory() && !parent.mkdirs()) { - throw new IOException("Failed to create directory " + parent); - } - - // write file content - FileOutputStream fos = new FileOutputStream(newFile); - int len; - while ((len = zis.read(buffer)) > 0) { - fos.write(buffer, 0, len); - } - fos.close(); - } - zipEntry = zis.getNextEntry(); - } - zis.closeEntry(); - zis.close(); - } - catch (FileNotFoundException e) { - throw new RuntimeException(e); - } - catch (IOException e) { - throw new RuntimeException(e); - } - } - - public static File newFile(File destinationDir, ZipEntry zipEntry) throws IOException { - File destFile = new File(destinationDir, zipEntry.getName()); - - String destDirPath = destinationDir.getCanonicalPath(); - String destFilePath = destFile.getCanonicalPath(); - - if (!destFilePath.startsWith(destDirPath + java.io.File.separator)) { - throw new IOException("Entry is outside of the target dir: " + zipEntry.getName()); - } - - return destFile; + catch (IOException e) { + throw new RuntimeException(e); } } + static void mkdir(Path target) { + boolean mkdir = target.toFile().mkdir(); + if (!mkdir) { + throw new RuntimeException("Could not create target dir"); + } + } } } diff --git a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/.gitignore b/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/.gitignore index b8f740a..10c4650 100644 --- a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/.gitignore +++ b/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/.gitignore @@ -8,8 +8,9 @@ /user.home/.m2/settings.xml !/user.home/.m2/settings.xml.template !/user.home/.m2/settings-security.xml -/reposilite-data/static -/reposilite-data/.local -/reposilite-data/plugins -/reposilite-data/reposilite.db -/reposilite-data/configuration.cdn +#/reposilite-data/static +#/reposilite-data/.local +#/reposilite-data/plugins +#/reposilite-data/repositories +#/reposilite-data/reposilite.db +#/reposilite-data--/configuration.cdn diff --git a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data.zip b/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data.zip new file mode 100644 index 0000000000000000000000000000000000000000..070422a114b9040d37624ca7a6485f122b4bad46 GIT binary patch literal 24096 zcmeHvbzGI(((tB1Qd$A&?(UZE7U}NpE@=S)=|)mQx*G%m0qO1*>F$qx&gJUyc<%As z?>+B(|G49CyPv(cu9;agv(~JMB`X02jtT&RyhN1BFAx9t3kiS+ur;u@vNJI^u{WUB z*Rj{3RZ@fpKyiV38{EGfoM8bV;HMw}z%Qf7{xTXg02&Y?^>s9GOaS1~4@RSTs-UG{ zZ)I!n%dq;8-Uj!t?}puulM-*|!wi_u&wzAz=mb&!0j9%J<2^FJ^(3ruw7mZaxm4Kz z$jk%H7S0Wj1|NxiIB{<8=zf(XUbRqxP)|fSMEyDarmQ|mNN?jVPuLPb{3n(w*o*!-WY9Jtsqm9;{3;+Y9NoVF%J05I>Cu4l= zNKd1#LGHj|+2rH2&V7kPM}~{!hGs<`mFjq|uDYJ5pC5@(ES_gz*k{8%EhY3qanmW~ zRXdx#c0M6oW4LLPylH)MwRhWd^+cd|M$_UETzet@=9P9dj%_A&Ub8R@!}>G*q%W^f zEck05PvRx%hnfR_l8TN^?+Z+igxHondXQ%xosw;tpmPI{^<25`2G^_c)(CSAkr1wW zxoW=_pDePtvdYwG7)ACPpKsEh+)_KXvKxVYa19Y8Kot#FRsssT5;o)78z|>HVg6Xm z&UcDKbSGvlEh&CM8HH!G-)j$z){iA_btn1nB(A58re~zBtGy>Bsl11%93<-v`U(?_ z6bTEY6bs4k42|z2Kw%ND#T$$*-~~8;0vesh29PW$XxN|@Hs(7*fW-VtCQzN7z`}o{ z+n7JlMr(5iBNI!zUv>PD+tol~!QBA({vBz5JSxTyMx`;g($g{jI;cL6>mLsaG@Rd% ziUb0{`N5!HCzeKE_ZQ;<(s}>-j^6F5N$F)}%oZCrZ#F8O+I(7yEJBKrXM9RkIz*O< zFag4JFep*zG;hhIK91ms;yDU4%3DQA&u2w^8qXUc-Ecc9?h+FMBC+=lojl=Ub%9P z#Y!Sv&C#N(l2STfhyA#KRk>1Mr6|!%Yf72$tWuG>e(VfXVzVKEB0e*|uYoF&Aex(Q z;C+|6@JgAkJANeG>*pAhnzd-l>npxFMhu^6yDZNy3*4qSc^pc|lLS7W2cLVdeYipY zNXSSleVBlef921{Li_aXvkwMkWjPpzRV6f_Vdw*lstL5U=Oajy>iqhlq@+$b525C= zJ&Y)i4f`}Ag~C@1++jA=PYPejxRBCn@mgm21uoIWu`-HGN|*b+F$-#NF<$F4pW-@1 z?7&lCYff$kJM4I^A)4Diln*w{slc^u|JJF~n0mm>)kel*+o^4^xQQCRNbO`LXJ^8) zao^JTLcl7uZt>)msleiDS|>lr8wa-BO*c1FH)?EgK|*6|26_r>;eg!|(Y?UIx;^Hb zBt@QU2Z}WJx@E*9l~va3*L}3r?k2({4~Ltl6=M47IIC4`b7d)5XIQ^YR6p1Ck9Sc7=>X6|)dl$K>-XXQ4VVJ%&^%5_*?DT9~}eS1QNe*COeUkI^GDh6_y zJ@f=Uv^K#tYmCpFNsug0HATV4BRmNMX@qAf0=iKV zkSu?BQXZePyIZhZX>ERC7tU4`7BW&g4hQk23rZt>&Wrb?KS%c>x4`t!@=%FVOYJ5^ zm(Wp0ljmLC0$!1GuFA{d?)avv98G&Gx!KCuQhn?(ipBQ)1q<@{_@lRKaU#M6Y#Eyc z1*VsE3c0s$Z+4@7rhF~jCN%S={ceaXw|6d#21_a6d$)6UEG^F!3=(IEl@u(U(-bR{ z#oL=~8u!TJ*Zo@Pn>>(*d9{@19d>Ze15l8~0`0$L3mOpV0ruoLcHN7|} zo1$b5X`>BnL#*u=d!#Fir7$OosLnqew;{Y)s@jt+>mszW0$lI_ zH#&@SxT&|ld!Zk)Si?dvM~z2EW23*McpU}Er(1sdpp@cqLP z`EJ4cx;uTlmd?Ne0Qf&xOZBWQ4NZ(3Y<28StSo8t^ez9no=X0BsV-91utQ-*^*DW3 z1C|2G5qt>odLIkkCo4dOd7>(pu zRl>@1OzoL-tFjrUEfzA6c+x&bscw>DWScSpQ;+(1wKmgt*>|#-R#10FQY|E0w_P#+ z6RPxi2s#JL2t|S6Oi1pAWk#;KkR1-v$Np}^EKXD<`dFrZ^&sWSm%LWmC90nC`BV)G zxJVGmk7nCGWDXh-sy?StNPj^l7DMb5N!h((q0NDr>y;TRr1rSdiF)ZVI{fA9tHr@n zu|*_yOu_y{pV#!3`}v8Hi4sA}gA|{-dvK^U*lB|mGAx)s@6l(hLk$QW$m47IPgGqn z=a|fQbFW}#9_HaV%=J0E=aEdW64^$YON#I$?dpOWkUh?3R_uDyhfkIKZpdRMcJ0C; ztxKttd}2CurY-vbEL>)n>z^zs|p z_oLVr9Zb(Pl4o#fnPUC%tFm#kYLogf{k5fwDBx63-p0WArfwej*7ZRy3@LqXjVA4S z)x79qYVm9(NQUFK{}{$7V_AND!}VeE=0oXRqIJ0agjBE(VkiorQWt9jTD0%xlW(ss zPUF_cb4gj_#&>TrYY(0iAlI)m!_zg&njl2=*DS}1pU92ZDO%%WP#IajyV}AmGwXG- zS-nNK>0M+ymZ(foeIDJ;=c6|-rf0qTfHc~zeHvq2Y)g~eUZ`esF=E<)N^27!??V^5 zv~e4}D%Hc~XRO*~&W%ot@d3rBbFtY- zQ;mq5n#W2fg>PTg=3sg=y%OgE&rHq`DXKzoy>RZ9gQcnJfPdCcM<#HIl)nZMkWi18 zQ%Q~U+K9ad9(p%QU>BPW>lW;iAB+l2d1MGvlhB#6%}=vVTUwa{j1(j|*h zndR8j2S3(^v`~u|&oMX=h!6#!eLT2)as<}h{DAX`Np-@~p%lUFN5*$Js117cLQ^HR zYgx%78AJ|K=;}()?!-?iU8&G3bT4}S_a2g5!?_0tq2c!^qIy_?V>?z#R!==TsOXQ` zWT!>$o}n5++MwIk4pJLphV02I3ma#u85PMWvj;nwM&QEIFNXqf9+*G#V`AYj-`=a{ zudDXcJP2pX?W*dum?Ynr?jBXUh<)A}i|d%b;japDps{ue*$8UT9t_WXSxBm^b?fLU zwD%&AufxR?R}_8W9ZotQi_lcx5_W6dT#!_d>(&)MjfEwuQEm)wiF?H<$)R6OF&q)(h8es;B0*yB z?wwZB68Zp*Oeweu%?}Bl+1QVY54?{}3o0>3U(3Pumh%Czb^yu6xzS^r&KwDnk(o^j zYRGXY0Taq+gZM2(+4&=zRqM^by2zq#gKFyGHwyCPDz6GIn z6n>fK=djoV6^Z?+>(@S$PoAiWqr{B`;@vX7>p!ePLH6b&EPhX!)uSF&J|X)Ve?Kig z0D?S>YUoqVoMM5^maH}6Q%}C63s9l1Xf_?%QwlxIm=_rh*(WF=A)b)qXqu!4>nE2> zzZ^s+U=JtUApij2g8p?E`F5!XZdE_>#qI3x7J0qD;ETV9`+96>y4(23f3Sbp8SB^@ z=+pdm8!@%B`gI?%m3B3_e|@)2Z7a^3P17NH?rQ14VNqv^NvN8@xx+$co0Lc0dXRFK9=?I=d{Pz2t=e?CQ(wO;?K%nTi-cnbnj%Wy0Im5!fJK%n zvZZ^$9Hgkn7^E^8Bx0cyV9zFt@a3hLfPedR(pmd)+^bixh=^%;CL1JEJoLRjh%ceM zcp9ERy2^)1d?u9~!W!9@MqWNhmSt`I3@4@P&{{PXMcP+Hh?yeDQ5Ku7vW+bxrYk(; zX$TW$*`vJlML32q1m^{Yf>0CTd9=7(4I2|q1Mw^E)GsJR8yX!6>_&T;!zOPnayh)H zH=fHJyMiatcTrX4wiyV?<4shcwz>F953+M|alTjVAT$K7gP-YUZ z`eK)#x$<$u3u`%rF1YvnLW!?d?=XZcHZFlnCTS}frgH4D&&#TC0IAV>CAkiCT=p2( zHu3}=vz1a834+fgQ~jF&O5?Y6VXo8~_Kybq1#nfeuOZrl@Oez?8|jGK@dZp7otThYSWx zXA_~9TL4(>mm`PCRYq=LSI(QChm`_Lbs-tI_t4DnJ0Op;P54lPThD=Z3CK{l=XP|#%ghM((f%Buz|Y&mZpiwEw~X15IEv@Oi? zsGO|&_GWqxeK$P$S@ji^D@(*iGoDfXFw-$c472j5a;V$WBc~Cn<{PWh>N6OiUlzbc zS`z>Y0033|$IcVnokjgf`Tudc{pLKXqpxpkU}yJFC+ZIlrHr2#0sNG(V6b3!7@?ry zyjvvi%oza0^VO!m_Y6sXV1B=%{)cC1YhZ4mWB09#_@{BI$6&Ai85sbEHvSaHZ$lVQ z?_vahfMYw3Ub>wQH6Trb2o6sFsctt~&j-}Ebo3{nOj4r+*=z(YZBY^}8rnv?EyS1) zIotAYef`2viL!+Ec)HI6PP<$pqu59Y=xcf|p5i|gV?e0t4(+hsXsve*TE!-;%Mw!# zKU6$l*Tu{c9NFC=L9^#KvbSh%rogZyPdf?JW2P;HX(C#q5F1j@t|KT<8oz9x?jqEp zFpH!x>>tf4mLVJ0dz#G?>sT&5I9wcEip3+UrCj7}t6GqpyGgCVK7K6VCM-Vx{EdZ7 z?c~`_G_OJRO@p%=Tdi8vij*OBbl(X^^TA8{*{7J@DaTc@N+ha=k8lj-Z z*zvJj>D3>>uDDtQB-maMvIS7;xmSR*;DV~4PhE{ zqwZAacQH)TKhqdHOC4)FV=McgJyrY&3GtsHv9>jF)Uh}C3(?bWceCcZz3xW`mw)VL zCYJgJ&NRmM7Uq9ua}J8FmPvd_jhB=pib}}cn52!02&F3=mLaB-kv5N4YXU&3d^GCn z!G}MbpCC*~Nour%7|t*EB~7Z%piJ)o8rq(%#VpzAE>N)r_TH?LLVF#Os&3{!wqjFw zlKu%(0AD~+8~KG?Kd9@MS2S0A*|n(FlUwboQYDVB96U#j70bL|D&b}M2oMHa!#|XH zXpN(7=?x35ADf#T49Hj^F+twecMbcnEd8_?j*#aKt!+rA2MOJwVM7zL-ht2ZYlBI> zu+3D((rC->sRY;M?vH5``d8cKZjqT|>3b@zXfcg%y;oPLv?&jg%8;`_(J6^OewcE} zuURD6@r{inPiPY+U6~?lqL3_b@bZwqz63XYf}$PfzUL0x^wND`mxTgx?qK@L69)0k zdtD|qR}|beSj+(<*14gi0kVq+Zzc)dPYqc$_)M{h+Z>8NKmI`WE-7TO%8y64_bE|z zj(s>tgfri0aE&&-09BeC48;Rm#Yf}EC#GeXEF9zmH99$}oMc7P2Gi}*UEH+^5pfYt zC{zAaIF2(HgIP6Ivd`M38~H7Lsb-p3bOHicSaihS)K)z}nM^C}3K!!j z5cQ)=T*OxJtzic^jnV~j<*4VzPz*7q0Ne{XkLvs+W%~|pDTUNBQ-EB^R=XnAYH3Mr zt0bcLNq0I2(KS`YqMVQ+G{zd+;KI~I*osYmaVA4XR-o}y@-IOKT*SS(!vqWXU}-QO zQx^UuEj6MEQ)*30Oo3;#yPA7^EWOoadkM^5*{@(+2VYD-M&q4Q8K1;LA9qO;tKK=e zaUM#`<(9X!wb6e9W6XHCNLi7`isIFeqfUSuopueN0U2ejmFy2=${5NfA+(mY|1kjuGePMX|np{ z_)i%YKeSSH@|=|Fo5SFjeSE1Cpc=0ffNC%=flMK`3Qew0Zc9WYRwj*%Of1AycEZh( z+qCP^Jb&8MyxZv2Y?QiQo3_I;6nSC~^{JrFf+R+<9S-t&#F zy|pbCZh6~s9MD7rwJsJQ8Xw~ze871g&T>6U4Mz~gj)8j*E?eqs%*Kvd!Tz$ZO_06@ zi3{xId#H!xB;sjUiLYBa04T(W8X`4%dBmxF6=CU%8idI+)(`R7+5yCj3MDpd$l83J zjC2du48Z~-0ZC-n3!&htthqYk3%Eotkx+<3`w+EdM2t#^V*;SI1Ro+{V9z_*oBkOa32F|6f4e6#>t>5vxfm=Mlr;fpWtt|nP+squsLe-aEQc_NwPeKA~7d911-~+1-K};#EXb^>- z5A9(>#;gfvM|ryToaahwzhF^>DqQ2w0+*dUn!oJ=Z9ub5AhU3V-@|w+(JKXOod6== z%Lf+D*S6>t$srFG%tv2ywFxgy{MCTZoXi)$kN?7Qey{D+FvEt?;A zA1&C&RL7X38WB4gi=2baiBGzY?|tOf1Xs0h=Budrf(K26RXr*ycS(5qger$}4Q>!Aknm>tRa^b&TqA0x?0S1^R_( z?Ti<%QGKf9Kww`T>uguGwzlTJ5fTzYq1aed#9EzBt!5Dy7vC7_j#lpmlQu(^VbAn} zLx6{0#bG^ZWD^K(nn5F5T3V7%ijP0r-}=aBr7b7)zMtY<8KDq&>QWwoU&V%B;H%=yI}L`xdt!A3d6n-rlZ?=stdiEXL&9PHt}Q zJ}det|K07`{&Eo5xcG;CH;J44m-YO!SV$h%AY%s@?lGv5q7~NUF5OEW*aE4J=po0x zZZnhA=I}yBQf-f$b*963=GRF#S4&qOJ+G@%!@}gGEGMSXf`o#RW7tD8HGltOlAK9tFM;&l3hUE%n2_&^D{n#4q6IDbG^f zlL~M~oM+_+DU9~CFPfSvYhzQmZdcGjpuyYPE3=CzDYR8c3*OaUrOq)_o%nZUKS5>p z3(>48uyxOnXqIQqO3RAgLW;CMmOsb!Qdb}GS5G}ZJK7wcdinC@I6b{PD&(8Dz8FQ^ z*UU?6eM!}&WkYG45`9gIy$)O+iA!%u-iNDllao0^qB-&j3NDvQu7Yj6lIUjVmyOi0 z8Ix2!%oEknNO7|*=!n;Ie91OXX(fS2WT&gEo7woF+PjI03J&I3L!uUcW968`{=sv4 zEV9$udWY^dmGD+wc;3w~SN$=xbUp}Z7#OFmPpFzo$n8^arZ~Ig=$U5hK6Hz5aFVVw zSjo{`R|Mp&6^NUgMac*aclLx%vI@9Q^uX3T?G{_sxY#A$eqxhMfq+|H8H*uCL9hz* zXIe4yy7n&Ds4&pOruOAkHwhMS+2@JyjPR0v)F5&U3ypZoGRdJ?J*~#=MhNbIFXXS6Ln!B3fznf*>x`iZK|&@d;5;2kx$}&nc&iV_vaJ4w;!q#gaGJiGT(_ zZE|hk95gMSPcrop*ylDiTb8j3#lb#uXT+7pH7c8=-rg1f$6@!|2&*jE<)wQC6C8Xf zu`~3@I|>E1*T14p1@{G2+GHseRic|S*ORF=@Cde#t37-iB{5|lv|7Hf$vOQYm0}bU zL{G5#OO#aIx$~CgJgHRRF>meFVYmXtj4o5D|@3HhneLt=gYQ+XL|+lN!ZY6qIHi z`-^Mh=7xrBmpY9GCDrncCVJp;2<4|1=5Y8~lSiM1)>hAsB;Z;?KtVNkzhPP1c}%dW z>gv`j(fwhsOQ&OXRY=xeGX;J45BB4Jd?;aR1+98838xFO4ROh@i^QNGH zA?_+3Mp=B`TM;+uYzmEEhJPaAtG{%Oi#kJzYHT(!hm}s{S140nuR_kP5Z6$ zMuldvpF*!|t7@U9rj8O?`;uCs?_eU1nuLG=XvHlyTkf!J@A25qBVSmBZEsIt(8eqk;bN^#UYFbmHB70PRFWfjLMRygBNfwnN6 zIYZfhN_lPGZ*(;Jj6d5uJffYT+tO0L zramoaqAUQVeH34sTJB>-WMt&aj~{zjeJ!&+suLJ@7@lx%u4!kCm56>26!!70s5rv6 z@tLGiFr~IzbGIU^O#e_VKsRkk`Ie4p+a=L6t+oVnV{t?PlSw4iiza>D!|IUU$cI(x zD2`DprLj>6sWxk^E)-+ce0v)sry8TX%bVZgkRPu_e`azh9?FdrJy^j$jqi;g6k0R< znNa8|pT`+r`qKiN#L`gt9QM%cTlqU!4EKw)YrtfM_G-ByYTIHy`A{pGbf8DJwfOtZYXE5zA zll8e**n~>F%Nyj4p||Vhi%+U4regFrBA%23X+bE_P>nF5&y%ba%&jY^Y(i}mXjw8W z(-9;L@~#l-_{1Pe_!?dxD+d|4@X#;}VS;lgi?p9^fa9G2#8xY{smTl)iQjF#K*G+9 zV;LNxdf%6mOGJ9;C%v|*aQ;Nv`IYzeY{K#W$&UR*)y^)n_I`V|L1zccMeF{d5oFb|q8F0v(U8_P6{hD&wxV=0h1*!5&JR=W_ zAWcx@HKmVHdpImj4OyN~H8(DZ*16?ZnkVlt`cR5&Zt;m|qM@R$?5fP=EO+R_krjv$ zJ=Q{{bWq^^vaC=N?Lqp+=la~Va6wvA<#wM*1z;*|LqK2|>=*73CPwl+A%t6?XX^#e z?&c&YKp@X!8;RV~9Xo08p*3fXOrx*4;>f3#)*<5xqlm>L5oST6N9k#MVYjt)bNOlONVr_~}R!n9SK<5{?rt`RqzFBygQ(R4h#@z^CJRY)%AGoqCiE zg%@!-@-y&Xs8*ZqyzeDBcu%v7!5EiQ;p{`26!>6vB-r7iw2u@FNszi%6tgu+^Yj6v zb_@3xJ2=0pRVjt58@CB02C6w_;x!N>6aS7uFzt2z$r>{5@(&7pW-BF~yOg?Ci2b-|(AB2SX>FMcdRXzE@HXRr?pRur{HXvF^p%-f9Z!O
E_RX0X$T+N18d@pTHO-)0lK{`F!p;7U0Hik+y4dN>1y%{auDXQ!uAi&_GH@NYz zi2@SM8Y05j{f{%>)L%k=0_m1IJ?9Ql=rxGCS`^ifDk-t-D^o4A@q>rgf#Dcrv~X@m4q%2bZ7F$r?JPQ#BhKm%-ZSEi;D};=wizSH{>Zj zk-F%pD9Pp`YWuFwNs-m{7iVk~n1O+7IDEGDuZo+R-hse3*3fEduPd>9e0nGIEWM=l z3kn;HFo|JzD>W>ctCMLfL%x{j?+Rs~PNE;fO-)XF;Zo{Uu5<07K74pysG(YKvpYD0 zt*)WrkuBp%1lAcQB_Tyk+32G1;p8AH)FI;#@A&w7^{pFN7k(k3$c5q(-QnlS*6o>B z8!2vm(uMrXbkFa+%_b?Hg3~vuJ3Bj>CMXxMu&@Dvl1-^tm}hge^+p4+jAW9q>d~iF z%T$-GejdFAxyT?{$soyz(tWnON^ETG=LFZfp(j~W3whwa=7e@RTJ`(bAX$0VQq%qY zmSE6;6b}T}=h?mmgkyj#jK-A=b7p4k2EoCjv8k^5*)l;R1n0FR;i6;?$f6ohybEH- zy*OGe(>Az+W<(aDqy+8(N|(9)t6H|Go1IO6WvZ#lj=o46_*pt=aTRC+B0uG~~}Zi7NOHxa1EPEH#^@;Ose&~Ek& zJ4_9op%O|;O3bu&ydCn0&VN}2;Wz-^zxdI4TCgED;HOC9OL1xcWWoi*Hq?M0s}+-4D~mo}$@vZ10r zUymIpGI8kK>}a5_U*%u>lw2>uJirUXSGW#>lXmr1x%ZibnTl7fjL|lg(Ps4f3_(s9 z4vh9P#U46L$%@KP`j zmEGJl@whY2;NvVmnii~qFu#3&*dh{3|CtL}*6*VIvt}*7-QyY`Cp8d#cVSU)t3ZFY zPbIko<$-~a;;7(*s%wGS0Hk>s)P^lGR8xaAu@`Eh*}2Je0Rh@y_U+x0A_PHvd~B@X zXt)!f#{cO+_n3sinG{e~!K7XTg=%rLq8LhH=}?7s!61?2!oxML0JrJ*XAn2u4~60U zY<6>DH%E~MTVXO!iD&~?8mmewJOCx1$96!V(w{Oo#_I{L7=KzG(oEW!IZffVoy_X& zWY;_pfX09E43{gfx3BEo-4p)u&B7*Mm%bj)o6v4d5jT!c^pnrx1|c+t!cXke^%z*G z^$vB^C&i}*QxUX0%8j|C8hZtA(jtBmSAbqyPZ` z^!^TVEOZ~(-m05s13NHra4{bBA?DMISbvXJ~wlYL79<%0&_KU?bD5SH== zW3ng0Oqa@sw6c0AW;5E5M(Y7KIZ=57d;IBxC+;UQ1otnLd;bMK$fj2#F-7xxEK`L$HGf#Xp5ixVi4(<#(1 zImPw0S7mn^4V=iYE77-8jCc2|(f`gA(^%*;|B|2pPBYJsD;>)v#Tg~5=$IrJBv?ej zh79vf$kzf4A#=#Z&^ry$g@0LI)5kkxfMf$-KW2*T?ib_#C8qAGW$6EmD~MJfkQO{> zu#&h36tQ+KgSRrz%9ISDSPS30)-={CUTnbQB;Ds9Lu*|Rv-y!1ESjQ-ulwrM>SXH3G z@rJ9&uNcrgJrkGhUI$V{Vp|nX3~n7iE*c5?1G*)5PS($5&3*%G<)>kF4kJxNMKOZwFD30l@ zOjsfc{Bs+lxwo#;#^hjRFQqk1e8a+uNHS!i$bLpN2IB*c!QGA<0( zLOYsoi@$@gd&S~`9f>Lgyy&wM)?c*W&YgcW1Oxy8>d}vF z`vuH@l!lq=*#1+){-A6IcF)joQCE9GTl)+<=5fC_IGfMJICF>G`0#)fFCb46Jntn~ zAyok9vKl~^11U)8Rm?fZg-cy6WZ=emoyQ5c-Bg#F$}YjX>f*6l#&uSxN9y#RdljMs zy((S9r@EVOsrhl;9U2B8y~vhemhQ^<-EJgHTAB5#V*H;Q4LECFeReo_{4O<+RxP&s zFgGHVfgZdCr;eKZ(fbT4zU1Vzf(SJTL`5M}Aze#;X^JN?OU4um^04xU^74mKl#xss zfvCK;NGl|<*=vh(g#r1P#u-mW1h_M)Du|}wz!j>~$#^N5Yr)AW_)~dxcMe7q9~u*( zfcYU<4%D|K^s@)QfA89jSH`+fIFAqI<29UIV^{4+6*SHHCb&FShvJleG4x|^6K$Uh z^X5=idbo$eXx5AK?Z;;d>npZzvDut2!p_$&*A+g0KH1f4I9zxMyI$BS)u>Kv(fs_# zDa5Pdj9{IFD!%Q|%uMEU=PPI z_1jim=j&VwN|)~w(I3xgFHU0He#yu?>_6wG9gs*3s(I5a>5@5{+d`g1%33phPV0f@ zS+kMU(;Zsob!2p_+PK$&n|)1N?J)o!U#}@&?SA2J6=j6X>OzO{R%?~B-m$Gt3~}uU zf_BQh;_cIZF$$Zw6Qwm37Nsb++*E~T{8_S&>Vwe%Z^!ilS8U2BX7NVcdDge>r!^y- z>qU9z@ALXU6Y7*}^>g>p(sQ;uH;qcO_OcV0<*;!2H*y}gaS!kEf)OC|fGk(lbncsC z&>@G!Kf=T&3!Vl|?+KYn9uq6Q2}FB3HRm;+>LBAjK9Ep^MTxE{2_vm}BlqQ~vt14Q z@xfh&>#j1yOm!yLWx(vD3~QE|e758D42OxWSQjZurzmwJs=|Qt{y|cm>V|}~> z%(tD8xDn%w_NWF*90L+FV{Ev#48m*2*JaV?BHMx?DGTb|fQDw9Kpqct~tM zUB?QvjI>lbAXdHDW7#*1+jC?pPnp?rNh7|s(feE~eM?tx>-3uN&;X%~*Zz!$`piQp zzKUGs!2Nio}>6FuhQMZk3FLAB7R*B>DLlud3#nfPK)dO)G@x_sB z-OSB_)cM!0#OJ=-)x=m5#}Ox>!rFEE`p7z+8u)zPfOa(z$dS(=S@2E}AYc-YM{N`_ zKA`JSE<8kk_X6Xz#$hjggDp(%YI%%2JoAvU=`+AdbpH)z=KG***Onqxcp*Es9K+;M z2usGhD0;F~MZ&WJ#HWgS1$;dPVi8OID>`SnL-n_U41k z6`JD-*80#r*?{q+L;S^iD^7fo_~5S81-Op?c!dXgJ`w*>J_OCrIe9Q3fIBCzMV!F= zSzxsn_-=X?#lv`q&*46&wG|FIpTI^PYS(``-lEscu9Dty`PIk!{^SFk9q0d}IiUIP zp7!58?Z124fA_Ti?rHyHdm7T+dB*y0U(f$~SnGXM?_EhhlF;dS2-#(a6eT$9I2sms zlJ7`tBNifYj8<6+#T9pSmJ1VfFb?Hbe4L-b!}W}PNcIb~ce z2=TEC%Wr*r6vEftVL7D2L1apVPIS7c{SXRVjV88$OKWEJtayh!!Bu0*%wHlm(J+v^LD3koO7L_j~iPXd^mj7%x0*>Z?Fk5 zXehO7zSwsr6DS&mFMf`jRUB@V95fR365zHw-Oc0e*{<4;OA6gY%rls>z@2v-cz22a zqD$&x%W#kt7?CNQ!ZpXcJCg!s_+yU+?`|&-|J$YeSE3$26Kj)Tkg6=9lV%Z>VlEMt zC}(1kk}hXrWMz;MFQa2*kY)t7G($nZV|yt~aK|5z#~*Y5ALg&!c`rZZufewk!vOH$ zz*=H1h+AzQR9;4;&!E{(Sa4xQjx&4vtfi!(FMXukZ1o~&JO<b z4f60;@0$*Bgbhsn7W#%1nW_V8*wY#tO`ggqLSyS$YbFm+ntOz4N`EfR{~&t?YV=RU z&KadxBqb^&rOGPknC?W(Bqo0M1wAvJjHEOJT^SP-(0-wyp^623zseZ|6cy}`FH5>p z>R(`+ANcmQC+=sjPWp9p;MoRvdD6G{?Eo)Nx`!+u=^u>#+nne9HA=wu@48N9C4P(M z+xv2Wm-pO5mJjn?m&O0YRX+C^fg^w0*980wyocu=w)to7Fn&L6KYuIFSK)k*1=tIG z58M0VbPxAeo`7B4-?q2{ z8(Hrm%LfJV2T1Fy!Rr{S(c`g;!ldSBhQ_<*YOZT$+c&gUMoe8Q=IkM9q}_&=gV zz#5r**yjI4{nOZgu43ko6$w}~a}V46>@k@PxrZ#D?f)gBf9CLXPc@Lb?>7Ws zrO7>P^Y=3R4O9IW>rQ^F$KO^A04q=KAe!i2SYbs0sbY z@b#NyMISK-$oXJk>Nh+~un^BLjma69a<|ZqK{G z!@)TxvA9?-8ASF5ob@~8An`jsYQ9ol>-M)zcJr@|9nba-Tr-ycOIN^;hfdDsh6vy?N^KbPVtWxU*z0` z1ygu_ZS6_DmVDvPws>bzQ|4v7+-8SeC-~TYJhObWM@6!s@W+TF2fNF6xBcxn|D0#4 zYQI?1Lc<#@Jexy~Jrs4`Ilt%SdC3zIcl4JjPqh0KIA!zX26sFErLV#d7kyJXc~SO{ z{_H=i7oPZ|wEyL{@3{eU*GuY_PrvX@@=W3;59UJkt9)nIPFOeT!JNL}MVpOQmB=|s zCGOI`%KXZvN^^W~Z=sr(U>c`uzu|W=JG_0%p778po?$z(^=!W?*oj zByJ0UDXAhir*%@S|6v7@w)fw)XWbLu^>b$H#)^d(Q-YJ1e-t~t@$eRhhP==BxwriG zS{C_&G@N;fejw@#W|((%cJF;Yt}#ndxiy!>XV)l%j~y}z0+sm_~LHc4;p z<>VgeZA_gr(w+)UFcPh+oAtPOO1suXnfx_3F24RMwf4M{`Kix}b@R`2&A+k1$K&-3 z9YtA{&hrwtHO_~ejFEYLzwBiGkz=3y&M3A2v0l25J5!|n*V@~&k4YSKzoif`HE?a+ zgDoMvO}yD9ydBMKC--{ZXUTuun0l7t^><1|;B|18$oBTMG;C#`KgXdR<>)DB+Yc(Hk+ppgHT;+%VGVRMhUu?g&i0!g* zNrmf&mnTl@9QR>;7ZN7VDgEHEXw!k#Qn#8d4?h*FMY8gGTrW3RFjdrV=6k;nlOB|; zPYW~3oqj5^iS@qW#SKZ)UU6lAuAQEj?d$t{e#r0h;rdfcA9r7TVRW3mmHBFKbN_S2 zAKM?6FS~q@A5m`Z0A@BV#WH1YVEhIFu{)*l49w33sYNB3sm0zpS|@$Hee^#1Z1nZi z^*HP8dDeT~6OO9(w7Y(${71QhomX)zUDPXJSv5yi%M}ICZI*X!^6~H>F-l zzF_-p$;MLsqrHF;m@XNaM3`|`2tY>zfdIo>M-YuvJ%F^~t{^~)L10OvI*^2GL#i&2 zEyh;BgSCS#UI}DEihG1p(RF|dd45}ayn!_ diff --git a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.jar.md5 b/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.jar.md5 deleted file mode 100644 index 49cdda0..0000000 --- a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.jar.md5 +++ /dev/null @@ -1 +0,0 @@ -5c1fa9eb9814ca94bec1d507acb02910 \ No newline at end of file diff --git a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.jar.sha1 b/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.jar.sha1 deleted file mode 100644 index 27e7477..0000000 --- a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -453d6aa069f223e17d5505601a3a3a7f576d61f4 \ No newline at end of file diff --git a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom b/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom deleted file mode 100644 index 78420e9..0000000 --- a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom +++ /dev/null @@ -1,25 +0,0 @@ - - - 4.0.0 - - com.example.dependency - dependency-project - 1.0-SNAPSHOT - - dependency-project - - - UTF-8 - 17 - 17 - - - - - repository-snapshots - Snapshots Repository - http://localhost:52260/snapshots - - - diff --git a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom.md5 b/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom.md5 deleted file mode 100644 index 940ac3b..0000000 --- a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom.md5 +++ /dev/null @@ -1 +0,0 @@ -b5e883c0ee08ff935cf96727bb8623f4 \ No newline at end of file diff --git a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom.sha1 b/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom.sha1 deleted file mode 100644 index 50ec63f..0000000 --- a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom.sha1 +++ /dev/null @@ -1 +0,0 @@ -534f31aa5ef763fe4562871d4dbb167a5cdc26f0 \ No newline at end of file diff --git a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0.jar b/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0.jar deleted file mode 100644 index 7e3c1683c36f46a4c97f2fab0989bd065004af28..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2436 zcmWIWW@h1HVBlb2_#BlQ&VU3sfoxyb5Jz24KR5jVpfVAlG7hk^819U30YK?MAO?ye zl=(XPdAhj>Nh+~un^BLjma69a<|ZqK{G z!@)TxvA9?-8ASF5ob@~8An`jsYQ9ol>-M)zcJr@|9nba-Tr-ycOIN^;hfdDsh6vy?N^KbPVtWxU*z0` z1ygu_ZS6_DmVDvPws>bzQ|4v7+-8SeC-~TYJhObWM@6!s@W+TF2fNF6xBcxn|D0#4 zYQI?1Lc<#@Jexy~Jrs4`Ilt%SdC3zIcl4JjPqh0KIA!zX26sFErLV#d7kyJXc~SO{ z{_H=i7oPZ|wEyL{@3{eU*GuY_PrvX@@=W3;59UJkt9)nIPFOeT!JNL}MVpOQmB=|s zCGOI`%KXZvN^^W~Z=sr(U>c`uzu|W=JG_0%p778po?$z(^=!W?*oj zByJ0UDXAhir*%@S|6v7@w)fw)XWbLu^>b$H#)^d(Q-YJ1e-t~t@$eRhhP==BxwriG zS{C_&G@N;fejw@#W|((%cJF;Yt}#ndxiy!>XV)l%j~y}z0+sm_~LHc4;p z<>VgeZA_gr(w+)UFcPh+oAtPOO1suXnfx_3F24RMwf4M{`Kix}b@R`2&A+k1$K&-3 z9YtA{&hrwtHO_~ejFEYLzwBiGkz=3y&M3A2v0l25J5!|n*V@~&k4YSKzoif`HE?a+ zgDoMvO}yD9ydBMKC--{ZXUTuun0l7t^><1|;B|18$oBTMG;C#`KgXdR<>)DB+Yc(Hk+ppgHT;+%VGVRMhUu?g&i0!g* zNrmf&mnTl@9QR>;7ZN7VDgEHEXw!k#Qn#8d4?h*FMY8gGTrW3RFjdrV=6k;nlOB|; zPYW~3oqj5^iS@qW#SKZ)UU6lAuAQEj?d$t{e#r0h;rdfcA9r7TVRW3mmHBFKbN_S2 zAKM?6FS~q@A5m`Z0A@BV#WH1YVEhIFu{)*l49w33sYNB3sm0zpS|@$Hee^#1Z1nZi z^*HP8dDeT~6OO9(w7Y(${71QhomX)zUDPXJSv5yi%M}ICZI*X!^6~H>F-l zzF_-p$;MLsqrHF;m@XNaM3`|`2tY>zfdIo>M-YuvJ%F^~t{^~)L10OvI*^2GL#i&2 zEyh;BgSCS#UI}DEihG1p(RF|dd45}ayn!_ diff --git a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml b/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml deleted file mode 100644 index aacf348..0000000 --- a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - com.example.dependency - dependency-project - - 20231105102337 - - 20231105.102337 - 1 - - - - pom - 1.0-20231105.102337-1 - 20231105102337 - - - jar - 1.0-20231105.102337-1 - 20231105102337 - - - - 1.0-SNAPSHOT - diff --git a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml.md5 b/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml.md5 deleted file mode 100644 index 03c2d4d..0000000 --- a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml.md5 +++ /dev/null @@ -1 +0,0 @@ -40910b0eb66467f44ca8792bfe5a847e \ No newline at end of file diff --git a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml.sha1 b/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml.sha1 deleted file mode 100644 index 24af63b..0000000 --- a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml.sha1 +++ /dev/null @@ -1 +0,0 @@ -6262ab25ed0f7e2128fb26fab1acd090c535abaf \ No newline at end of file diff --git a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml b/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml deleted file mode 100644 index 10b9e95..0000000 --- a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - com.example.dependency - dependency-project - - - 1.0-SNAPSHOT - - 20231105102337 - - diff --git a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml.md5 b/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml.md5 deleted file mode 100644 index fa762d2..0000000 --- a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml.md5 +++ /dev/null @@ -1 +0,0 @@ -9bf1c816b6c0f8166efd71605db83682 \ No newline at end of file diff --git a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml.sha1 b/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml.sha1 deleted file mode 100644 index 3aa41af..0000000 --- a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml.sha1 +++ /dev/null @@ -1 +0,0 @@ -4fa1150761b6af92a0b232fe8ec688b9e90d0f88 \ No newline at end of file diff --git a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/shared.configuration.json b/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/shared.configuration.json deleted file mode 100644 index 90c3c48..0000000 --- a/spring-rewrite-commons-functional-tests/private-artifact-repository-tests/testcode/maven-projects/private-repository/reposilite-data/shared.configuration.json +++ /dev/null @@ -1,75 +0,0 @@ -{ - "statistics": { - "enabled": true, - "resolvedRequestsInterval": "MONTHLY" - }, - "web": { - "forwardedIp": "X-Forwarded-For" - }, - "frontend": { - "id": "reposilite-repository", - "title": "Reposilite Repository", - "description": "Public Maven repository hosted through the Reposilite", - "organizationWebsite": "https://reposilite.com", - "organizationLogo": "https://avatars.githubusercontent.com/u/88636591", - "icpLicense": "" - }, - "authentication": { - "ldap": { - "enabled": false, - "ssl": false, - "hostname": "ldap.domain.com", - "port": 389, - "baseDn": "dc=company,dc=com", - "searchUserDn": "cn=reposilite,ou=admins,dc=domain,dc=com", - "searchUserPassword": "reposilite-admin-secret", - "typeAttribute": "person", - "userAttribute": "cn", - "userFilter": "(&(objectClass=person)(ou=Maven Users))", - "userType": "PERSISTENT" - } - }, - "maven": { - "repositories": [ - { - "id": "releases", - "visibility": "PRIVATE", - "redeployment": false, - "preserveSnapshots": false, - "storageProvider": { - "type": "fs", - "quota": "100%", - "mount": "" - }, - "storagePolicy": "PRIORITIZE_UPSTREAM_METADATA", - "proxied": [] - }, - { - "id": "snapshots", - "visibility": "PRIVATE", - "redeployment": true, - "preserveSnapshots": false, - "storageProvider": { - "type": "fs", - "quota": "100%", - "mount": "./snapshots" - }, - "storagePolicy": "PRIORITIZE_UPSTREAM_METADATA", - "proxied": [] - }, - { - "id": "private", - "visibility": "PRIVATE", - "redeployment": false, - "preserveSnapshots": false, - "storageProvider": { - "type": "fs", - "quota": "100%", - "mount": "" - }, - "storagePolicy": "PRIORITIZE_UPSTREAM_METADATA", - "proxied": [] - } - ] - } -} \ No newline at end of file diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/.gitignore b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/.gitignore deleted file mode 100644 index cc73b93..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/.gitignore +++ /dev/null @@ -1,17 +0,0 @@ -/testcode/**/target/** -/testcode/testcode/**/.rewrite-cache/** -/dependency-project/pom.xml -/dependency-project/target -/dependent-project/pom.xml -/dependent-project/target -/user.home/.config/ -/user.home/apache-maven-3.9.5/ -/user.home/.m2/repository -/user.home/.m2/settings.xml -!/user.home/.m2/settings.xml.template -!/user.home/.m2/settings-security.xml -/reposilite-data/static -/reposilite-data/.local -/reposilite-data/plugins -/reposilite-data/reposilite.db -/reposilite-data/configuration.cdn diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/README.adoc b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/README.adoc deleted file mode 100644 index 094c99e..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/README.adoc +++ /dev/null @@ -1,36 +0,0 @@ -# Artifact Repository Test - -Test that artifacts available in a private artifact repository configured in `~/.m2/settings.xml` can be accessed. -This is important as many enterprise projects use their private artifact repository to retrieve private dependencies. - -- A private artifact repository using (https://github.com/dzikoysk/reposilite[reposilite]) is started in a Docker container. -The reposilite instance has a user configured (admin:secret) which can deploy and access artifacts. - -- The repositories in the artifact repository (e.g. snapshot) require successful authentication (deploy + download). - -- `dependency-project` has a simple class `DependencyClass` and gets deployed to the artifact repository. - -- `dependent-project` depends on `dependency-project` and has a class `DependentClass` that uses `DependencyClass` - -- `dependent-project` gets parsed - -- The resulting AST has the type information of `dependency-project` resolved when the repository information and credentials were read from `settings.xml` and `security-settings.xml`. - -Technical requirements: - -- The port of the Docker container is dynamic and used in settings.xml and pom.xml. -- The local Maven installation of any system should not be affected by this test. -- The location of the Maven dir `.m2` must therefore point to a different location while the test is running. - - - - - - -This requires temporarily a different `.m2` location, here `testcode/maven-projects/private-repository/user.home/.m2`. -When deploying the `dependency-project` the path to `settings.xml` is provided, pointing to `testcode/maven-projects/private-repository/user.home/.m2/settings.xml`. -This file declares the location of the local Maven repository pointing to the same dir. -Because these paths can't be relative for this test and absolute paths - - -The `user.home` is set to point to `testcode/maven-projects/private-repository/user.home` which contains a `.m2` directory providing access configuration to the reposilite instance through `.m2/settings.xml` and `.m2/security-settings.xml`, diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/dependency-project/pom.xml.template b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/dependency-project/pom.xml.template deleted file mode 100644 index 920e5e6..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/dependency-project/pom.xml.template +++ /dev/null @@ -1,25 +0,0 @@ - - - 4.0.0 - - com.example.dependency - dependency-project - 1.0-SNAPSHOT - - dependency-project - - - UTF-8 - 17 - 17 - - - - - repository-snapshots - Snapshots Repository - http://localhost:${port}/snapshots - - - diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/dependency-project/src/main/java/com/example/dependency/DependencyClass.java b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/dependency-project/src/main/java/com/example/dependency/DependencyClass.java deleted file mode 100644 index 67b1f0d..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/dependency-project/src/main/java/com/example/dependency/DependencyClass.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.example.dependency; -public class DependencyClass -{ - private String value; - - public String getValue() { - return value; - } - - public void setValue(String value) { - this.value = value; - } -} diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/dependent-project/pom.xml.template b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/dependent-project/pom.xml.template deleted file mode 100644 index 797073c..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/dependent-project/pom.xml.template +++ /dev/null @@ -1,33 +0,0 @@ - - - 4.0.0 - - com.example.dependent - dependent-project - 1.0-SNAPSHOT - - dependent-project - - - UTF-8 - 17 - 17 - - - - - com.example.dependency - dependency-project - 1.0-SNAPSHOT - - - - - - repository-snapshots - Snapshots Repository - http://localhost:${port}/snapshots - - - diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/dependent-project/src/main/java/com/example/dependent/DependentClass.java b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/dependent-project/src/main/java/com/example/dependent/DependentClass.java deleted file mode 100644 index 2fead28..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/dependent-project/src/main/java/com/example/dependent/DependentClass.java +++ /dev/null @@ -1,7 +0,0 @@ -package com.example.dependent; - -import com.example.dependency.DependencyClass; - -public class DependentClass { - private DependencyClass dependencyClass; -} diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.jar b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.jar deleted file mode 100644 index 7e3c1683c36f46a4c97f2fab0989bd065004af28..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2436 zcmWIWW@h1HVBlb2_#BlQ&VU3sfoxyb5Jz24KR5jVpfVAlG7hk^819U30YK?MAO?ye zl=(XPdAhj>Nh+~un^BLjma69a<|ZqK{G z!@)TxvA9?-8ASF5ob@~8An`jsYQ9ol>-M)zcJr@|9nba-Tr-ycOIN^;hfdDsh6vy?N^KbPVtWxU*z0` z1ygu_ZS6_DmVDvPws>bzQ|4v7+-8SeC-~TYJhObWM@6!s@W+TF2fNF6xBcxn|D0#4 zYQI?1Lc<#@Jexy~Jrs4`Ilt%SdC3zIcl4JjPqh0KIA!zX26sFErLV#d7kyJXc~SO{ z{_H=i7oPZ|wEyL{@3{eU*GuY_PrvX@@=W3;59UJkt9)nIPFOeT!JNL}MVpOQmB=|s zCGOI`%KXZvN^^W~Z=sr(U>c`uzu|W=JG_0%p778po?$z(^=!W?*oj zByJ0UDXAhir*%@S|6v7@w)fw)XWbLu^>b$H#)^d(Q-YJ1e-t~t@$eRhhP==BxwriG zS{C_&G@N;fejw@#W|((%cJF;Yt}#ndxiy!>XV)l%j~y}z0+sm_~LHc4;p z<>VgeZA_gr(w+)UFcPh+oAtPOO1suXnfx_3F24RMwf4M{`Kix}b@R`2&A+k1$K&-3 z9YtA{&hrwtHO_~ejFEYLzwBiGkz=3y&M3A2v0l25J5!|n*V@~&k4YSKzoif`HE?a+ zgDoMvO}yD9ydBMKC--{ZXUTuun0l7t^><1|;B|18$oBTMG;C#`KgXdR<>)DB+Yc(Hk+ppgHT;+%VGVRMhUu?g&i0!g* zNrmf&mnTl@9QR>;7ZN7VDgEHEXw!k#Qn#8d4?h*FMY8gGTrW3RFjdrV=6k;nlOB|; zPYW~3oqj5^iS@qW#SKZ)UU6lAuAQEj?d$t{e#r0h;rdfcA9r7TVRW3mmHBFKbN_S2 zAKM?6FS~q@A5m`Z0A@BV#WH1YVEhIFu{)*l49w33sYNB3sm0zpS|@$Hee^#1Z1nZi z^*HP8dDeT~6OO9(w7Y(${71QhomX)zUDPXJSv5yi%M}ICZI*X!^6~H>F-l zzF_-p$;MLsqrHF;m@XNaM3`|`2tY>zfdIo>M-YuvJ%F^~t{^~)L10OvI*^2GL#i&2 zEyh;BgSCS#UI}DEihG1p(RF|dd45}ayn!_ diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.jar.md5 b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.jar.md5 deleted file mode 100644 index 49cdda0..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.jar.md5 +++ /dev/null @@ -1 +0,0 @@ -5c1fa9eb9814ca94bec1d507acb02910 \ No newline at end of file diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.jar.sha1 b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.jar.sha1 deleted file mode 100644 index 27e7477..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -453d6aa069f223e17d5505601a3a3a7f576d61f4 \ No newline at end of file diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom deleted file mode 100644 index 78420e9..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom +++ /dev/null @@ -1,25 +0,0 @@ - - - 4.0.0 - - com.example.dependency - dependency-project - 1.0-SNAPSHOT - - dependency-project - - - UTF-8 - 17 - 17 - - - - - repository-snapshots - Snapshots Repository - http://localhost:52260/snapshots - - - diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom.md5 b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom.md5 deleted file mode 100644 index 940ac3b..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom.md5 +++ /dev/null @@ -1 +0,0 @@ -b5e883c0ee08ff935cf96727bb8623f4 \ No newline at end of file diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom.sha1 b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom.sha1 deleted file mode 100644 index 50ec63f..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0-20231105.102337-1.pom.sha1 +++ /dev/null @@ -1 +0,0 @@ -534f31aa5ef763fe4562871d4dbb167a5cdc26f0 \ No newline at end of file diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0.jar b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/dependency-project-1.0.jar deleted file mode 100644 index 7e3c1683c36f46a4c97f2fab0989bd065004af28..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2436 zcmWIWW@h1HVBlb2_#BlQ&VU3sfoxyb5Jz24KR5jVpfVAlG7hk^819U30YK?MAO?ye zl=(XPdAhj>Nh+~un^BLjma69a<|ZqK{G z!@)TxvA9?-8ASF5ob@~8An`jsYQ9ol>-M)zcJr@|9nba-Tr-ycOIN^;hfdDsh6vy?N^KbPVtWxU*z0` z1ygu_ZS6_DmVDvPws>bzQ|4v7+-8SeC-~TYJhObWM@6!s@W+TF2fNF6xBcxn|D0#4 zYQI?1Lc<#@Jexy~Jrs4`Ilt%SdC3zIcl4JjPqh0KIA!zX26sFErLV#d7kyJXc~SO{ z{_H=i7oPZ|wEyL{@3{eU*GuY_PrvX@@=W3;59UJkt9)nIPFOeT!JNL}MVpOQmB=|s zCGOI`%KXZvN^^W~Z=sr(U>c`uzu|W=JG_0%p778po?$z(^=!W?*oj zByJ0UDXAhir*%@S|6v7@w)fw)XWbLu^>b$H#)^d(Q-YJ1e-t~t@$eRhhP==BxwriG zS{C_&G@N;fejw@#W|((%cJF;Yt}#ndxiy!>XV)l%j~y}z0+sm_~LHc4;p z<>VgeZA_gr(w+)UFcPh+oAtPOO1suXnfx_3F24RMwf4M{`Kix}b@R`2&A+k1$K&-3 z9YtA{&hrwtHO_~ejFEYLzwBiGkz=3y&M3A2v0l25J5!|n*V@~&k4YSKzoif`HE?a+ zgDoMvO}yD9ydBMKC--{ZXUTuun0l7t^><1|;B|18$oBTMG;C#`KgXdR<>)DB+Yc(Hk+ppgHT;+%VGVRMhUu?g&i0!g* zNrmf&mnTl@9QR>;7ZN7VDgEHEXw!k#Qn#8d4?h*FMY8gGTrW3RFjdrV=6k;nlOB|; zPYW~3oqj5^iS@qW#SKZ)UU6lAuAQEj?d$t{e#r0h;rdfcA9r7TVRW3mmHBFKbN_S2 zAKM?6FS~q@A5m`Z0A@BV#WH1YVEhIFu{)*l49w33sYNB3sm0zpS|@$Hee^#1Z1nZi z^*HP8dDeT~6OO9(w7Y(${71QhomX)zUDPXJSv5yi%M}ICZI*X!^6~H>F-l zzF_-p$;MLsqrHF;m@XNaM3`|`2tY>zfdIo>M-YuvJ%F^~t{^~)L10OvI*^2GL#i&2 zEyh;BgSCS#UI}DEihG1p(RF|dd45}ayn!_ diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml deleted file mode 100644 index aacf348..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - com.example.dependency - dependency-project - - 20231105102337 - - 20231105.102337 - 1 - - - - pom - 1.0-20231105.102337-1 - 20231105102337 - - - jar - 1.0-20231105.102337-1 - 20231105102337 - - - - 1.0-SNAPSHOT - diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml.md5 b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml.md5 deleted file mode 100644 index 03c2d4d..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml.md5 +++ /dev/null @@ -1 +0,0 @@ -40910b0eb66467f44ca8792bfe5a847e \ No newline at end of file diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml.sha1 b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml.sha1 deleted file mode 100644 index 24af63b..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/1.0-SNAPSHOT/maven-metadata.xml.sha1 +++ /dev/null @@ -1 +0,0 @@ -6262ab25ed0f7e2128fb26fab1acd090c535abaf \ No newline at end of file diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml deleted file mode 100644 index 10b9e95..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - com.example.dependency - dependency-project - - - 1.0-SNAPSHOT - - 20231105102337 - - diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml.md5 b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml.md5 deleted file mode 100644 index fa762d2..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml.md5 +++ /dev/null @@ -1 +0,0 @@ -9bf1c816b6c0f8166efd71605db83682 \ No newline at end of file diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml.sha1 b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml.sha1 deleted file mode 100644 index 3aa41af..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/repositories/snapshots/com/example/dependency/dependency-project/maven-metadata.xml.sha1 +++ /dev/null @@ -1 +0,0 @@ -4fa1150761b6af92a0b232fe8ec688b9e90d0f88 \ No newline at end of file diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/shared.configuration.json b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/shared.configuration.json deleted file mode 100644 index 90c3c48..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/reposilite-data/shared.configuration.json +++ /dev/null @@ -1,75 +0,0 @@ -{ - "statistics": { - "enabled": true, - "resolvedRequestsInterval": "MONTHLY" - }, - "web": { - "forwardedIp": "X-Forwarded-For" - }, - "frontend": { - "id": "reposilite-repository", - "title": "Reposilite Repository", - "description": "Public Maven repository hosted through the Reposilite", - "organizationWebsite": "https://reposilite.com", - "organizationLogo": "https://avatars.githubusercontent.com/u/88636591", - "icpLicense": "" - }, - "authentication": { - "ldap": { - "enabled": false, - "ssl": false, - "hostname": "ldap.domain.com", - "port": 389, - "baseDn": "dc=company,dc=com", - "searchUserDn": "cn=reposilite,ou=admins,dc=domain,dc=com", - "searchUserPassword": "reposilite-admin-secret", - "typeAttribute": "person", - "userAttribute": "cn", - "userFilter": "(&(objectClass=person)(ou=Maven Users))", - "userType": "PERSISTENT" - } - }, - "maven": { - "repositories": [ - { - "id": "releases", - "visibility": "PRIVATE", - "redeployment": false, - "preserveSnapshots": false, - "storageProvider": { - "type": "fs", - "quota": "100%", - "mount": "" - }, - "storagePolicy": "PRIORITIZE_UPSTREAM_METADATA", - "proxied": [] - }, - { - "id": "snapshots", - "visibility": "PRIVATE", - "redeployment": true, - "preserveSnapshots": false, - "storageProvider": { - "type": "fs", - "quota": "100%", - "mount": "./snapshots" - }, - "storagePolicy": "PRIORITIZE_UPSTREAM_METADATA", - "proxied": [] - }, - { - "id": "private", - "visibility": "PRIVATE", - "redeployment": false, - "preserveSnapshots": false, - "storageProvider": { - "type": "fs", - "quota": "100%", - "mount": "" - }, - "storagePolicy": "PRIORITIZE_UPSTREAM_METADATA", - "proxied": [] - } - ] - } -} \ No newline at end of file diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/user.home/.m2/settings-clear-password.xml b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/user.home/.m2/settings-clear-password.xml deleted file mode 100644 index 4d22090..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/user.home/.m2/settings-clear-password.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - /Users/fkrueger/projects/spring-boot-migrator/sbm-support-rewrite/testcode/maven-projects/private-repository/user.home/.m2/repository - - - - repository-snapshots - user - - secret - - - diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/user.home/.m2/settings-security.xml b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/user.home/.m2/settings-security.xml deleted file mode 100644 index 69a6799..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/user.home/.m2/settings-security.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - {BzCEWWQMgMkHk0P8+Rr+hsscSisZT6A4+G9Mub7f/m4=} - \ No newline at end of file diff --git a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/user.home/.m2/settings.xml.template b/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/user.home/.m2/settings.xml.template deleted file mode 100644 index 6994fc2..0000000 --- a/spring-rewrite-commons-launcher/testcode/maven-projects/private-repository/user.home/.m2/settings.xml.template +++ /dev/null @@ -1,15 +0,0 @@ - - - ${user.home}/.m2/repository - - - - repository-snapshots - user - - {iKYxpFKiVu0HTAe4w0RAzev3TAav0DG8wEom2qNoRws=} - - - -