From 5915c133bdc885b75ee0b83b321bce42b707cd6f Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 10:54:22 +0000 Subject: [PATCH 001/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 111922 adavis: Merged 5.0.N (5.0.3) to WOLF-6 (WOLF.0.0) 111602: UTF-241: Create a new upgrade package in .tgz format. Note that the subpackage (the "update contents") within the tgz is still a zip file - the update tool expects to find a zip file that it can use. Also note that the zip package format is in fact capable of storing the execute bits and when unpacking it on a *nix machine, I do see the bin/apply_updates.sh file as having the correct 755 file mode. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123917 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 56 +++++++++------------ enterprise-update/pom.xml | 44 ++++++++++++---- 2 files changed, 59 insertions(+), 41 deletions(-) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index 22fcb17693..7143d4bd66 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -7,46 +7,38 @@ update-tool zip + tgz false + + + + ${unpacked.update.tool}/bin + bin + + *.sh + + keep + + + + ${unpacked.update.tool}/bin + bin + + *.sh + + unix + + 0755 + + + ${project.basedir}/target/update-contents-${installer.version.name}.zip update - - - - - - false - true - bin - alfresco-update-tool.jar - - org.alfresco:alfresco-update-tool:jar - - - - - false - true - - true - - keep - - META-INF/** - - - - org.alfresco:alfresco-update-tool-distribution:jar - - - - - diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index 4154555e13..b4016a4a9f 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -11,6 +11,9 @@ jar Alfresco Enterprise Update Package + + ${project.build.directory}/dependency/alfresco-update-tool-distribution-${alfresco.updatetool.version} + @@ -27,19 +30,13 @@ war - - - org.alfresco - alfresco-update-tool - ${alfresco.updatetool.version} - jar - - + org.alfresco + alfresco-update-tool-distribution ${alfresco.updatetool.version} - jar + zip @@ -54,6 +51,35 @@ ${project.artifactId}-${installer.version.name} + + + org.apache.maven.plugins + maven-dependency-plugin + + + unpack-update-tool-distribution + generate-resources + + unpack + + + + + org.alfresco + alfresco-update-tool-distribution + ${alfresco.updatetool.version} + true + zip + + + + + + + maven-assembly-plugin From 164a95bc3b5f22f117a96ff3230825725f3dbf31 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 10:55:17 +0000 Subject: [PATCH 002/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 111924 adavis: Merged 5.0.N (5.0.3) to WOLF-6 (WOLF.0.0) 111613: UTF-242: added maven integration-test support to the update package project. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123918 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/pom.xml | 39 ++++++++++--- .../pkg/test/AbstractIntegrationTest.java | 56 +++++++++++++++++++ .../pkg/test/TgzFormatIntegrationTest.java | 32 +++++++++++ 3 files changed, 119 insertions(+), 8 deletions(-) create mode 100644 enterprise-update/src/test/java/org/alfresco/update/pkg/test/AbstractIntegrationTest.java create mode 100644 enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index b4016a4a9f..d571b6c052 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -39,7 +39,7 @@ zip - + junit junit @@ -50,6 +50,19 @@ ${project.artifactId}-${installer.version.name} + src/main/java + + + src/main/resources + + + src/test/java + + + src/test/resources + + + org.apache.maven.plugins maven-surefire-plugin - - - **/*IntegrationTest.java - - + + default-test + test + + test + + + + **/*IntegrationTest.java + + true + alphabetical + + integration-test integration-test @@ -135,7 +158,7 @@ false ${project.build.directory} - false + true alphabetical ${project.artifactId}-${installer.version.name}.zip diff --git a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/AbstractIntegrationTest.java b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/AbstractIntegrationTest.java new file mode 100644 index 0000000000..5507017a80 --- /dev/null +++ b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/AbstractIntegrationTest.java @@ -0,0 +1,56 @@ +package org.alfresco.update.pkg.test; + +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; + +import java.io.File; + +import org.junit.Before; + +/** + * Abstract base class for tests. + * + * @author Matt Ward + */ +public abstract class AbstractIntegrationTest +{ + protected File targetDir; + protected String version; + + @Before + public void setUp() throws Exception + { + initTargetDir(); + initVersion(); + } + + private void initTargetDir() + { + String targetDir = System.getProperty("alfresco.target.dir"); + if (targetDir == null) + { + targetDir = "./target"; // test needs to be run in target dir. + } + this.targetDir = new File(targetDir); + assertTrue("target dir does not exist :" + targetDir, this.targetDir.exists()); + } + + private void initVersion() + { + // This is set by maven, see pom.xml + version = System.getProperty("version"); + assertNotNull("'version' system property not set. If using an IDE, then add an appropriate VM argument to " + + "your run configuration, e.g. -Dversion=5.0.3-SNAPSHOT", version); + } + + protected boolean runningOnWindows() + { + String os = System.getProperty("os.name").toLowerCase(); + + if (os.contains("windows")) + { + return true; + } + return false; + } +} diff --git a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java new file mode 100644 index 0000000000..8ab5f6c6c7 --- /dev/null +++ b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java @@ -0,0 +1,32 @@ +/* + * Copyright 2005-2015 Alfresco Software, Ltd. All rights reserved. + * + * License rights for this program may be obtained from Alfresco Software, Ltd. + * pursuant to a written agreement and any use of this program without such an + * agreement is prohibited. + */ +package org.alfresco.update.pkg.test; + +import static org.junit.Assert.*; + +import org.junit.Before; +import org.junit.Test; + +/** + * Tests for the tgz format packaging. + * + * @author Matt Ward + */ +public class TgzFormatIntegrationTest +{ + @Before + public void setUp() throws Exception + { + } + + @Test + public void test() + { +// fail("Not yet implemented"); + } +} From 6f9893799c832b0bbd59867a980bc6a69f8cdca3 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 10:55:45 +0000 Subject: [PATCH 003/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 111925 adavis: Merged 5.0.N (5.0.3) to WOLF-6 (WOLF.0.0) 111630: UTF-242: Unix specific test for apply_updates.sh git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123919 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/pom.xml | 4 + .../pkg/test/TgzFormatIntegrationTest.java | 113 +++++++++++++++++- 2 files changed, 113 insertions(+), 4 deletions(-) diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index d571b6c052..274627720c 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -170,6 +170,10 @@ **/*IntegrationTest.java + + ${version} + ${project.build.directory} + diff --git a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java index 8ab5f6c6c7..82c0bda663 100644 --- a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java +++ b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java @@ -7,8 +7,23 @@ */ package org.alfresco.update.pkg.test; -import static org.junit.Assert.*; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import java.io.BufferedInputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.io.InputStream; + +import org.apache.commons.compress.archivers.ArchiveException; +import org.apache.commons.compress.archivers.ArchiveStreamFactory; +import org.apache.commons.compress.archivers.tar.TarArchiveEntry; +import org.apache.commons.compress.archivers.tar.TarArchiveInputStream; +import org.apache.commons.compress.compressors.CompressorException; +import org.apache.commons.compress.compressors.CompressorInputStream; +import org.apache.commons.compress.compressors.CompressorStreamFactory; import org.junit.Before; import org.junit.Test; @@ -17,16 +32,106 @@ import org.junit.Test; * * @author Matt Ward */ -public class TgzFormatIntegrationTest +public class TgzFormatIntegrationTest extends AbstractIntegrationTest { + private boolean found; + @Before public void setUp() throws Exception { + super.setUp(); } @Test - public void test() + public void applyUpdatesScriptHasExecutableBitsSet() throws FileNotFoundException, ArchiveException, IOException, CompressorException { -// fail("Not yet implemented"); + if (runningOnWindows()) + { + // This is a Unix only test. + return; + } + + File archive = new File(targetDir, "alfresco-enterprise-update-package-"+version+".tgz"); + assertTrue("File does not exist: "+archive, archive.exists()); + FileInputStream fis = null; + try + { + fis = new FileInputStream(archive); + + handleArchiveEntries(fis, new ArchiveEntryHandler() + { + @Override + public boolean handle(TarArchiveEntry entry) + { + System.out.println("Handling tar entry: "+entry.getName()); + if (entry.getName().equals("bin/apply_updates.sh")) + { + System.out.println("Found the unix shell wrapper script."); + + final int expectedPerms = 0755; + // Other bits may be set, but check 755 octal are set. + System.out.println("File has permissions: "+Integer.toString(entry.getMode(), 8)); + assertEquals(expectedPerms, entry.getMode() & expectedPerms); + found = true; + } + return !found; + } + }); + + assertTrue("bin/apply_updates.sh is a required file.", found); + } + finally + { + if (fis != null) + { + fis.close(); + } + } + } + + private static interface ArchiveEntryHandler + { + boolean handle(TarArchiveEntry entry); + } + + private void handleArchiveEntries(InputStream raw, ArchiveEntryHandler handler) throws ArchiveException, IOException, CompressorException + { + CompressorInputStream gzIs = null; + BufferedInputStream bis = null; + TarArchiveInputStream aris = null; + BufferedInputStream bgzIs = null; + try + { + bis = new BufferedInputStream(raw); + gzIs = new CompressorStreamFactory().createCompressorInputStream(bis); + bgzIs = new BufferedInputStream(gzIs); + aris = (TarArchiveInputStream) new ArchiveStreamFactory().createArchiveInputStream(bgzIs); + + TarArchiveEntry entry = null; + boolean carryOn = true; + while (carryOn && (entry = aris.getNextTarEntry()) != null) + { + carryOn = handler.handle(entry); + } + } + finally + { + if (aris != null) + { + aris.close(); + } + if (bgzIs != null) + { + bgzIs.close(); + } + if (gzIs != null) + { + gzIs.close(); + } + if (bis != null) + { + bis.close(); + } + } } } From ff40bce89176c9c9d3066dec744d21c41bb96ac7 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 10:55:54 +0000 Subject: [PATCH 004/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 111926 adavis: Merged 5.0.N (5.0.3) to WOLF-6 (WOLF.0.0) 111638: UTF-242: refactored archive unpacking code to use try-with-resources for brevity. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123920 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../pkg/test/TgzFormatIntegrationTest.java | 34 ++++--------------- 1 file changed, 6 insertions(+), 28 deletions(-) diff --git a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java index 82c0bda663..6b55c550fb 100644 --- a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java +++ b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java @@ -96,17 +96,14 @@ public class TgzFormatIntegrationTest extends AbstractIntegrationTest private void handleArchiveEntries(InputStream raw, ArchiveEntryHandler handler) throws ArchiveException, IOException, CompressorException { - CompressorInputStream gzIs = null; - BufferedInputStream bis = null; - TarArchiveInputStream aris = null; - BufferedInputStream bgzIs = null; try + ( + BufferedInputStream bis = new BufferedInputStream(raw); + CompressorInputStream gzIs = new CompressorStreamFactory().createCompressorInputStream(bis); + BufferedInputStream bgzIs = new BufferedInputStream(gzIs); + TarArchiveInputStream aris = (TarArchiveInputStream) new ArchiveStreamFactory().createArchiveInputStream(bgzIs); + ) { - bis = new BufferedInputStream(raw); - gzIs = new CompressorStreamFactory().createCompressorInputStream(bis); - bgzIs = new BufferedInputStream(gzIs); - aris = (TarArchiveInputStream) new ArchiveStreamFactory().createArchiveInputStream(bgzIs); - TarArchiveEntry entry = null; boolean carryOn = true; while (carryOn && (entry = aris.getNextTarEntry()) != null) @@ -114,24 +111,5 @@ public class TgzFormatIntegrationTest extends AbstractIntegrationTest carryOn = handler.handle(entry); } } - finally - { - if (aris != null) - { - aris.close(); - } - if (bgzIs != null) - { - bgzIs.close(); - } - if (gzIs != null) - { - gzIs.close(); - } - if (bis != null) - { - bis.close(); - } - } } } From 303e6560b0875c2b085a3afae8a165db99634003 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 10:57:02 +0000 Subject: [PATCH 005/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 111938,112043,112116 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123921 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 9b60df5e74bb1c7758bddb4414add8d2a13b9666 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 10:58:08 +0000 Subject: [PATCH 006/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 112146 mrogers: Merged 5.0.N (5.0.3) to WOLF-6 (WOLF.0.0) 112131: Change structure of update package. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123922 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 52 ++++++++++++++++----- enterprise-update/pom.xml | 15 +----- 2 files changed, 41 insertions(+), 26 deletions(-) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index 7143d4bd66..ed78121f31 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -10,22 +10,22 @@ tgz - false + true ${unpacked.update.tool}/bin - bin - - *.sh - + / + + *.bat + keep ${unpacked.update.tool}/bin - bin + / *.sh @@ -33,12 +33,40 @@ 0755 + + + ${unpacked.update.tool}/bin + lib + + *.jar + + - - - ${project.basedir}/target/update-contents-${installer.version.name}.zip - update - - + + + + + false + true + resources/war + alfresco.war + + org.alfresco:alfresco*:war + + + + + + false + true + resources/war + share.war + + org.alfresco:share*:war + + + + + diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index 274627720c..5afe6a1ab0 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -96,20 +96,7 @@ maven-assembly-plugin - - update - package - - single - - - false - - assemblies/update.xml - - update-contents-${installer.version.name} - - + update-tool package From cbc6e359ef6ce15858d13687c3b90b51949a4c93 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 10:58:16 +0000 Subject: [PATCH 007/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 112147 mrogers: Merged 5.0.N (5.0.3) to WOLF-6 (WOLF.0.0) 112133: Fix up TgZ test after moving apply_updates.sh git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123923 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../alfresco/update/pkg/test/TgzFormatIntegrationTest.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java index 6b55c550fb..dfb35e6287 100644 --- a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java +++ b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java @@ -64,7 +64,7 @@ public class TgzFormatIntegrationTest extends AbstractIntegrationTest public boolean handle(TarArchiveEntry entry) { System.out.println("Handling tar entry: "+entry.getName()); - if (entry.getName().equals("bin/apply_updates.sh")) + if (entry.getName().equals("apply_updates.sh")) { System.out.println("Found the unix shell wrapper script."); @@ -78,7 +78,7 @@ public class TgzFormatIntegrationTest extends AbstractIntegrationTest } }); - assertTrue("bin/apply_updates.sh is a required file.", found); + assertTrue("apply_updates.sh is a required file.", found); } finally { From 598734bc71261ca1e9fd6614aa8e267f3f188906 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 10:58:24 +0000 Subject: [PATCH 008/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 112169 mrogers: attempt to get these tests to work. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123924 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 4 +- .../packaging/PackagingIntegrationTest.java | 56 +++++++------------ .../pkg/test/AbstractIntegrationTest.java | 2 + 3 files changed, 25 insertions(+), 37 deletions(-) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index ed78121f31..1352dc2cbf 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -16,7 +16,7 @@ ${unpacked.update.tool}/bin - / + *.bat @@ -25,7 +25,7 @@ ${unpacked.update.tool}/bin - / + *.sh diff --git a/enterprise-update/src/test/java/org/alfresco/update/packaging/PackagingIntegrationTest.java b/enterprise-update/src/test/java/org/alfresco/update/packaging/PackagingIntegrationTest.java index f20577a13b..cd1455bf46 100644 --- a/enterprise-update/src/test/java/org/alfresco/update/packaging/PackagingIntegrationTest.java +++ b/enterprise-update/src/test/java/org/alfresco/update/packaging/PackagingIntegrationTest.java @@ -5,7 +5,9 @@ import static org.junit.Assert.*; import java.io.File; import java.io.IOException; +import java.util.ArrayList; import java.util.Enumeration; +import java.util.List; import java.util.Set; import java.util.TreeSet; import java.util.zip.ZipEntry; @@ -31,18 +33,14 @@ import org.junit.Test; public class PackagingIntegrationTest { private File updatePackage; - private File contentsPackage; + @Before public void setUp() throws Exception { String pkgName = System.getProperty("alfresco.update.package"); - assertNotNull("Could not determine package name."); - updatePackage = new File(pkgName); - - String contentsPkgName = System.getProperty("alfresco.contents.package"); - assertNotNull("Could not determine content package name."); - contentsPackage = new File(contentsPkgName); + assertNotNull("Could not determine package name.", pkgName); + updatePackage = new File(pkgName); } @Test @@ -54,25 +52,13 @@ public class PackagingIntegrationTest Set paths = listFiles(updatePackage); // Are the binaries present? - assertPathPresent(paths, "bin/alfresco-update-tool.jar"); - assertPathPresent(paths, "bin/apply_updates.sh"); - assertPathPresent(paths, "bin/apply_updates.bat"); + assertPathPresent(paths, "lib/alfresco-update-tool.jar"); + assertPathPresent(paths, "apply_updates.sh"); + assertPathPresent(paths, "apply_updates.bat"); // Is the content sub-package present? - assertPathPresent(paths, "update/"+contentsPackage.getName()); - } - - @Test - public void testContentsPackageStructureIsAsExpected() throws ZipException, IOException - { - // Check the package exists before we go any further - assertTrue("Contents package does not exist.", contentsPackage.exists()); - - Set paths = listFiles(contentsPackage); - - // Are the webapps present? - assertPathPresent(paths, "assets/web-server/webapps/alfresco.war"); - assertPathPresent(paths, "assets/web-server/webapps/share.war"); + assertPathPresent(paths, "resources"); + assertPathPresent(paths, "alfresco.war"); } private void assertPathPresent(Set pathsToCheck, String expectedPath) @@ -84,21 +70,21 @@ public class PackagingIntegrationTest private Set listFiles(File file) throws ZipException, IOException { Set paths = new TreeSet(); - - ZipFile zipFile = new ZipFile(file); - try + + File[] files = file.listFiles(); + + for(File x : files) { - Enumeration e = zipFile.entries(); - while (e.hasMoreElements()) + if(x.isFile()) { - ZipEntry entry = e.nextElement(); - paths.add(entry.getName()); + paths.add(x.getAbsolutePath()); + } + if(x.isDirectory()) + { + paths.addAll(listFiles(x)); } } - finally - { - zipFile.close(); - } + return paths; } } diff --git a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/AbstractIntegrationTest.java b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/AbstractIntegrationTest.java index 5507017a80..90d5071b6b 100644 --- a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/AbstractIntegrationTest.java +++ b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/AbstractIntegrationTest.java @@ -38,7 +38,9 @@ public abstract class AbstractIntegrationTest private void initVersion() { // This is set by maven, see pom.xml + System.out.println("MER"); version = System.getProperty("version"); + System.out.println("SSS"); assertNotNull("'version' system property not set. If using an IDE, then add an appropriate VM argument to " + "your run configuration, e.g. -Dversion=5.0.3-SNAPSHOT", version); } From 38c774658a2e49e31600be8aba6ef7a5ffe51935 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 10:58:26 +0000 Subject: [PATCH 009/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 112182 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123925 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 5d2c3fafd592d77df8fc2be5465c3b753791ef1a Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 10:58:33 +0000 Subject: [PATCH 010/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 112207 mrogers: Merged 5.0.N (5.0.3) to WOLF-6 (WOLF.0.0) 112201: UTF-264 - Make update test aware that its no longer a "tar bomb" git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123926 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../alfresco/update/pkg/test/TgzFormatIntegrationTest.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java index dfb35e6287..5fa84434b3 100644 --- a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java +++ b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java @@ -41,17 +41,20 @@ public class TgzFormatIntegrationTest extends AbstractIntegrationTest { super.setUp(); } + + public final String ARTIFACT_NAME="alfresco-enterprise-update-package-"; @Test public void applyUpdatesScriptHasExecutableBitsSet() throws FileNotFoundException, ArchiveException, IOException, CompressorException { + if (runningOnWindows()) { // This is a Unix only test. return; } - File archive = new File(targetDir, "alfresco-enterprise-update-package-"+version+".tgz"); + File archive = new File(targetDir, ARTIFACT_NAME+version+".tgz"); assertTrue("File does not exist: "+archive, archive.exists()); FileInputStream fis = null; try @@ -64,7 +67,7 @@ public class TgzFormatIntegrationTest extends AbstractIntegrationTest public boolean handle(TarArchiveEntry entry) { System.out.println("Handling tar entry: "+entry.getName()); - if (entry.getName().equals("apply_updates.sh")) + if (entry.getName().equals(ARTIFACT_NAME+version+"/apply_updates.sh")) { System.out.println("Found the unix shell wrapper script."); From 946023d2cc9f952c2c19a34a866b86fb3666becc Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 10:58:35 +0000 Subject: [PATCH 011/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 112223,112265 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123927 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From fe3c489eddbe69585ab409a8eee1dd557cb2e992 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 10:59:11 +0000 Subject: [PATCH 012/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 112266 mrogers: Correcting packaging unit test git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123928 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/pom.xml | 5 +- .../packaging/PackagingIntegrationTest.java | 56 +++++++++++-------- 2 files changed, 34 insertions(+), 27 deletions(-) diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index 5afe6a1ab0..a17bc0af8c 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -147,10 +147,6 @@ ${project.build.directory} true alphabetical - - ${project.artifactId}-${installer.version.name}.zip - update-contents-${installer.version.name}.zip - none @@ -158,6 +154,7 @@ **/*IntegrationTest.java + ${project.artifactId}-${installer.version.name}.zip ${version} ${project.build.directory} diff --git a/enterprise-update/src/test/java/org/alfresco/update/packaging/PackagingIntegrationTest.java b/enterprise-update/src/test/java/org/alfresco/update/packaging/PackagingIntegrationTest.java index cd1455bf46..5b39a6dbce 100644 --- a/enterprise-update/src/test/java/org/alfresco/update/packaging/PackagingIntegrationTest.java +++ b/enterprise-update/src/test/java/org/alfresco/update/packaging/PackagingIntegrationTest.java @@ -1,13 +1,17 @@ - +/* + * Copyright 2015-2015 Alfresco Software, Ltd. All rights reserved. + * + * License rights for this program may be obtained from Alfresco Software, Ltd. + * pursuant to a written agreement and any use of this program without such an + * agreement is prohibited. + */ package org.alfresco.update.packaging; import static org.junit.Assert.*; import java.io.File; import java.io.IOException; -import java.util.ArrayList; import java.util.Enumeration; -import java.util.List; import java.util.Set; import java.util.TreeSet; import java.util.zip.ZipEntry; @@ -33,14 +37,14 @@ import org.junit.Test; public class PackagingIntegrationTest { private File updatePackage; - + private File contentsPackage; @Before public void setUp() throws Exception { String pkgName = System.getProperty("alfresco.update.package"); assertNotNull("Could not determine package name.", pkgName); - updatePackage = new File(pkgName); + updatePackage = new File(pkgName); } @Test @@ -49,18 +53,23 @@ public class PackagingIntegrationTest // Check the package exists before we go any further assertTrue("Update package does not exist.", updatePackage.exists()); - Set paths = listFiles(updatePackage); + Set paths = listFiles(updatePackage); + + assertTrue("too few paths in the update package", paths.size() > 3); + String firstPath = (String)paths.toArray()[0]; + String dirs[] = firstPath.split("/"); + // Are the binaries present? - assertPathPresent(paths, "lib/alfresco-update-tool.jar"); - assertPathPresent(paths, "apply_updates.sh"); - assertPathPresent(paths, "apply_updates.bat"); + assertPathPresent(paths, dirs[0] + "/lib/alfresco-update-tool.jar"); + assertPathPresent(paths, dirs[0] + "/apply_updates.sh"); + assertPathPresent(paths, dirs[0] + "/apply_updates.bat"); // Is the content sub-package present? - assertPathPresent(paths, "resources"); - assertPathPresent(paths, "alfresco.war"); + assertPathPresent(paths, dirs[0] + "/resources/war/alfresco.war"); + assertPathPresent(paths, dirs[0] + "/resources/war/share.war"); } - + private void assertPathPresent(Set pathsToCheck, String expectedPath) { assertTrue("Expected path to be present, but was not: "+expectedPath, @@ -70,21 +79,22 @@ public class PackagingIntegrationTest private Set listFiles(File file) throws ZipException, IOException { Set paths = new TreeSet(); - - File[] files = file.listFiles(); - - for(File x : files) + + ZipFile zipFile = new ZipFile(file); + try { - if(x.isFile()) + Enumeration e = zipFile.entries(); + while (e.hasMoreElements()) { - paths.add(x.getAbsolutePath()); - } - if(x.isDirectory()) - { - paths.addAll(listFiles(x)); + ZipEntry entry = e.nextElement(); + paths.add(entry.getName()); } } - + finally + { + zipFile.close(); + } return paths; } } + From e4bcc6f2ff6f97b1744258b670cf53a362924d8b Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 10:59:23 +0000 Subject: [PATCH 013/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 112275 mrogers: Please work! git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123929 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/pom.xml | 4 ++-- .../packaging/PackagingIntegrationTest.java | 6 ++---- .../update/pkg/test/AbstractIntegrationTest.java | 11 ----------- .../pkg/test/TgzFormatIntegrationTest.java | 16 +++++++++++++--- 4 files changed, 17 insertions(+), 20 deletions(-) diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index a17bc0af8c..ab415ae715 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -154,8 +154,8 @@ **/*IntegrationTest.java - ${project.artifactId}-${installer.version.name}.zip - ${version} + ${project.artifactId}-${installer.version.name}.zip + ${project.artifactId}-${installer.version.name}.tgz ${project.build.directory} diff --git a/enterprise-update/src/test/java/org/alfresco/update/packaging/PackagingIntegrationTest.java b/enterprise-update/src/test/java/org/alfresco/update/packaging/PackagingIntegrationTest.java index 5b39a6dbce..97a720b2e8 100644 --- a/enterprise-update/src/test/java/org/alfresco/update/packaging/PackagingIntegrationTest.java +++ b/enterprise-update/src/test/java/org/alfresco/update/packaging/PackagingIntegrationTest.java @@ -26,8 +26,7 @@ import org.junit.Test; *

* To run these tests in Eclipse, add the following to the "VM arguments" for the junit Run Configuration: *

- *   -Dalfresco.update.package=target/alfresco-enterprise-update-package-2015-1-EA-SNAPSHOT.zip
- *   -Dalfresco.contents.package=target/update-contents-2015-1-EA-SNAPSHOT.zip
+ *   -Dalfresco.update.package.zip=target/alfresco-enterprise-update-package-2015-1-EA-SNAPSHOT.zip
  * 
* * ...or similar, depending on current version etc. There probably is a better way. @@ -37,12 +36,11 @@ import org.junit.Test; public class PackagingIntegrationTest { private File updatePackage; - private File contentsPackage; @Before public void setUp() throws Exception { - String pkgName = System.getProperty("alfresco.update.package"); + String pkgName = System.getProperty("alfresco.update.package.zip"); assertNotNull("Could not determine package name.", pkgName); updatePackage = new File(pkgName); } diff --git a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/AbstractIntegrationTest.java b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/AbstractIntegrationTest.java index 90d5071b6b..b0ff8da80f 100644 --- a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/AbstractIntegrationTest.java +++ b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/AbstractIntegrationTest.java @@ -15,13 +15,11 @@ import org.junit.Before; public abstract class AbstractIntegrationTest { protected File targetDir; - protected String version; @Before public void setUp() throws Exception { initTargetDir(); - initVersion(); } private void initTargetDir() @@ -35,15 +33,6 @@ public abstract class AbstractIntegrationTest assertTrue("target dir does not exist :" + targetDir, this.targetDir.exists()); } - private void initVersion() - { - // This is set by maven, see pom.xml - System.out.println("MER"); - version = System.getProperty("version"); - System.out.println("SSS"); - assertNotNull("'version' system property not set. If using an IDE, then add an appropriate VM argument to " - + "your run configuration, e.g. -Dversion=5.0.3-SNAPSHOT", version); - } protected boolean runningOnWindows() { diff --git a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java index 5fa84434b3..152bb6e0ac 100644 --- a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java +++ b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java @@ -8,6 +8,7 @@ package org.alfresco.update.pkg.test; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; import java.io.BufferedInputStream; @@ -30,16 +31,26 @@ import org.junit.Test; /** * Tests for the tgz format packaging. * + * To run these tests in Eclipse, add the following to the "VM arguments" for the junit Run Configuration: + *
+ *   -Dalfresco.update.package.tgz=target/alfresco-enterprise-update-package-2015-1-EA-SNAPSHOT.zip
+ * 
+ * * @author Matt Ward */ public class TgzFormatIntegrationTest extends AbstractIntegrationTest { private boolean found; + File updatePackage; + @Before public void setUp() throws Exception { super.setUp(); + String pkgName = System.getProperty("alfresco.update.package.tgz"); + assertNotNull("Could not determine package name.", pkgName); + updatePackage = new File(pkgName); } public final String ARTIFACT_NAME="alfresco-enterprise-update-package-"; @@ -54,12 +65,11 @@ public class TgzFormatIntegrationTest extends AbstractIntegrationTest return; } - File archive = new File(targetDir, ARTIFACT_NAME+version+".tgz"); - assertTrue("File does not exist: "+archive, archive.exists()); + assertTrue("File does not exist: "+ updatePackage, updatePackage.exists()); FileInputStream fis = null; try { - fis = new FileInputStream(archive); + fis = new FileInputStream(updatePackage); handleArchiveEntries(fis, new ArchiveEntryHandler() { From e54186585491476bd1112fb05b0072e9791874c9 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 10:59:31 +0000 Subject: [PATCH 014/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 112277 mrogers: Make this file compile! git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123930 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java index 152bb6e0ac..30a33760dd 100644 --- a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java +++ b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java @@ -77,7 +77,7 @@ public class TgzFormatIntegrationTest extends AbstractIntegrationTest public boolean handle(TarArchiveEntry entry) { System.out.println("Handling tar entry: "+entry.getName()); - if (entry.getName().equals(ARTIFACT_NAME+version+"/apply_updates.sh")) + if (entry.getName().contains("/apply_updates.sh")) { System.out.println("Found the unix shell wrapper script."); From 2ad6b5ff9a99d5c1ddf8e0ee81edffb30c7de062 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 10:59:36 +0000 Subject: [PATCH 015/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 112358,112463,112530,112565,112625 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123931 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 12a480b566283141501618ac1515c1a49e0a4078 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 10:59:57 +0000 Subject: [PATCH 016/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 112712 mrogers: Merged 5.0.N (5.0.3) to WOLF-6 (WOLF.0.0) 112710: UTF-272 - Add SOLR4.WAR to update package. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123932 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 11 +++++++++++ enterprise-update/pom.xml | 11 +++++++++-- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index 1352dc2cbf..20aa2307bf 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -67,6 +67,17 @@ + + + false + true + resources/war + solr4.war + + org.alfresco:alfresco-solr4*:war + + + diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index ab415ae715..c57db605ad 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -30,10 +30,17 @@ war
- + org.alfresco - + alfresco-solr4 + ${alfresco.platform.version} + war + + + + + org.alfresco alfresco-update-tool-distribution ${alfresco.updatetool.version} zip From d4d8479bdc521c7d9a41f7fca44ab11493b66fbb Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:00:04 +0000 Subject: [PATCH 017/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 112929,113056,113114,113262,113263,113264 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123933 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From ac248b08da89088907cfaecf4f59701b33d70d85 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:01:04 +0000 Subject: [PATCH 018/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 113265 adavis: Merged 5.0.N (5.0.3) to WOLF-6 (WOLF.0.0) 113207 mrogers: Add googledocs AMPS again git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123934 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 20 +++++++++++++++++++ enterprise-update/pom.xml | 22 +++++++++++++++++++-- 2 files changed, 40 insertions(+), 2 deletions(-) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index 20aa2307bf..88127a905a 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -78,6 +78,26 @@ + + + false + true + resources/amp/platform + + org.alfresco.integrations:alfresco-googledocs-repo:amp:enterprise:* + + + + + false + true + resources/amp/share + + org.alfresco.integrations:alfresco-googledocs-share:amp:enterprise:* + + + + diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index c57db605ad..c7ed45d6e6 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -37,9 +37,27 @@ ${alfresco.platform.version} war - - + + + org.alfresco.integrations + alfresco-googledocs-repo + ${alfresco.googledocs.version} + enterprise + amp + + + + org.alfresco.integrations + alfresco-googledocs-share + ${alfresco.googledocs.version} + enterprise + amp + + + + + org.alfresco alfresco-update-tool-distribution ${alfresco.updatetool.version} From 306b0f04eb1af1381ec7188638df2b334a9bbaaa Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:01:15 +0000 Subject: [PATCH 019/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 113266,113276,113286,113430,113507,113549,113595,113681, 113736,113817,113901,114028,114097,114234,114304,114478, 114479,114480,114481,114748 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123935 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 53b96171ed30297f3aa2d9e2f9ca30cdc1a16f7d Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:18:22 +0000 Subject: [PATCH 020/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 114818 mrogers: Merged 5.0.N (5.0.3) to WOLF-6 (WOLF.0.0) 114806: UTF-302 - adding README.txt to update package. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123936 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 9 ++++++++ enterprise-update/pom.xml | 23 +++++++++++++++++++++ 2 files changed, 32 insertions(+) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index 88127a905a..7a0c13b13d 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -41,6 +41,15 @@ *.jar + + + ${unpacked.update.tool} + + + README.txt + + unix + diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index c7ed45d6e6..6156840938 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -118,6 +118,29 @@
+ + com.google.code.maven-replacer-plugin + replacer + 1.5.3 + + + prepare-package + + replace + + + + + ${unpacked.update.tool}/README.txt + + + @Version@ + ${version} + + + + + maven-assembly-plugin From dfb9b7ac1f600c9d960e90fc4bc411511b17449a Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:18:25 +0000 Subject: [PATCH 021/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 114842,115008,115300 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123937 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From eefe708100536dd68e86c042cbe5a7b53a6f19d6 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:18:57 +0000 Subject: [PATCH 022/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 115360 mrogers: UTF-310 - added share service amp to update package. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123938 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 10 ++++++++++ enterprise-update/pom.xml | 11 ++++++++++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index 7a0c13b13d..3ead03ea29 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -96,6 +96,16 @@ org.alfresco.integrations:alfresco-googledocs-repo:amp:enterprise:* + + + + false + true + resources/amp/platform + + org.alfresco:alfresco-share-services:amp:* + + false diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index 6156840938..5ae6f4c518 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -15,7 +15,7 @@ ${project.build.directory}/dependency/alfresco-update-tool-distribution-${alfresco.updatetool.version} - + org.alfresco alfresco-platform-enterprise @@ -23,6 +23,7 @@ war + org.alfresco share @@ -55,6 +56,14 @@ amp + + + org.alfresco + alfresco-share-services + ${alfresco.share.version} + amp + + From 48f638a91f78b879667b567da5ab717b18d131bb Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:19:21 +0000 Subject: [PATCH 023/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 115409,115501,115512,115541,115756,115819,115835,115957, 115964,115986,116209,116408,116540,116549,116648,117382, 117504,117524,117594,117705,117946,117947,117964,118107, 118180,118197,118329,118434,118530,118647,118727,118901, 118921,118945,119296,119533,119585,119607,119703,119827, 119855,120070,120115,120164,120265,120300,120348,120376, 120419 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123939 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From a4c6f8a0d0cc61ba92d776839fa2a78983ba5408 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:19:35 +0000 Subject: [PATCH 024/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 120494 mrogers: Adding ignore for .settings git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123940 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 4df364387d61504049aa3a099d2f7e5c83f9bf2b Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:19:45 +0000 Subject: [PATCH 025/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 120497 mrogers: Merged 5.0.N (5.0.4) to WOLF-6 (WOLF.0.0) 120491 mrogers: UTF-359 - Add WQS artifacts to upgrade package. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123941 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 20 ++++++++++++++++++++ enterprise-update/pom.xml | 21 ++++++++++++++++++--- 2 files changed, 38 insertions(+), 3 deletions(-) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index 3ead03ea29..2f3395ac83 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -116,6 +116,26 @@ + + + false + true + resources/amp/platform + + org.alfresco:alfresco-wcmqs:amp:* + + + + + + false + true + resources/amp/share + + org.alfresco:alfresco-wcmqs-share:amp:* + + + diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index 5ae6f4c518..796c1af83e 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -39,7 +39,7 @@ war - + org.alfresco.integrations alfresco-googledocs-repo @@ -55,7 +55,7 @@ enterprise amp - + org.alfresco @@ -64,6 +64,21 @@ amp + + + org.alfresco + alfresco-wcmqs + ${alfresco.share.version} + amp + + + + + org.alfresco + alfresco-wcmqs-share + ${alfresco.share.version} + amp + @@ -86,7 +101,7 @@ ${project.artifactId}-${installer.version.name} src/main/java - + src/main/resources From 67edb85b66f3e405b8fdaa5a316f6f8b183c052a Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:19:49 +0000 Subject: [PATCH 026/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 120532,120599,120702,120703,120710 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123942 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 72cb18c860e4d22c2997a0278b69da386e085051 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:20:03 +0000 Subject: [PATCH 027/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 120727 aleahu: 120727 aleahu: Merged 5.0.N (5.0.4) to WOLF-6 (WOLF.0.0) 120639 mrogers: UTF-464 - update package should contain share-enterprise not share [community] on 5.0 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123943 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index 796c1af83e..ebb249295d 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -26,7 +26,7 @@ org.alfresco - share + share-enterprise ${alfresco.share.version} war From df1d3d6936d2d0d0b59528f635fe34da7ff7e188 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:20:05 +0000 Subject: [PATCH 028/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 120728 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123944 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 91a0bc3d7c1a60c0612b1b72ca0a5eba35e2180e Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:20:16 +0000 Subject: [PATCH 029/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 120733 aleahu: Reverse merged WOLF-6 (WOLF.0.0) 120727 aleahu: Merged 5.0.N (5.0.4) to WOLF-6 (WOLF.0.0) 120639 mrogers: UTF-464 - update package should contain share-enterprise not share [community] on 5.0 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123945 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index ebb249295d..796c1af83e 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -26,7 +26,7 @@ org.alfresco - share-enterprise + share ${alfresco.share.version} war From 11fb11b04c949042439d33d8fe95c011fdf15cb1 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:20:21 +0000 Subject: [PATCH 030/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 120741,120754,120829,120900,120948,120974,121052 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123946 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 94da43f82718589f0d65faa94e56833e6ba95954 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:20:34 +0000 Subject: [PATCH 031/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 121053 amorarasu: Merged 5.0.N (5.0.4) to WOLF-6 (WOLF.0.0) 121032 mrogers: UTF-367 - The update tool needs to update the $ALF_HOME/README file in the root of $ALF_HOME git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123947 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 10 ++++++++ enterprise-update/pom.xml | 27 +++++++++++++++++++++ 2 files changed, 37 insertions(+) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index 2f3395ac83..dce60e7c24 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -33,6 +33,16 @@ 0755 + + + + ${unpacked.alfresco.enterprise.distribution} + resources/distribution/platform + + README.txt + + keep + ${unpacked.update.tool}/bin diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index 796c1af83e..9266ce850d 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -13,6 +13,7 @@ ${project.build.directory}/dependency/alfresco-update-tool-distribution-${alfresco.updatetool.version} + ${project.build.directory}/dependency/alfresco-enterprise-${project.version} @@ -88,6 +89,14 @@ zip + + + org.alfresco + alfresco-enterprise-distribution + ${project.version} + zip + + junit @@ -138,6 +147,24 @@ + + + unpack-alfresco-enterprise-distribution + generate-resources + + unpack + + + + + org.alfresco + alfresco-enterprise-distribution + ${project.version} + true + zip + + + From 84960fd82276a4788f8dfb8f9c8d67748f290874 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:20:45 +0000 Subject: [PATCH 032/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 121054 amorarasu: Merged 5.0.N (5.0.4) to WOLF-6 (WOLF.0.0) 121039 mrogers: UTF-366 - Adding MMT.jar to update package git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123948 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index dce60e7c24..107ce1d17f 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -43,6 +43,16 @@ keep + + + ${unpacked.alfresco.enterprise.distribution}/bin + resources/distribution/common + + alfresco-mmt.jar + alfresco-spring-encryptor.jar + + keep + ${unpacked.update.tool}/bin From ca01cee212dd6a6671e117ac76d84b5509e5a5e8 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:20:47 +0000 Subject: [PATCH 033/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 121055 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123949 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 40fbba120a19fd53f6d9bf03e8b3da8be8598d17 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:20:57 +0000 Subject: [PATCH 034/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 121081 mrogers: UTF-366 - add new test for update package that now contains bin/mmt.jar & rework for 5.1 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123950 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 6 +++--- enterprise-update/pom.xml | 14 +++++++------- .../update/packaging/PackagingIntegrationTest.java | 5 +++++ 3 files changed, 15 insertions(+), 10 deletions(-) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index 107ce1d17f..a3e65a99d7 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -36,7 +36,7 @@ - ${unpacked.alfresco.enterprise.distribution} + ${unpacked.alfresco.platform.distribution} resources/distribution/platform README.txt @@ -45,8 +45,8 @@ - ${unpacked.alfresco.enterprise.distribution}/bin - resources/distribution/common + ${unpacked.alfresco.platform.distribution}/bin + resources/distribution/common/bin alfresco-mmt.jar alfresco-spring-encryptor.jar diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index 9266ce850d..19230a3f23 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -13,7 +13,7 @@ ${project.build.directory}/dependency/alfresco-update-tool-distribution-${alfresco.updatetool.version} - ${project.build.directory}/dependency/alfresco-enterprise-${project.version} + ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${alfresco.platform.version} @@ -89,11 +89,11 @@ zip - + org.alfresco - alfresco-enterprise-distribution - ${project.version} + alfresco-platform-enterprise-distributionzip + ${alfresco.platform.version} zip @@ -157,9 +157,9 @@ - org.alfresco - alfresco-enterprise-distribution - ${project.version} + org.alfresco + alfresco-platform-enterprise-distributionzip + ${alfresco.platform.version} true zip diff --git a/enterprise-update/src/test/java/org/alfresco/update/packaging/PackagingIntegrationTest.java b/enterprise-update/src/test/java/org/alfresco/update/packaging/PackagingIntegrationTest.java index 97a720b2e8..80031b0b2b 100644 --- a/enterprise-update/src/test/java/org/alfresco/update/packaging/PackagingIntegrationTest.java +++ b/enterprise-update/src/test/java/org/alfresco/update/packaging/PackagingIntegrationTest.java @@ -66,6 +66,11 @@ public class PackagingIntegrationTest // Is the content sub-package present? assertPathPresent(paths, dirs[0] + "/resources/war/alfresco.war"); assertPathPresent(paths, dirs[0] + "/resources/war/share.war"); + + // Is the mmt in the correct place ? + assertPathPresent(paths, dirs[0] + "/resources/distribution/common/bin/alfresco-mmt.jar"); + assertPathPresent(paths, dirs[0] + "/resources/distribution/common/bin/alfresco-spring-encryptor.jar"); + } private void assertPathPresent(Set pathsToCheck, String expectedPath) From 006bb4126d523813fdff152df322a479026ef0ca Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:21:02 +0000 Subject: [PATCH 035/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 121083 mrogers: Remove some maven warnings from updateTool.xml assembly git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123951 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index a3e65a99d7..45aab2332c 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -81,7 +81,7 @@ resources/war alfresco.war - org.alfresco:alfresco*:war + org.alfresco:alfresco-platform-enterprise:war @@ -92,7 +92,7 @@ resources/war share.war - org.alfresco:share*:war + org.alfresco:share:war @@ -103,7 +103,7 @@ resources/war solr4.war - org.alfresco:alfresco-solr4*:war + org.alfresco:alfresco-solr4:war From 9e267709fea04bbce7db16c1405e2f42f67278b1 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:21:34 +0000 Subject: [PATCH 036/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 121089 mrogers: UTF-368 - Add the share specific README to the update package git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123952 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 21 ++++++++++++++++ enterprise-update/pom.xml | 27 +++++++++++++++++++++ 2 files changed, 48 insertions(+) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index 45aab2332c..92cc02b52f 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -44,6 +44,27 @@ keep + + + ${unpacked.alfresco.platform.distribution} + resources/distribution/platform_only + + README.txt + + keep + + + + + ${unpacked.alfresco.share.distribution} + resources/distribution/share_only + + README.txt + + keep + + + ${unpacked.alfresco.platform.distribution}/bin resources/distribution/common/bin diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index 19230a3f23..bfd8d9cfbd 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -14,6 +14,7 @@ ${project.build.directory}/dependency/alfresco-update-tool-distribution-${alfresco.updatetool.version} ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${alfresco.platform.version} + ${project.build.directory}/dependency/alfresco-share-distribution-${alfresco.share.version} @@ -97,6 +98,14 @@ zip + + + org.alfresco + alfresco-share-distribution + ${alfresco.share.version} + zip + + junit @@ -165,6 +174,24 @@ + + + unpack-alfresco-share-distribution + generate-resources + + unpack + + + + + org.alfresco + alfresco-share-distribution + ${alfresco.share.version} + true + zip + + + From d5a45a7c6eb1700db5d7fb3665cbbff9ac808b97 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:21:37 +0000 Subject: [PATCH 037/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 121126,121131,121138 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123953 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 2e0ad70290528f670bb4615038b937c18d41025e Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:22:02 +0000 Subject: [PATCH 038/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 121209 mward: UTF-348: Tie the update tool version to the encompasing package git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123954 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/pom.xml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index bfd8d9cfbd..343ebf69d9 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -209,12 +209,16 @@ - ${unpacked.update.tool}/README.txt + ${unpacked.update.tool}/README.txt,${unpacked.update.tool}/package.properties @Version@ ${version} + + @UpdateAssistantVersion@ + ${alfresco.updatetool.version} + From ba9f974e2dffce2b5bff9fff0acbe71e296dd18a Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:22:04 +0000 Subject: [PATCH 039/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 121239 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123955 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From f0f654ab6e96725af90fc5a8e695eb3922e7e17c Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:22:44 +0000 Subject: [PATCH 040/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 121294 mward: UTF-348: include filtered package.properties in package. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123956 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index 92cc02b52f..2af5a242b0 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -40,6 +40,7 @@ resources/distribution/platform README.txt + package.properties keep @@ -50,6 +51,7 @@ resources/distribution/platform_only README.txt + package.properties keep @@ -60,6 +62,7 @@ resources/distribution/share_only README.txt + package.properties keep @@ -88,6 +91,7 @@ README.txt + package.properties unix From 30762e80ea7c3b94fe01f6c13fc6981387234386 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:22:46 +0000 Subject: [PATCH 041/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 121306 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123957 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From b0d2aef6052432834888d1ea995eee985625ef7e Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:23:04 +0000 Subject: [PATCH 042/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 121307 amorarasu: Merged 5.0.N (5.0.4) to WOLF-6 (WOLF.0.0) 121251 mrogers: UTF-365 - Adding Update Script to the 5.0 update package git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123958 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 11 +++++++++++ enterprise-update/pom.xml | 3 +++ .../src/main/resources/script/5.0/update5-0.auas | 5 +++++ .../src/main/resources/script/5.1/update5-1.auas | 4 ++++ 4 files changed, 23 insertions(+) create mode 100644 enterprise-update/src/main/resources/script/5.0/update5-0.auas create mode 100644 enterprise-update/src/main/resources/script/5.1/update5-1.auas diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index 2af5a242b0..6d8727a9fd 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -95,6 +95,17 @@ unix + + + ${unpacked.update.script} + /resources/script + + *.auas + + keep + + + diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index 343ebf69d9..34056fcda5 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -15,6 +15,9 @@ ${project.build.directory}/dependency/alfresco-update-tool-distribution-${alfresco.updatetool.version} ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${alfresco.platform.version} ${project.build.directory}/dependency/alfresco-share-distribution-${alfresco.share.version} + + + ${project.build.directory}/classes/script/${version.major}.${version.minor} diff --git a/enterprise-update/src/main/resources/script/5.0/update5-0.auas b/enterprise-update/src/main/resources/script/5.0/update5-0.auas new file mode 100644 index 0000000000..2256121636 --- /dev/null +++ b/enterprise-update/src/main/resources/script/5.0/update5-0.auas @@ -0,0 +1,5 @@ +// ALFRESCO UPDATE ASSISTANT SCRIPT for 5.0 +// update5-0.auas + +DELETE /tomcat/endorsed/xalan.jar +DELETE /tomcat/endorsed/serializer.jar \ No newline at end of file diff --git a/enterprise-update/src/main/resources/script/5.1/update5-1.auas b/enterprise-update/src/main/resources/script/5.1/update5-1.auas new file mode 100644 index 0000000000..3910132c08 --- /dev/null +++ b/enterprise-update/src/main/resources/script/5.1/update5-1.auas @@ -0,0 +1,4 @@ +// ALFRESCO UPDATE ASSISTANT SCRIPT for 5.1 +// update5-1.auas + +// EMPTY AT THE MOMENT From f3ee061922ee153de2fe7e9ddde5fc5bfa43abba Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:23:07 +0000 Subject: [PATCH 043/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 121308,121405 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123959 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 1cb422eadf140fde729176eb3ea73d55e4b9a5c3 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:23:16 +0000 Subject: [PATCH 044/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 121406 rmunteanu: Merged 5.0.N (5.0.4) to WOLF-6 (WOLF.0.0) 121352 mrogers: Correcting upgrade assistant script git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123960 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../src/main/resources/script/5.0/update5-0.auas | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/enterprise-update/src/main/resources/script/5.0/update5-0.auas b/enterprise-update/src/main/resources/script/5.0/update5-0.auas index 2256121636..078afab98c 100644 --- a/enterprise-update/src/main/resources/script/5.0/update5-0.auas +++ b/enterprise-update/src/main/resources/script/5.0/update5-0.auas @@ -1,5 +1,5 @@ // ALFRESCO UPDATE ASSISTANT SCRIPT for 5.0 // update5-0.auas -DELETE /tomcat/endorsed/xalan.jar -DELETE /tomcat/endorsed/serializer.jar \ No newline at end of file +DELETE /tomcat/endorsed/xalan-2.7.2.jar +DELETE /tomcat/endorsed/serializer-2.7.2.jar \ No newline at end of file From f639702e15f593a76c614bce8343d05dac2cef13 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:23:21 +0000 Subject: [PATCH 045/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 121407,121449,121486 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123961 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 75725653a13e8a84183e6fadfad5aadb7aa4388b Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:23:27 +0000 Subject: [PATCH 046/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 121487 abalmus: Merged 5.0.N (5.0.4) to WOLF-6 (WOLF.0.0) 121456 mrogers: UTF-373 - Add _vti_bin.war to 5.0 update package git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123962 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index 6d8727a9fd..0510e8e07f 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -77,6 +77,15 @@ keep + + + ${unpacked.alfresco.enterprise.distribution}/web-server/webapps + resources/war + + _vti_bin.war + + keep + ${unpacked.update.tool}/bin From 26f52eb8143078b12849ece6c431d9025e2f5264 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:23:30 +0000 Subject: [PATCH 047/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 121490 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123963 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From e38c75463eec1caf29a1c1db75a62de4fbcb59b5 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:23:58 +0000 Subject: [PATCH 048/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 121560 mrogers: Merged 5.0.N (5.0.4) to WOLF-6 (WOLF.0.0) 121460 mrogers: UTF-375 - added awe.war and also simplified update build to use the wqs distribution package git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123964 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 51 +++++++++++---------- enterprise-update/pom.xml | 32 ++++++++----- 2 files changed, 48 insertions(+), 35 deletions(-) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index 0510e8e07f..620709ba67 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -113,8 +113,32 @@ keep - - + + + + ${unpacked.alfresco.wcmqs.distribution} + resources/amp/platform + + alfresco-wcmqs.amp + + + + + ${unpacked.alfresco.wcmqs.distribution} + resources/amp/share + + alfresco-wcmqs-share.amp + + + + + ${unpacked.alfresco.wcmqs.distribution} + resources/war + + *.war + + + @@ -179,28 +203,7 @@ org.alfresco.integrations:alfresco-googledocs-share:amp:enterprise:* - - - - - false - true - resources/amp/platform - - org.alfresco:alfresco-wcmqs:amp:* - - - - - - false - true - resources/amp/share - - org.alfresco:alfresco-wcmqs-share:amp:* - - - + diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index 34056fcda5..53788b6e4a 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -15,6 +15,7 @@ ${project.build.directory}/dependency/alfresco-update-tool-distribution-${alfresco.updatetool.version} ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${alfresco.platform.version} ${project.build.directory}/dependency/alfresco-share-distribution-${alfresco.share.version} + ${project.build.directory}/dependency/wcmqs-${project.version} ${project.build.directory}/classes/script/${version.major}.${version.minor} @@ -69,20 +70,11 @@ amp - org.alfresco - alfresco-wcmqs + alfresco-wcmqs-distribution ${alfresco.share.version} - amp - - - - - org.alfresco - alfresco-wcmqs-share - ${alfresco.share.version} - amp + zip @@ -142,6 +134,24 @@ org.apache.maven.plugins maven-dependency-plugin + + unpack-wcmqs-distribution + generate-resources + + unpack + + + + + org.alfresco + alfresco-wcmqs-distribution + ${alfresco.share.version} + zip + ${unpacked.alfresco.wcmqs.distribution} + + + + unpack-update-tool-distribution generate-resources From 927d1af23bc2763ee7afd51cdb433daec8e14396 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:24:00 +0000 Subject: [PATCH 049/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 121638 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123965 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 60831e816bf04203cbf8cda91b2551e1f96914bf Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:24:10 +0000 Subject: [PATCH 050/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 121668 mrogers: Merged 5.0.N (5.0.4) to WOLF-6 (WOLF.0.0) 121665 mrogers: Remove un-used update assembly git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123966 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/update.xml | 39 ------------------------- 1 file changed, 39 deletions(-) delete mode 100644 enterprise-update/assemblies/update.xml diff --git a/enterprise-update/assemblies/update.xml b/enterprise-update/assemblies/update.xml deleted file mode 100644 index 74674a26a3..0000000000 --- a/enterprise-update/assemblies/update.xml +++ /dev/null @@ -1,39 +0,0 @@ - - - - update - - zip - - - false - - - - - false - true - assets/web-server/webapps - alfresco.war - - org.alfresco:alfresco-platform-enterprise:war - - - - - - false - true - assets/web-server/webapps - share.war - - org.alfresco:share:war - - - - - - From e0b5123bca3ffab5ada9c3d31b4fc4026a8b81b9 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:24:20 +0000 Subject: [PATCH 051/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 121669 mrogers: Merged 5.0.N (5.0.4) to WOLF-6 (WOLF.0.0) 121667 mrogers: UTF-370 - Get rid of the .tgz archive git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123967 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 1 - 1 file changed, 1 deletion(-) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index 620709ba67..ad4df5cd82 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -7,7 +7,6 @@ update-tool zip - tgz true From d02014dca32a3edacb985f0ff3b740bc70476cc8 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:24:22 +0000 Subject: [PATCH 052/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 121683 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123968 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 31137f6ebe06290df8860c36613dc9da34e75fe2 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:24:28 +0000 Subject: [PATCH 053/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 121758 nsmintanca: Merged 5.0.N (5.0.4) to WOLF-6 (WOLF.0.0) 121690 mrogers: UTF-370 - Replace TgZFormatIntegrationTest with ZipFormatIntegrationTest git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123969 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- ...est.java => ZipFormatIntegrationTest.java} | 252 +++++++++--------- 1 file changed, 124 insertions(+), 128 deletions(-) rename enterprise-update/src/test/java/org/alfresco/update/pkg/test/{TgzFormatIntegrationTest.java => ZipFormatIntegrationTest.java} (69%) diff --git a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/ZipFormatIntegrationTest.java similarity index 69% rename from enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java rename to enterprise-update/src/test/java/org/alfresco/update/pkg/test/ZipFormatIntegrationTest.java index 30a33760dd..9617d1b070 100644 --- a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/TgzFormatIntegrationTest.java +++ b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/ZipFormatIntegrationTest.java @@ -1,128 +1,124 @@ -/* - * Copyright 2005-2015 Alfresco Software, Ltd. All rights reserved. - * - * License rights for this program may be obtained from Alfresco Software, Ltd. - * pursuant to a written agreement and any use of this program without such an - * agreement is prohibited. - */ -package org.alfresco.update.pkg.test; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; - -import java.io.BufferedInputStream; -import java.io.File; -import java.io.FileInputStream; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.io.InputStream; - -import org.apache.commons.compress.archivers.ArchiveException; -import org.apache.commons.compress.archivers.ArchiveStreamFactory; -import org.apache.commons.compress.archivers.tar.TarArchiveEntry; -import org.apache.commons.compress.archivers.tar.TarArchiveInputStream; -import org.apache.commons.compress.compressors.CompressorException; -import org.apache.commons.compress.compressors.CompressorInputStream; -import org.apache.commons.compress.compressors.CompressorStreamFactory; -import org.junit.Before; -import org.junit.Test; - -/** - * Tests for the tgz format packaging. - * - * To run these tests in Eclipse, add the following to the "VM arguments" for the junit Run Configuration: - *
- *   -Dalfresco.update.package.tgz=target/alfresco-enterprise-update-package-2015-1-EA-SNAPSHOT.zip
- * 
- * - * @author Matt Ward - */ -public class TgzFormatIntegrationTest extends AbstractIntegrationTest -{ - private boolean found; - - File updatePackage; - - @Before - public void setUp() throws Exception - { - super.setUp(); - String pkgName = System.getProperty("alfresco.update.package.tgz"); - assertNotNull("Could not determine package name.", pkgName); - updatePackage = new File(pkgName); - } - - public final String ARTIFACT_NAME="alfresco-enterprise-update-package-"; - - @Test - public void applyUpdatesScriptHasExecutableBitsSet() throws FileNotFoundException, ArchiveException, IOException, CompressorException - { - - if (runningOnWindows()) - { - // This is a Unix only test. - return; - } - - assertTrue("File does not exist: "+ updatePackage, updatePackage.exists()); - FileInputStream fis = null; - try - { - fis = new FileInputStream(updatePackage); - - handleArchiveEntries(fis, new ArchiveEntryHandler() - { - @Override - public boolean handle(TarArchiveEntry entry) - { - System.out.println("Handling tar entry: "+entry.getName()); - if (entry.getName().contains("/apply_updates.sh")) - { - System.out.println("Found the unix shell wrapper script."); - - final int expectedPerms = 0755; - // Other bits may be set, but check 755 octal are set. - System.out.println("File has permissions: "+Integer.toString(entry.getMode(), 8)); - assertEquals(expectedPerms, entry.getMode() & expectedPerms); - found = true; - } - return !found; - } - }); - - assertTrue("apply_updates.sh is a required file.", found); - } - finally - { - if (fis != null) - { - fis.close(); - } - } - } - - private static interface ArchiveEntryHandler - { - boolean handle(TarArchiveEntry entry); - } - - private void handleArchiveEntries(InputStream raw, ArchiveEntryHandler handler) throws ArchiveException, IOException, CompressorException - { - try - ( - BufferedInputStream bis = new BufferedInputStream(raw); - CompressorInputStream gzIs = new CompressorStreamFactory().createCompressorInputStream(bis); - BufferedInputStream bgzIs = new BufferedInputStream(gzIs); - TarArchiveInputStream aris = (TarArchiveInputStream) new ArchiveStreamFactory().createArchiveInputStream(bgzIs); - ) - { - TarArchiveEntry entry = null; - boolean carryOn = true; - while (carryOn && (entry = aris.getNextTarEntry()) != null) - { - carryOn = handler.handle(entry); - } - } - } -} +/* + * Copyright 2005-2015 Alfresco Software, Ltd. All rights reserved. + * + * License rights for this program may be obtained from Alfresco Software, Ltd. + * pursuant to a written agreement and any use of this program without such an + * agreement is prohibited. + */ +package org.alfresco.update.pkg.test; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; + +import java.io.BufferedInputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.io.InputStream; + +import org.apache.commons.compress.archivers.ArchiveException; +import org.apache.commons.compress.archivers.ArchiveStreamFactory; +import org.apache.commons.compress.archivers.zip.ZipArchiveEntry; +import org.apache.commons.compress.archivers.zip.ZipArchiveInputStream; +import org.apache.commons.compress.compressors.CompressorException; +import org.apache.commons.compress.compressors.CompressorInputStream; +import org.apache.commons.compress.compressors.CompressorStreamFactory; +import org.junit.Before; +import org.junit.Test; + +/** + * Tests for the tgz format packaging. + * + * To run these tests in Eclipse, add the following to the "VM arguments" for the junit Run Configuration: + *
+ *   -Dalfresco.update.package.zip=target/alfresco-enterprise-update-package-2015-1-EA-SNAPSHOT.zip
+ * 
+ * + * @author Matt Ward + */ +public class ZipFormatIntegrationTest extends AbstractIntegrationTest +{ + private boolean found; + + @Before + public void setUp() throws Exception + { + super.setUp(); + } + + public final String ARTIFACT_NAME="alfresco-enterprise-update-package-"; + + @Test + public void applyUpdatesScriptHasExecutableBitsSet() throws FileNotFoundException, ArchiveException, IOException, CompressorException + { + + if (runningOnWindows()) + { + // This is a Unix only test. + return; + } + + File archive = new File(targetDir, ARTIFACT_NAME+version+".zip"); + assertTrue("File does not exist: "+archive, archive.exists()); + FileInputStream fis = null; + try + { + fis = new FileInputStream(archive); + + handleArchiveEntries(fis, new ArchiveEntryHandler() + { + @Override + public boolean handle(ZipArchiveEntry entry) + { + System.out.println("Handling tar entry: "+entry.getName()); + if (entry.getName().equals(ARTIFACT_NAME+version+"/apply_updates.sh")) + { + System.out.println("Found the unix shell wrapper script."); + + final int expectedPerms = 0755; + // Other bits may be set, but check 755 octal are set. + System.out.println("File has permissions: "+Integer.toString(entry.getUnixMode(), 8)); + assertEquals(expectedPerms, entry.getUnixMode() & expectedPerms); + found = true; + } + return !found; + } + }); + + assertTrue("apply_updates.sh is a required file.", found); + } + finally + { + if (fis != null) + { + fis.close(); + } + } + } + + private static interface ArchiveEntryHandler + { + boolean handle(ZipArchiveEntry entry); + } + + private void handleArchiveEntries(InputStream raw, ArchiveEntryHandler handler) throws ArchiveException, IOException, CompressorException + { + try + ( + BufferedInputStream bis = new BufferedInputStream(raw); + //CompressorInputStream gzIs = new CompressorStreamFactory().createCompressorInputStream(bis); + BufferedInputStream bgzIs = new BufferedInputStream(bis); + ZipArchiveInputStream aris = (ZipArchiveInputStream) new ArchiveStreamFactory().createArchiveInputStream(bgzIs); + ) + { + ZipArchiveEntry entry = null; + boolean carryOn = true; + while (carryOn && (entry = aris.getNextZipEntry()) != null) + { + carryOn = handler.handle(entry); + } + } + } +} From 9ae6a69aed8181d2cd9c698f814aed262af92c6c Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:24:30 +0000 Subject: [PATCH 054/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 121759 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123970 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From e4492724fc227c6171af48b9fc6a00f803733b0f Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:24:38 +0000 Subject: [PATCH 055/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 121760 nsmintanca: Merged 5.0.N (5.0.4) to WOLF-6 (WOLF.0.0) 121725 mrogers: UTF-370 - Disable permissions unit test. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123971 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../pkg/test/ZipFormatIntegrationTest.java | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/ZipFormatIntegrationTest.java b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/ZipFormatIntegrationTest.java index 9617d1b070..482be71f83 100644 --- a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/ZipFormatIntegrationTest.java +++ b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/ZipFormatIntegrationTest.java @@ -50,16 +50,11 @@ public class ZipFormatIntegrationTest extends AbstractIntegrationTest public final String ARTIFACT_NAME="alfresco-enterprise-update-package-"; + // TODO - Test step commented out below @Test public void applyUpdatesScriptHasExecutableBitsSet() throws FileNotFoundException, ArchiveException, IOException, CompressorException { - - if (runningOnWindows()) - { - // This is a Unix only test. - return; - } - + File archive = new File(targetDir, ARTIFACT_NAME+version+".zip"); assertTrue("File does not exist: "+archive, archive.exists()); FileInputStream fis = null; @@ -80,7 +75,15 @@ public class ZipFormatIntegrationTest extends AbstractIntegrationTest final int expectedPerms = 0755; // Other bits may be set, but check 755 octal are set. System.out.println("File has permissions: "+Integer.toString(entry.getUnixMode(), 8)); - assertEquals(expectedPerms, entry.getUnixMode() & expectedPerms); + + /** + * TODO - TEST STEP COMMENTED OUT + * I can't get this to work on windows or the build boxes - the mode is 0 + * However it does appear to work in real life! + * I've also tried replacing the apache.commons zip file utilities with + * the Java IO classes + */ +// assertEquals(expectedPerms, entry.getUnixMode() & expectedPerms); found = true; } return !found; From 456ab125aebd2368cfef5c8ad745511e820789fe Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:24:40 +0000 Subject: [PATCH 056/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 121857 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123972 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 2cac50473187bc6b1d2f64946ead33541b5c09b3 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:24:58 +0000 Subject: [PATCH 057/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 121858 nsmintanca: Merged 5.0.N (5.0.4) to WOLF-6 (WOLF.0.0) 121838 mward: UTF-370: fixed and added back apply_updates.sh executable bit tests. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123973 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../pkg/test/ZipFormatIntegrationTest.java | 99 ++++--------------- 1 file changed, 21 insertions(+), 78 deletions(-) diff --git a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/ZipFormatIntegrationTest.java b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/ZipFormatIntegrationTest.java index 482be71f83..60e3a0cd93 100644 --- a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/ZipFormatIntegrationTest.java +++ b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/ZipFormatIntegrationTest.java @@ -8,23 +8,17 @@ package org.alfresco.update.pkg.test; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; -import java.io.BufferedInputStream; import java.io.File; -import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; -import java.io.InputStream; +import java.util.Enumeration; import org.apache.commons.compress.archivers.ArchiveException; -import org.apache.commons.compress.archivers.ArchiveStreamFactory; import org.apache.commons.compress.archivers.zip.ZipArchiveEntry; -import org.apache.commons.compress.archivers.zip.ZipArchiveInputStream; +import org.apache.commons.compress.archivers.zip.ZipFile; import org.apache.commons.compress.compressors.CompressorException; -import org.apache.commons.compress.compressors.CompressorInputStream; -import org.apache.commons.compress.compressors.CompressorStreamFactory; import org.junit.Before; import org.junit.Test; @@ -39,89 +33,38 @@ import org.junit.Test; * @author Matt Ward */ public class ZipFormatIntegrationTest extends AbstractIntegrationTest -{ - private boolean found; - +{ + public final String ARTIFACT_NAME="alfresco-enterprise-update-package-"; + @Before public void setUp() throws Exception { super.setUp(); } - public final String ARTIFACT_NAME="alfresco-enterprise-update-package-"; - - // TODO - Test step commented out below @Test public void applyUpdatesScriptHasExecutableBitsSet() throws FileNotFoundException, ArchiveException, IOException, CompressorException - { - + { File archive = new File(targetDir, ARTIFACT_NAME+version+".zip"); assertTrue("File does not exist: "+archive, archive.exists()); - FileInputStream fis = null; - try + try (ZipFile zipFile = new ZipFile(archive)) { - fis = new FileInputStream(archive); - - handleArchiveEntries(fis, new ArchiveEntryHandler() - { - @Override - public boolean handle(ZipArchiveEntry entry) + Enumeration e = zipFile.getEntries(); + boolean found = false; + while (!found && e.hasMoreElements()) + { + ZipArchiveEntry entry = e.nextElement(); + File f = new File(entry.getName()); + if (f.getName().equalsIgnoreCase("apply_updates.sh")) { - System.out.println("Handling tar entry: "+entry.getName()); - if (entry.getName().equals(ARTIFACT_NAME+version+"/apply_updates.sh")) - { - System.out.println("Found the unix shell wrapper script."); - - final int expectedPerms = 0755; - // Other bits may be set, but check 755 octal are set. - System.out.println("File has permissions: "+Integer.toString(entry.getUnixMode(), 8)); - - /** - * TODO - TEST STEP COMMENTED OUT - * I can't get this to work on windows or the build boxes - the mode is 0 - * However it does appear to work in real life! - * I've also tried replacing the apache.commons zip file utilities with - * the Java IO classes - */ -// assertEquals(expectedPerms, entry.getUnixMode() & expectedPerms); - found = true; - } - return !found; + found = true; + System.out.println("Found the unix shell wrapper script."); + final int expectedPerms = 0755; + // Other bits may be set, but check 755 octal are set. + System.out.println("File has permissions: "+Integer.toString(entry.getUnixMode(), 8)); + assertEquals(expectedPerms, entry.getUnixMode() & expectedPerms); } - }); - - assertTrue("apply_updates.sh is a required file.", found); - } - finally - { - if (fis != null) - { - fis.close(); - } - } - } - - private static interface ArchiveEntryHandler - { - boolean handle(ZipArchiveEntry entry); - } - - private void handleArchiveEntries(InputStream raw, ArchiveEntryHandler handler) throws ArchiveException, IOException, CompressorException - { - try - ( - BufferedInputStream bis = new BufferedInputStream(raw); - //CompressorInputStream gzIs = new CompressorStreamFactory().createCompressorInputStream(bis); - BufferedInputStream bgzIs = new BufferedInputStream(bis); - ZipArchiveInputStream aris = (ZipArchiveInputStream) new ArchiveStreamFactory().createArchiveInputStream(bgzIs); - ) - { - ZipArchiveEntry entry = null; - boolean carryOn = true; - while (carryOn && (entry = aris.getNextZipEntry()) != null) - { - carryOn = handler.handle(entry); - } + } } } } From ec2484e7ff197ac8823feec9a05e34e46cb28699 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:25:01 +0000 Subject: [PATCH 058/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 121992,122038 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123974 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 42b71c69aabe8f95c5ea297a5c3f3bcb80414a24 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:26:16 +0000 Subject: [PATCH 059/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122086 mrogers: UTF-379 - add new test project. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123975 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 12 ++++++++++++ pom.xml | 1 + 2 files changed, 13 insertions(+) create mode 100644 enterprise-update-test/pom.xml diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml new file mode 100644 index 0000000000..7f963b8695 --- /dev/null +++ b/enterprise-update-test/pom.xml @@ -0,0 +1,12 @@ + + 4.0.0 + alfresco-enterprise-update-test + End to end test of the installer and update + + org.alfresco + alfresco-full-installation + 5.1.1-SNAPSHOT + + pom + + diff --git a/pom.xml b/pom.xml index dff4dbdb2e..2bbdde16bd 100644 --- a/pom.xml +++ b/pom.xml @@ -81,6 +81,7 @@ enterprise-distribution enterprise-update enterprise-installer + enterprise-update-test From 9703d9e09b83097c8f7f00ff24b4093d640ce611 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:26:18 +0000 Subject: [PATCH 060/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 122095,122124 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123976 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 6a2a088c0f689d1689d9ac1ded8d5924bce72944 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:26:28 +0000 Subject: [PATCH 061/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122137 mrogers: Fix merge error. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123977 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../pkg/test/ZipFormatIntegrationTest.java | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/ZipFormatIntegrationTest.java b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/ZipFormatIntegrationTest.java index 60e3a0cd93..98e514af34 100644 --- a/enterprise-update/src/test/java/org/alfresco/update/pkg/test/ZipFormatIntegrationTest.java +++ b/enterprise-update/src/test/java/org/alfresco/update/pkg/test/ZipFormatIntegrationTest.java @@ -9,6 +9,7 @@ package org.alfresco.update.pkg.test; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; +import static org.junit.Assert.assertNotNull; import java.io.File; import java.io.FileNotFoundException; @@ -34,20 +35,23 @@ import org.junit.Test; */ public class ZipFormatIntegrationTest extends AbstractIntegrationTest { - public final String ARTIFACT_NAME="alfresco-enterprise-update-package-"; - + + File updatePackage; + @Before public void setUp() throws Exception { super.setUp(); + String pkgName = System.getProperty("alfresco.update.package.zip"); + assertNotNull("Could not determine package name.", pkgName); + updatePackage = new File(pkgName); } @Test public void applyUpdatesScriptHasExecutableBitsSet() throws FileNotFoundException, ArchiveException, IOException, CompressorException - { - File archive = new File(targetDir, ARTIFACT_NAME+version+".zip"); - assertTrue("File does not exist: "+archive, archive.exists()); - try (ZipFile zipFile = new ZipFile(archive)) + { + assertTrue("File does not exist: "+ updatePackage, updatePackage.exists()); + try (ZipFile zipFile = new ZipFile(updatePackage)) { Enumeration e = zipFile.getEntries(); boolean found = false; From 6a363e63ca340a65575fd1a029e9ecd417f4524c Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:29:05 +0000 Subject: [PATCH 062/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122157 mrogers: UTF-380 - Work in progress. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123979 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 69 ++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index 7f963b8695..b80ceec4fe 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -9,4 +9,73 @@ pom + + + + 20160203-SNAPSHOT-664 + ${project.build.directory}/dependency/alfresco-enterprise-update-package-${project.version} + ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${alfresco.platform.version} + ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${update.base.version} + + + + + + + + + + org.apache.maven.plugins + maven-dependency-plugin + + + + unpack-alfresco-enterprise-distribution + generate-resources + + unpack + + + + + org.alfresco + alfresco-platform-enterprise-distributionzip + ${alfresco.platform.version} + true + zip + + + + + + + + + + unpack-update-package + generate-resources + + unpack + + + + + org.alfresco + alfresco-enterprise-update-package + ${project.version} + true + zip + + + + + + + + + + + + + From 8a49ca2e61bd4601a89ddbb40500ab6291337948 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:30:53 +0000 Subject: [PATCH 063/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122162 mrogers: UTF-380 - Add install steps git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123980 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 222 +++++++++++++++++++++++---------- 1 file changed, 159 insertions(+), 63 deletions(-) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index b80ceec4fe..a91192fd59 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -9,73 +9,169 @@ pom - - - - 20160203-SNAPSHOT-664 - ${project.build.directory}/dependency/alfresco-enterprise-update-package-${project.version} - ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${alfresco.platform.version} - ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${update.base.version} - + + + + 5.1.0 + ${project.build.directory}/dependency/alfresco-enterprise-update-package-${project.version} - + ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${alfresco.platform.version} + -
+ - - - - org.apache.maven.plugins - maven-dependency-plugin - - - - unpack-alfresco-enterprise-distribution - generate-resources - - unpack - - - - - org.alfresco - alfresco-platform-enterprise-distributionzip - ${alfresco.platform.version} - true - zip - - - - - - - - - - unpack-update-package - generate-resources - - unpack - - - - - org.alfresco - alfresco-enterprise-update-package - ${project.version} - true - zip - - - - - - - - + + + junit + junit + 4.12 + test + - + - + + + + org.apache.maven.plugins + maven-dependency-plugin + + + + + unpack-update-package + generate-resources + + unpack + + + + + org.alfresco + alfresco-enterprise-update-package + ${project.version} + true + zip + + + + + + + + + + maven-antrun-plugin + + + fetch-installer + generate-test-resources + + run + + + + + + + + + + + + Downloading Alfresco installer to + ${installer.location}... + + + + + + Installing Alfresco... + + + + + + + + + + org.apache.ant + ant-jsch + 1.8.2 + + + ant-contrib + ant-contrib + 1.0b3 + + + ant + ant + + + + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + + default-test + test + + test + + + + **/*IntegrationTest.java + + true + alphabetical + + + + integration-test + integration-test + + test + + + false + ${project.build.directory} + true + alphabetical + + none + + + **/*IntegrationTest.java + + + ${project.artifactId}-${installer.version.name}.zip + ${project.build.directory} + + + + + + + + + + + + + From ddc76b5db712ab38a7fb4ba08bccda78f82b275c Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:31:20 +0000 Subject: [PATCH 064/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122172 mrogers: UTF-380 Temp build fix git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123981 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index a91192fd59..91c1c1d13b 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -16,6 +16,9 @@ ${project.build.directory}/dependency/alfresco-enterprise-update-package-${project.version} ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${alfresco.platform.version} + + + ALF-EPACK3-106 From 94e7c5291532b72b18c6f9c026be9261c5fd6e6c Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:31:44 +0000 Subject: [PATCH 065/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122179 mrogers: UTF-380 Try again. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123982 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 35 ++++++++++++++++------------------ 1 file changed, 16 insertions(+), 19 deletions(-) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index 91c1c1d13b..278d469fe8 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -10,15 +10,15 @@ pom + + 5.1.0 - ${project.build.directory}/dependency/alfresco-enterprise-update-package-${project.version} - - ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${alfresco.platform.version} - - ALF-EPACK3-106 + + + ${project.build.directory}/dependency/alfresco-enterprise-update-package-${project.version} @@ -78,27 +78,24 @@ - + - - Downloading Alfresco installer to - ${installer.location}... - - + + Downloading Base Alfresco installer to + ${base.installer.location}... + - - Installing Alfresco... - Installing The Base Versoion of Alfresco... + + line="--mode unattended --alfresco_admin_password admin --disable-components postgres,alfrescowcmqs --jdbc_username alfresco --jdbc_password alfresco --prefix ${basedir}/target/base-alf-installation --tomcat_server_domain ${HOSTNAME}" /> From 9431b09af81c0974f7d13928fe4b7eb09a61d49c Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:32:10 +0000 Subject: [PATCH 066/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122186 mrogers: UTF-380 Now should update both source and target instances of alfresco. (They are both the same but that should allow us to progress with building the rest of build.) git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123983 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 79 ++++++++++++++++++++++++++++------ 1 file changed, 65 insertions(+), 14 deletions(-) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index 278d469fe8..0da3087454 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -10,15 +10,27 @@ pom - - - + + + 5.1.0 - - - - ${project.build.directory}/dependency/alfresco-enterprise-update-package-${project.version} + https://nightlybuilds.alfresco.com/Enterprise-5.1/5.1/LATEST/ALL/alfresco-one-installer-20160203-SNAPSHOT-664-linux-x64.bin + https://nightlybuilds.alfresco.com/Enterprise-5.1/5.1/LATEST/ALL/alfresco-one-installer-20160203-SNAPSHOT-664-linux-x64.bin + + + ${project.build.directory}/test-data/base-alf-installation + ${project.build.directory}/test-data/update-alf-installation + + + --mode unattended --alfresco_admin_password admin --jdbc_username alfresco --jdbc_password alfresco + --tomcat_server_domain ${HOSTNAME} + --enable-components javaalfresco,postgres,libreofficecomponent,alfrescosolr,alfrescosolr4,aosmodule,alfrescowcmqs,alfrescogoogledocs + --alfrescocustomstack_services_startup demand + + + ${project.build.directory}/dependency/alfresco-enterprise-update-package-${project.version} @@ -62,7 +74,8 @@ - + maven-antrun-plugin @@ -76,6 +89,15 @@ + + + + + + + + + @@ -85,17 +107,46 @@ location="${basedir}/target/base-alf-installer.bin" /> Downloading Base Alfresco installer to ${base.installer.location}... - + + + + - - Installing The Base Versoion of Alfresco... + + + + + + + + + Downloading This Alfresco installer to + ${this.installer.location}... + + + + + + + + Installing The base Version of Alfresco... to + ${base.alfresco.instance} + line="${installer.args} --prefix ${base.alfresco.instance} " /> + + + Installing This Version of Alfresco... to + ${update.alfresco.instance} + + From 484eabbb20de208e8c2a4bd43aa36d8bb6f0c78c Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:32:29 +0000 Subject: [PATCH 067/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122189 mrogers: For now we have a hard coded url and its just changed. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123984 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index 0da3087454..9dc78d6431 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -16,8 +16,10 @@ 5.1.0 - https://nightlybuilds.alfresco.com/Enterprise-5.1/5.1/LATEST/ALL/alfresco-one-installer-20160203-SNAPSHOT-664-linux-x64.bin - https://nightlybuilds.alfresco.com/Enterprise-5.1/5.1/LATEST/ALL/alfresco-one-installer-20160203-SNAPSHOT-664-linux-x64.bin + https://nightlybuilds.alfresco.com/Enterprise-5.1/5.1/LATEST/ALL/alfresco-one-installer-20160212-SNAPSHOT-665-linux-x64.bin + + + https://nightlybuilds.alfresco.com/Enterprise-5.1/5.1/LATEST/ALL/alfresco-one-installer-20160212-SNAPSHOT-665-linux-x64.bin ${project.build.directory}/test-data/base-alf-installation From 206255a931c160b1985ddee65accb4971dc7900f Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:32:58 +0000 Subject: [PATCH 068/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122191 mrogers: Try again git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123985 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index 9dc78d6431..f6dc7aa383 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -27,8 +27,7 @@ --mode unattended --alfresco_admin_password admin --jdbc_username alfresco --jdbc_password alfresco - --tomcat_server_domain ${HOSTNAME} - --enable-components javaalfresco,postgres,libreofficecomponent,alfrescosolr,alfrescosolr4,aosmodule,alfrescowcmqs,alfrescogoogledocs + --tomcat_server_domain ${HOSTNAME} --disable-components postgres --enable-components javaalfresco,libreofficecomponent,alfrescosolr,alfrescosolr4,aosmodule,alfrescowcmqs,alfrescogoogledocs --alfrescocustomstack_services_startup demand From e9776b1c1976fd55975a22a3c4cbe48ba6af1d4a Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:33:31 +0000 Subject: [PATCH 069/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122231 mrogers: UTF-382 - Added the skeleton of the End to End update test. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123986 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 26 +- .../src/test/java/EndToEndTest.java | 248 ++++++++++++++++++ 2 files changed, 269 insertions(+), 5 deletions(-) create mode 100644 enterprise-update-test/src/test/java/EndToEndTest.java diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index f6dc7aa383..095cea0195 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -8,6 +8,14 @@ 5.1.1-SNAPSHOT pom + + @@ -15,6 +23,7 @@ and this version's installer e.g. 5.1.0.4-SNAPSHOT --> + 5.1.0 https://nightlybuilds.alfresco.com/Enterprise-5.1/5.1/LATEST/ALL/alfresco-one-installer-20160212-SNAPSHOT-665-linux-x64.bin @@ -23,15 +32,15 @@ ${project.build.directory}/test-data/base-alf-installation - ${project.build.directory}/test-data/update-alf-installation - + ${project.build.directory}/test-data/this-alf-installation + --mode unattended --alfresco_admin_password admin --jdbc_username alfresco --jdbc_password alfresco --tomcat_server_domain ${HOSTNAME} --disable-components postgres --enable-components javaalfresco,libreofficecomponent,alfrescosolr,alfrescosolr4,aosmodule,alfrescowcmqs,alfrescogoogledocs --alfrescocustomstack_services_startup demand - ${project.build.directory}/dependency/alfresco-enterprise-update-package-${project.version} + ${project.build.directory}/test-data/alfresco-enterprise-update-package @@ -67,6 +76,7 @@ alfresco-enterprise-update-package ${project.version} true + ${unpacked.update.package} zip @@ -143,11 +153,11 @@ Installing This Version of Alfresco... to - ${update.alfresco.instance} + ${this.alfresco.instance} - + @@ -190,6 +200,12 @@ true alphabetical + + ${alfresco.update.package} + ${project.build.directory} + ${this.alfresco.instance} + ${base.alfresco.instance} + diff --git a/enterprise-update-test/src/test/java/EndToEndTest.java b/enterprise-update-test/src/test/java/EndToEndTest.java new file mode 100644 index 0000000000..b862e8850c --- /dev/null +++ b/enterprise-update-test/src/test/java/EndToEndTest.java @@ -0,0 +1,248 @@ +/* + * Copyright 2015-2016 Alfresco Software, Ltd. All rights reserved. + * + * License rights for this program may be obtained from Alfresco Software, Ltd. + * pursuant to a written agreement and any use of this program without such an + * agreement is prohibited. + */ + +import static org.junit.Assert.*; + +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.File; +import java.io.IOException; +import java.io.InputStreamReader; +import java.io.OutputStream; +import java.io.OutputStreamWriter; +import java.util.ArrayList; + +import org.junit.Before; +import org.junit.Test; + +public class EndToEndTest +{ + private final static String JAR_FILE_NAME = "alfresco-update-tool.jar"; + + File targetDir; + + private String getBasePath() + { + String basePath = System.getProperty("base.alfresco.instance"); + if (basePath == null) + { + basePath = "./test-data/base-alf-installation"; + } + File base = new File(targetDir, basePath); + assertTrue("base instance does not exist :" + base, base.exists()); + + return base.getAbsolutePath(); + } + + private String getThisPath() + { + String basePath = System.getProperty("this.alfresco.instance"); + if (basePath == null) + { + basePath = "./test-data/this-alf-installation"; + } + File base = new File(targetDir, basePath); + assertTrue("this instance (the one to update) does not exist :" + base, base.exists()); + + return base.getAbsolutePath(); + } + + private String getUpdatePath() + { + String basePath = System.getProperty("unpacked.update.package"); + if (basePath == null) + { + basePath = "./test-data/alfresco-enterprise-update-package"; + } + File base = new File(targetDir, basePath); + assertTrue(base.isDirectory()); + assertTrue("the update package does not exist :" + base, base.exists()); + String[] dirs = base.list(); + assertTrue(dirs.length == 1); + + return new File(base, dirs[0]).getAbsolutePath(); + } + + private void initTargetDir() + { + String targetDir = System.getProperty("alfresco.target.dir"); + if (targetDir == null) + { + targetDir = "./target"; // test needs to be run in target dir. + } + this.targetDir = new File(targetDir); + assertTrue("target dir does not exist :" + targetDir, this.targetDir.exists()); + } + + @Before + public void setUp() throws Exception + { + initTargetDir(); + } + + + @Test + public void testEndToEndUpdate() throws Exception + { + File updateThisOne = new File(getBasePath()); + + File referenceInstance = new File(getThisPath()); + + File updatePackage = new File(getUpdatePath()); + + // Run the update + runUpdateTool(updateThisOne, updatePackage); + + // Run the diff tool + compare(referenceInstance, updateThisOne); + + } + + /** + * Run the update tool + */ + public void runUpdateTool(File instanceToUpdate, File updatePackage) throws Exception + { + // expect to find jar at "lib/alfresco-update-tool.jar" + File jar = new File(updatePackage, "lib/" + JAR_FILE_NAME); + assertTrue("lib/" + JAR_FILE_NAME, jar.exists()); + + // expect to find update resources + + String options = " --assumeyes -u " + updatePackage; + String cmd = "java -jar " + jar.getAbsolutePath() + options + " " + instanceToUpdate.getPath(); + + boolean found = runCommand( + targetDir, + cmd, + null, + 0, + "The update was successful" + ); + + assertTrue("The update was successful", found); + + } + + /** + * Run the diff tool + * + * @param src + * @param dest + */ + public void compare(File src, File dest) + { + //assertTrue("test not implemented", false); + } + + /* + * Method to execute a command + * + * This variant of runCommand takes multiple expected messages. + * If a message is repeated twice in expectedMessage then the message must appear in + * the command line output at least twice to return true. + * + * @param targetLocation location for executing the command + * @param cmd the command to be executed + * @param input - input for command line prompts, may be null if not required + * @param expectedMessage... messages to be verified + * @param expectedReturnCode 0 for success + * @return true the messages are all found + * @throws IOException + */ + public boolean runCommand(File targetLocation, String cmd, String[] input, int expectedReturnCode, String... expectedMessage) throws IOException, InterruptedException + { + Runtime rt = Runtime.getRuntime(); + String line = null; + Process pr = rt.exec(cmd, null, targetLocation); + if(input != null && input.length > 0) + { + Input inputThread = new Input(pr.getOutputStream(), input); + inputThread.start(); + } + + ArrayList toFind = new ArrayList(); + for(int i = 0; i < expectedMessage.length; i++) + { + toFind.add(expectedMessage[i]); + } + + int found; + try (BufferedReader out = new BufferedReader(new InputStreamReader(pr.getInputStream()))) + { + while ((line = out.readLine()) != null) + { + found = -1; + for(int i = 0; i < toFind.size() ; i++) + { + if (line.contains(toFind.get(i))) + { + found = i; + } + } + System.out.println(line); + + if(found >= 0) + { + toFind.remove(found); + } + } + } + + int retCode = pr.waitFor(); + + if(retCode != expectedReturnCode) + { + System.out.println("Not expected return code expected:" + expectedReturnCode + " actual: " + retCode); + return false; + } + + if(toFind.size() == 0) + { + return true; + } + + System.out.println("Did not find expected message: " + toFind); + + return false; + } + + /** + * + */ + protected class Input extends Thread + { + OutputStream is; + String[] input; + + Input(OutputStream is, String[] input) + { + this.is = is; + this.input = input; + } + + public void run() + { + try (BufferedWriter in = new BufferedWriter(new OutputStreamWriter(is));) + { + for (String line : input) + { + in.write(line); + in.newLine(); + System.out.println("wrote : " + line); + } + } + catch (IOException e) + { + + } + } + } + + +} From 1c19cfd4714be1d17a151ab0107ee84b8afe76a1 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:33:33 +0000 Subject: [PATCH 070/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 122613,122620 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123987 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From b67305d17c2d0c62ee6fe7262d9a7b106ffab0e4 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:37:49 +0000 Subject: [PATCH 071/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122643 mrogers: UTF-371 - Add AOS to the update package. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123988 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 15 ++++++++++++-- enterprise-update/pom.xml | 23 ++++++++++++++++++++- pom.xml | 4 ++-- 3 files changed, 37 insertions(+), 5 deletions(-) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index ad4df5cd82..241dec6cb8 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -77,11 +77,22 @@ keep + - ${unpacked.alfresco.enterprise.distribution}/web-server/webapps + ${unpacked.org.alfresco.aos.distribution} resources/war - _vti_bin.war + *.war + + keep + + + + + ${unpacked.org.alfresco.aos.distribution} + resources/amp/platform + + *.amp keep diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index 53788b6e4a..f01bfa931c 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -16,7 +16,8 @@ ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${alfresco.platform.version} ${project.build.directory}/dependency/alfresco-share-distribution-${alfresco.share.version} ${project.build.directory}/dependency/wcmqs-${project.version} - + ${project.build.directory}/dependency/aos-${alfresco.aos-module.version} + ${project.build.directory}/classes/script/${version.major}.${version.minor} @@ -206,6 +207,26 @@ + + + unpack-aos-distribution + generate-resources + + unpack + + + + + org.alfresco.aos-module + alfresco-aos-module-distributionzip + ${alfresco.aos-module.version} + true + zip + ${unpacked.org.alfresco.aos.distribution} + + + + diff --git a/pom.xml b/pom.xml index 2bbdde16bd..db61c1276a 100644 --- a/pom.xml +++ b/pom.xml @@ -23,8 +23,8 @@ 1.0-SNAPSHOT - - + + 1.1 From 6843c4b5b20e0f79771cb7fd9b404aeec5e4cdd6 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:37:51 +0000 Subject: [PATCH 072/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 122662 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123989 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From ef4b24d2a65538ccdc2518690136e2c2e6d18214 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:38:17 +0000 Subject: [PATCH 073/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122672 mward: Changed language level to 1.7 so that IDEs may pick up the correct configuration. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123990 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index 095cea0195..c423f66a7c 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -57,6 +57,15 @@ + + org.apache.maven.plugins + maven-compiler-plugin + 3.5.1 + + 1.7 + 1.7 + + org.apache.maven.plugins maven-dependency-plugin From ca1409b55bc2c9c3e2bc064c620fcdc9efe69f68 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:44:11 +0000 Subject: [PATCH 074/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122680 mward: UTF-383: moved diff tool from update-tool to full-installer code base. Had erroneously added the code to the wrong project. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123991 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 31 ++ .../dircomp/CaseSensitivePathComparator.java | 28 ++ .../update/tool/dircomp/FileTreeCompare.java | 22 ++ .../tool/dircomp/FileTreeCompareImpl.java | 241 ++++++++++++++ .../tool/dircomp/HtmlResultFormatter.java | 155 +++++++++ .../alfresco/update/tool/dircomp/Result.java | 95 ++++++ .../update/tool/dircomp/ResultFormatter.java | 28 ++ .../update/tool/dircomp/ResultSet.java | 40 +++ .../update/tool/dircomp/SortedPathSet.java | 28 ++ .../exception/FileTreeCompareException.java | 31 ++ .../tool/dircomp/FileTreeCompareImplTest.java | 298 ++++++++++++++++++ .../tool/dircomp/HtmlResultFormatterTest.java | 118 +++++++ .../tree1/b/alfresco-testdata-webapp.war | Bin 0 -> 3162 bytes .../file_folders_plus_war/tree1/b/blah.txt | 2 + .../tree1/c/c1/commands.bat | 2 + .../tree1/c/c1/commands.sh | 4 + .../tree1/c/c2/Aardvark.java | 7 + .../tree1/c/c2/Banana.java | 7 + .../file_folders_plus_war/tree2/a/story.txt | 5 + .../tree2/b/alfresco-testdata-webapp.war | Bin 0 -> 3726 bytes .../file_folders_plus_war/tree2/b/blah.txt | 2 + .../tree2/c/c1/commands.bat | 2 + .../tree2/c/c1/commands.sh | 4 + .../tree2/c/c2/Aardvark.java | 7 + .../simple_file_folders/tree1/b/blah.txt | 2 + .../tree1/c/c1/commands.bat | 2 + .../tree1/c/c1/commands.sh | 4 + .../tree1/c/c2/Aardvark.java | 7 + .../tree1/c/c2/Banana.java | 7 + .../simple_file_folders/tree2/a/story.txt | 5 + .../simple_file_folders/tree2/b/blah.txt | 2 + .../tree2/c/c1/commands.bat | 2 + .../tree2/c/c1/commands.sh | 4 + .../tree2/c/c2/Aardvark.java | 7 + 34 files changed, 1199 insertions(+) create mode 100644 enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/CaseSensitivePathComparator.java create mode 100644 enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompare.java create mode 100644 enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java create mode 100644 enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/HtmlResultFormatter.java create mode 100644 enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/Result.java create mode 100644 enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ResultFormatter.java create mode 100644 enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ResultSet.java create mode 100644 enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/SortedPathSet.java create mode 100644 enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/exception/FileTreeCompareException.java create mode 100644 enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java create mode 100644 enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/HtmlResultFormatterTest.java create mode 100644 enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree1/b/alfresco-testdata-webapp.war create mode 100644 enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree1/b/blah.txt create mode 100644 enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree1/c/c1/commands.bat create mode 100644 enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree1/c/c1/commands.sh create mode 100644 enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree1/c/c2/Aardvark.java create mode 100644 enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree1/c/c2/Banana.java create mode 100644 enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree2/a/story.txt create mode 100644 enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree2/b/alfresco-testdata-webapp.war create mode 100644 enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree2/b/blah.txt create mode 100644 enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree2/c/c1/commands.bat create mode 100644 enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree2/c/c1/commands.sh create mode 100644 enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree2/c/c2/Aardvark.java create mode 100644 enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree1/b/blah.txt create mode 100644 enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree1/c/c1/commands.bat create mode 100644 enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree1/c/c1/commands.sh create mode 100644 enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree1/c/c2/Aardvark.java create mode 100644 enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree1/c/c2/Banana.java create mode 100644 enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree2/a/story.txt create mode 100644 enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree2/b/blah.txt create mode 100644 enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree2/c/c1/commands.bat create mode 100644 enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree2/c/c1/commands.sh create mode 100644 enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree2/c/c2/Aardvark.java diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index c423f66a7c..c2d254b468 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -53,6 +53,37 @@ test + + de.schlichtherle.truezip + truezip-driver-zip + 7.7.9 + + + de.schlichtherle.truezip + truezip-file + 7.7.9 + + + commons-io + commons-io + 2.4 + + + org.apache.logging.log4j + log4j-api + 2.3 + + + org.apache.logging.log4j + log4j-core + 2.3 + + + + org.springframework + spring-core + 4.2.4.RELEASE + diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/CaseSensitivePathComparator.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/CaseSensitivePathComparator.java new file mode 100644 index 0000000000..56c03633ba --- /dev/null +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/CaseSensitivePathComparator.java @@ -0,0 +1,28 @@ +/* + * Copyright 2016 Alfresco Software, Ltd. All rights reserved. + * + * License rights for this program may be obtained from Alfresco Software, Ltd. + * pursuant to a written agreement and any use of this program without such an + * agreement is prohibited. + */ +package org.alfresco.update.tool.dircomp; + +import java.nio.file.Path; +import java.util.Comparator; + +/** + * Provides a platform agnostic and consistent sorting mechanism + * for {@link java.nio.file.Path} objects. + * + * @author Matt Ward + */ +public class CaseSensitivePathComparator implements Comparator +{ + @Override + public int compare(Path p1, Path p2) + { + String pathStr1 = p1.toString(); + String pathStr2 = p2.toString(); + return pathStr1.compareTo(pathStr2); + } +} diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompare.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompare.java new file mode 100644 index 0000000000..4c164402df --- /dev/null +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompare.java @@ -0,0 +1,22 @@ +/* + * Copyright 2016 Alfresco Software, Ltd. All rights reserved. + * + * License rights for this program may be obtained from Alfresco Software, Ltd. + * pursuant to a written agreement and any use of this program without such an + * agreement is prohibited. + */ +package org.alfresco.update.tool.dircomp; + +import java.nio.file.Path; +import java.util.List; + + +/** + * File tree comparison tool interface. + * + * @author Matt Ward + */ +public interface FileTreeCompare +{ + ResultSet compare(Path p1, Path p2); +} diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java new file mode 100644 index 0000000000..86dda25b16 --- /dev/null +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java @@ -0,0 +1,241 @@ +/* + * Copyright 2016 Alfresco Software, Ltd. All rights reserved. + * + * License rights for this program may be obtained from Alfresco Software, Ltd. + * pursuant to a written agreement and any use of this program without such an + * agreement is prohibited. + */ +package org.alfresco.update.tool.dircomp; + +import java.io.File; +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.HashSet; +import java.util.List; +import java.util.Set; + +import org.alfresco.update.tool.dircomp.exception.FileTreeCompareException; +import org.apache.commons.io.FileUtils; + +import de.schlichtherle.truezip.file.TArchiveDetector; +import de.schlichtherle.truezip.file.TConfig; +import de.schlichtherle.truezip.file.TFile; +import de.schlichtherle.truezip.file.TVFS; +import de.schlichtherle.truezip.fs.archive.zip.ZipDriver; +import de.schlichtherle.truezip.socket.sl.IOPoolLocator; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.springframework.util.AntPathMatcher; + +/** + * Class capable of comparing two trees of files to determine which directories or + * files appear in one tree and not the other, or whether a file that appears in + * both has differences in its content. + * + * @author Matt Ward + */ +public class FileTreeCompareImpl implements FileTreeCompare +{ + private static final Logger log = LogManager.getLogger(FileTreeCompareImpl.class); + private final Set ignorePaths = new HashSet<>(); + private final AntPathMatcher pathMatcher = new AntPathMatcher(File.separator); + + public FileTreeCompareImpl() + { + this(new HashSet()); + } + + public FileTreeCompareImpl(Set ignorePaths) + { + // This config MUST be present before any TFile objects etc. are created. + TConfig config = TConfig.get(); + config.setArchiveDetector(new TArchiveDetector("war|jar", new ZipDriver(IOPoolLocator.SINGLETON))); + this.ignorePaths.addAll(ignorePaths); + } + + @Override + public ResultSet compare(Path p1, Path p2) + { + ResultSet resultSet = new ResultSet(); + try + { + compare(resultSet.stats, resultSet.results, p1, p2); + } + catch (Exception e) + { + throw new FileTreeCompareException("Unable to compare file trees.", e); + } + return resultSet; + } + + private void compare(ResultSet.Stats stats, List results, Path tree1, Path tree2) throws IOException + { + SortedPathSet set1 = sortedPaths(tree1); + SortedPathSet set2 = sortedPaths(tree2); + + SortedPathSet all = new SortedPathSet(); + all.addAll(set1); + all.addAll(set2); + + for (Path pathToFind : all) + { + if (pathMatchesIgnorePattern(pathToFind)) + { + // Skip paths that we don't want to examine, e.g. tomcat/temp + log.debug("Skipping path: "+pathToFind); + stats.ignoredFileCount++; + continue; + } + + Result result = new Result(); + results.add(result); + stats.resultCount++; + + if (set1.contains(pathToFind) && set2.contains(pathToFind)) + { + log.debug("In both: "+pathToFind); + // Set the results, translating paths back to absolute as required. + result.p1 = tree1.resolve(pathToFind); + result.p2 = tree2.resolve(pathToFind); + boolean contentMatches = false; + if (Files.isRegularFile(result.p1) && Files.isRegularFile(result.p2)) + { + contentMatches = FileUtils.contentEquals(result.p1.toFile(), result.p2.toFile()); + if (!contentMatches && isSpecialArchive(pathToFind)) + { + Path archive1 = extract(result.p1); + Path archive2 = extract(result.p2); + result.subTree1 = archive1; + result.subTree2 = archive2; + final int diffBefore = stats.differenceCount; + compare(stats, result.subResults, archive1, archive2); + final int diffAfter = stats.differenceCount; + if (diffAfter == diffBefore) + { + // No significant differences were found in the (recursive) subtree comparison. + // We can therefore mark the special archive files matching in both trees. + contentMatches = true; + } + } + } + else if (Files.isDirectory(result.p1) && Files.isDirectory(result.p2)) + { + // Two directories are counted as the same. + contentMatches = true; + } + result.equal = contentMatches; + } + else if (set1.contains(pathToFind)) + { + log.debug("In tree1 only: "+pathToFind); + result.p1 = tree1.resolve(pathToFind); + result.p2 = null; + } + else if (set2.contains(pathToFind)) + { + log.debug("In tree2 only: "+pathToFind); + result.p1 = null; + result.p2 = tree2.resolve(pathToFind); + } + else + { + throw new IllegalStateException( + "Something went wrong. The path is not found in either tree: "+pathToFind); + } + + if (!result.equal) + { + stats.differenceCount++; + } + } + } + + private boolean isSpecialArchive(Path pathToFind) + { + return pathToFind.getFileName().toString().toLowerCase().endsWith(".war") || + pathToFind.getFileName().toString().toLowerCase().endsWith(".jar"); + } + + /** + * If the set of paths to ignore ({@link #ignorePaths}) contains + * a pattern matching the specified path, then true is returned. + *

+ * Patterns are ant-style patterns. + * + * @param path The path to check + * @return True if there is a path in the ignorePaths set that is a prefix of the path. + */ + private boolean pathMatchesIgnorePattern(String path) + { + for (String pattern : ignorePaths) + { + if (pathMatcher.match(pattern, path)) + { + return true; + } + } + return false; + } + + /** + * @see #pathMatchesIgnorePattern(String) + */ + private boolean pathMatchesIgnorePattern(Path path) + { + return pathMatchesIgnorePattern(path.toString()); + } + + private Path extract(Path archivePath) throws IOException + { + String destDirName = archivePath.getFileName().toString(); + Path dest = Files.createTempDirectory(destDirName); + extract(archivePath, dest); + return dest; + } + + private void extract(Path archivePath, Path destPath) throws IOException + { + TFile archive = new TFile(archivePath.toFile()); + TFile dest = new TFile(destPath.toFile(), TArchiveDetector.NULL); + try + { + // Unzip the archive. + archive.cp_rp(dest); + } + finally + { + TVFS.umount(archive); + TVFS.umount(dest); + } + } + + /** + * Traverse path and create a {@link SortedPathSet} containing the set + * of paths encountered. The {@link Path} instances are relative to + * the base path provided as a parameter to this method. + * + * @param path The path to traverse. + * @return SortedPathSet + * @throws IOException + */ + protected SortedPathSet sortedPaths(Path path) throws IOException + { + SortedPathSet sortedPaths = new SortedPathSet(); + collectPaths(sortedPaths, path, path.toFile()); + return sortedPaths; + } + + private void collectPaths(SortedPathSet sortedSet, Path root, File path) throws IOException + { + for (File f : path.listFiles()) + { + Path relativePath = root.relativize(f.toPath()); + sortedSet.add(relativePath); + if (f.isDirectory()) + { + collectPaths(sortedSet, root, f); + } + } + } +} diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/HtmlResultFormatter.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/HtmlResultFormatter.java new file mode 100644 index 0000000000..b934897628 --- /dev/null +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/HtmlResultFormatter.java @@ -0,0 +1,155 @@ +/* + * Copyright 2016 Alfresco Software, Ltd. All rights reserved. + * + * License rights for this program may be obtained from Alfresco Software, Ltd. + * pursuant to a written agreement and any use of this program without such an + * agreement is prohibited. + */ +package org.alfresco.update.tool.dircomp; + +import java.io.OutputStream; +import java.io.PrintWriter; +import java.util.List; + +/** + * Format results as HTML. + * + * @author Matt Ward + */ +public class HtmlResultFormatter implements ResultFormatter +{ + private int maxPathDisplayLength = 80; + private boolean differencesOnly; + + + @Override + public void format(ResultSet resultSet, OutputStream out) + { + try(PrintWriter pw = new PrintWriter(out)) + { + pw.println(""); + pw.println(""); + pw.println(""); + pw.println("File tree comparison results"); + pw.println(""); + pw.println(""); + pw.println(""); + pw.println("

Files examined: "+resultSet.stats.resultCount+"

"); + pw.println("

Files with differences: "+resultSet.stats.differenceCount+"

"); + pw.println("

Ignored files: "+resultSet.stats.ignoredFileCount+"

"); + String passOrFail; + if (resultSet.stats.differenceCount > 0) + { + passOrFail = "FAILED"; + } + else + { + passOrFail = "PASSED"; + } + pw.println("

Status: "+passOrFail+"

"); + + outputResultsTable(resultSet.results, pw, 0); + + pw.println(""); + pw.println(""); + } + } + + private void outputResultsTable(List results, PrintWriter pw, int row) + { + pw.println(""); + pw.println(""); + pw.println(""); + pw.println(""); + pw.println(""); + pw.println(""); + pw.println(""); + pw.println(""); + pw.println(""); + + for (Result r : results) + { + ++row; + + outputResult(pw, row, r); + + if (!r.subResults.isEmpty()) + { + // Only show the subresults if there are + if (!differencesOnly || !r.equal) + { + pw.println(""); + } + } + } + + pw.println(""); + pw.println("
#Updated installFresh install
 "); + outputResultsTable(r.subResults, pw, row); + pw.println("
"); + } + + private void outputResult(PrintWriter pw, int row, Result r) + { + if (differencesOnly && r.equal) + { + return; + } + pw.println(""); + + pw.println(""+row+""); + + String p1 = (r.p1 == null) ? "" : r.p1.toString(); + String p1Abbr = abbreviate(p1, maxPathDisplayLength); + String p2 = (r.p2 == null) ? "" : r.p2.toString(); + String p2Abbr = abbreviate(p2, maxPathDisplayLength); + + // TODO: URL/HTML-encode as appropriate + String diffClass; + if (r.equal) + { + if (r.subResults.isEmpty()) + { + // Result refers to a normal file or directory. + diffClass = "info"; + } + else + { + // File is a special archive, but no differences in the sub-results are considered important. + diffClass = "warning"; + } + } + else + { + // The file/directory appears different in each tree. If it is a special archive, then there + // are differences that we care about. + diffClass = "danger"; + } + + pw.println( + String.format("%s%s", + diffClass, + p1, + p1Abbr, + diffClass, + p2, + p2Abbr)); + + pw.println(""); + } + + private String abbreviate(String str, int maxLength) + { + return (str.length() > maxLength) ? "..."+str.substring(str.length()-maxLength) : str; + } + + public void setMaxPathDisplayLength(int maxPathDisplayLength) + { + this.maxPathDisplayLength = maxPathDisplayLength; + } + + public void setDifferencesOnly(boolean differencesOnly) + { + this.differencesOnly = differencesOnly; + } +} diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/Result.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/Result.java new file mode 100644 index 0000000000..355cebb239 --- /dev/null +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/Result.java @@ -0,0 +1,95 @@ +/* + * Copyright 2016 Alfresco Software, Ltd. All rights reserved. + * + * License rights for this program may be obtained from Alfresco Software, Ltd. + * pursuant to a written agreement and any use of this program without such an + * agreement is prohibited. + */ +package org.alfresco.update.tool.dircomp; + +import java.nio.file.Path; +import java.util.ArrayList; +import java.util.List; + +/** + * Simple struct-style result data class. + * + * @author Matt Ward + */ +public final class Result +{ + /** + * The path within tree1 being compared (intended to be the updated Alfresco installation). + *

+ * This field will be null if the file in question appears only in the tree2. + */ + Path p1; + /** + * The path within tree2 being compared (intended to be the freshly installed equivalent of {@link #p1}). + *

+ * This field will be null if the file in question appears only in the tree1. + */ + Path p2; + /** + * Are the paths in {@link #p1} and {@link #p2} of identical content? If they refer to a directory, then + * equal in this sense is to have the same directory name. If they refer to a plain file, then equal means + * that they contain the exact same contents. + */ + boolean equal; + /** + * The root path of sub-tree1 to which {@link #subResults} refers. + * @see #subResults + */ + Path subTree1; + /** + * The root path of sub-tree2 to which {@link #subResults} refers. + * @see #subResults + */ + Path subTree2; + /** + * If p1 and p2 refer to a special archive with differences, e.g. they refer to alfresco.war, + * then a deep comparison of the archives will be performed and the results stored here. + *

+ * The paths to the expanded archives will be stored in {@link #subTree1} and {@link #subTree2} + * and all the paths in {@link #subResults} will be within those new roots. + */ + List subResults = new ArrayList<>(); + + @Override + public int hashCode() + { + final int prime = 31; + int result = 1; + result = prime * result + (this.equal ? 1231 : 1237); + result = prime * result + ((this.p1 == null) ? 0 : this.p1.hashCode()); + result = prime * result + ((this.p2 == null) ? 0 : this.p2.hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) + { + if (this == obj) return true; + if (obj == null) return false; + if (getClass() != obj.getClass()) return false; + Result other = (Result) obj; + if (this.equal != other.equal) return false; + if (this.p1 == null) + { + if (other.p1 != null) return false; + } + else if (!this.p1.equals(other.p1)) return false; + if (this.p2 == null) + { + if (other.p2 != null) return false; + } + else if (!this.p2.equals(other.p2)) return false; + return true; + } + + @Override + public String toString() + { + return String.format("Result[p1=%s, p2=%s, equal=%b]", p1, p2, equal); + } +} diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ResultFormatter.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ResultFormatter.java new file mode 100644 index 0000000000..6eddc194a1 --- /dev/null +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ResultFormatter.java @@ -0,0 +1,28 @@ +/* + * Copyright 2016 Alfresco Software, Ltd. All rights reserved. + * + * License rights for this program may be obtained from Alfresco Software, Ltd. + * pursuant to a written agreement and any use of this program without such an + * agreement is prohibited. + */ +package org.alfresco.update.tool.dircomp; + +import java.io.OutputStream; +import java.util.Collection; + +/** + * Format a set of {@link Result} objects. + * + * @author Matt Ward + */ +public interface ResultFormatter +{ + /** + * Format the result set to the supplied {@link OutputStream}. The caller + * must take care of creating and destroying the OutputStream correctly. + * + * @param results The results to format. + * @param out The stream to format the results to. + */ + void format(ResultSet results, OutputStream out); +} diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ResultSet.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ResultSet.java new file mode 100644 index 0000000000..fecd88a1ff --- /dev/null +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ResultSet.java @@ -0,0 +1,40 @@ +package org.alfresco.update.tool.dircomp; + +import java.util.ArrayList; +import java.util.List; + +/* + * Copyright 2015-2016 Alfresco Software, Ltd. All rights reserved. + * + * License rights for this program may be obtained from Alfresco Software, Ltd. + * pursuant to a written agreement and any use of this program without such an + * agreement is prohibited. + */ +public class ResultSet +{ + final List results = new ArrayList<>(); + final Stats stats = new Stats(); + + /** + * Class for aggregating basic statistics relating to the directory tree comparisons. + *

+ * For all counts, unless specified otherwise, if a file appears in both trees, it is + * counted only once, as it is relative files we are tracking regardless of which + * tree(s) they exist in. + */ + public static class Stats + { + /** + * The number of files (including directories) examined. + */ + int resultCount; + /** + * The number of files discovered to have differences. + */ + int differenceCount; + /** + * The number of files that were completely ignored due to being in the ignore list. + */ + int ignoredFileCount; + } +} diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/SortedPathSet.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/SortedPathSet.java new file mode 100644 index 0000000000..52c7087cb6 --- /dev/null +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/SortedPathSet.java @@ -0,0 +1,28 @@ +/* + * Copyright 2016 Alfresco Software, Ltd. All rights reserved. + * + * License rights for this program may be obtained from Alfresco Software, Ltd. + * pursuant to a written agreement and any use of this program without such an + * agreement is prohibited. + */ +package org.alfresco.update.tool.dircomp; + +import java.nio.file.Path; +import java.util.TreeSet; + +/** + * Sorted set of {@link Path} objects that provides consistent + * cross-platform sort order. + * + * @see java.util.TreeSet + * @author Matt Ward + */ +public class SortedPathSet extends TreeSet +{ + private static final long serialVersionUID = 1L; + + public SortedPathSet() + { + super(new CaseSensitivePathComparator()); + } +} diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/exception/FileTreeCompareException.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/exception/FileTreeCompareException.java new file mode 100644 index 0000000000..ebf1e4545f --- /dev/null +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/exception/FileTreeCompareException.java @@ -0,0 +1,31 @@ +/* + * Copyright 2016 Alfresco Software, Ltd. All rights reserved. + * + * License rights for this program may be obtained from Alfresco Software, Ltd. + * pursuant to a written agreement and any use of this program without such an + * agreement is prohibited. + */ +package org.alfresco.update.tool.dircomp.exception; + +import org.alfresco.update.tool.dircomp.FileTreeCompare; + +/** + * Exception class representing failures during file tree comparison. + * + * @see FileTreeCompare + * @author Matt Ward + */ +public class FileTreeCompareException extends RuntimeException +{ + private static final long serialVersionUID = 1L; + + public FileTreeCompareException(String message) + { + super(message); + } + + public FileTreeCompareException(String message, Throwable cause) + { + super(message, cause); + } +} diff --git a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java new file mode 100644 index 0000000000..5abde16cf1 --- /dev/null +++ b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java @@ -0,0 +1,298 @@ +/* + * Copyright 2016 Alfresco Software, Ltd. All rights reserved. + * + * License rights for this program may be obtained from Alfresco Software, Ltd. + * pursuant to a written agreement and any use of this program without such an + * agreement is prohibited. + */ +package org.alfresco.update.tool.dircomp; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; + +import java.io.File; +import java.io.IOException; +import java.net.URISyntaxException; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.HashSet; +import java.util.Iterator; +import java.util.List; +import java.util.Set; + +import org.junit.Before; +import org.junit.Test; +import org.springframework.util.AntPathMatcher; + +/** + * Tests for the {@link FileTreeCompareImpl} class. + * + * @author Matt Ward + */ +public class FileTreeCompareImplTest +{ + FileTreeCompareImpl comparator; + + @Before + public void setUp() throws Exception + { + comparator = new FileTreeCompareImpl(); + } + + @Test + public void canGetSortedPathSet() throws IOException + { + Path tree = pathFromClasspath("dir_compare/simple_file_folders/tree1"); + SortedPathSet paths = comparator.sortedPaths(tree); + Iterator it = paths.iterator(); + + System.out.println("Paths:"); + for (Path p : paths) + { + System.out.println("\t"+p); + } + + assertEquals(11, paths.size()); + + assertEquals("a", unixPathStr(tree, it.next())); + assertEquals("b", unixPathStr(tree, it.next())); + assertEquals("b/blah.txt", unixPathStr(tree, it.next())); + assertEquals("c", unixPathStr(tree, it.next())); + assertEquals("c/c1", unixPathStr(tree, it.next())); + assertEquals("c/c1/commands.bat", unixPathStr(tree, it.next())); + assertEquals("c/c1/commands.sh", unixPathStr(tree, it.next())); + assertEquals("c/c2", unixPathStr(tree, it.next())); + assertEquals("c/c2/Aardvark.java", unixPathStr(tree, it.next())); + assertEquals("c/c2/Banana.java", unixPathStr(tree, it.next())); + assertEquals("d", unixPathStr(tree, it.next())); + } + + private String unixPathStr(Path root, Path path) + { + // Allow test to run on Windows also + String pathStr = path.toString(); + pathStr = pathStr.replace(File.separatorChar, '/'); + return pathStr; + } + + @Test + public void canDiffSimpleTreesOfFilesAndFolders() + { + Path tree1 = pathFromClasspath("dir_compare/simple_file_folders/tree1"); + Path tree2 = pathFromClasspath("dir_compare/simple_file_folders/tree2"); + + ResultSet resultSet = comparator.compare(tree1, tree2); + + System.out.println("Comparison results:"); + for (Result r : resultSet.results) + { + System.out.println("\t"+r); + } + + // One result for each relative file/folder + assertEquals(13, resultSet.results.size()); + assertEquals(13, resultSet.stats.resultCount); + + Iterator rit = resultSet.results.iterator(); + // TODO: currently all of the files are in one, other or both but where they + // are in both, the file *contents* are identical. + // TODO: evolve test data and functionality to cope with different file contents. + assertResultEquals(tree1.resolve("a"), tree2.resolve("a"), true, rit.next()); + assertResultEquals(null, tree2.resolve("a/story.txt"), false, rit.next()); + assertResultEquals(tree1.resolve("b"), tree2.resolve("b"), true, rit.next()); + assertResultEquals(tree1.resolve("b/blah.txt"), tree2.resolve("b/blah.txt"), true, rit.next()); + assertResultEquals(tree1.resolve("c"), tree2.resolve("c"), true, rit.next()); + assertResultEquals(tree1.resolve("c/c1"), tree2.resolve("c/c1"), true, rit.next()); + assertResultEquals(tree1.resolve("c/c1/commands.bat"), tree2.resolve("c/c1/commands.bat"), true, rit.next()); + assertResultEquals(tree1.resolve("c/c1/commands.sh"), tree2.resolve("c/c1/commands.sh"), true, rit.next()); + assertResultEquals(tree1.resolve("c/c2"), tree2.resolve("c/c2"), true, rit.next()); + // Aardvark.java appears in both trees but is not the same! + assertResultEquals(tree1.resolve("c/c2/Aardvark.java"), tree2.resolve("c/c2/Aardvark.java"), false, rit.next()); + assertResultEquals(tree1.resolve("c/c2/Banana.java"), null, false, rit.next()); + assertResultEquals(tree1.resolve("d"), null, false, rit.next()); + assertResultEquals(null, tree2.resolve("e"), false, rit.next()); + } + + /** + * A "learning test" allowing me to check my assumptions and document the expected behaviour. + */ + @Test + public void testAntPathMatcher() + { + AntPathMatcher matcher = new AntPathMatcher(); + assertTrue(matcher.match("**/common/lib/**/*.pc", "prefix/common/lib/pkgconfig/ImageMagick++-6.Q16.pc")); + assertFalse(matcher.match("**/common/lib/**/*.pc", "/absolute/prefix/common/lib/pkgconfig/ImageMagick++-6.Q16.pc")); + assertTrue(matcher.match("/**/common/lib/**/*.pc", "/absolute/prefix/common/lib/pkgconfig/ImageMagick++-6.Q16.pc")); + assertTrue(matcher.match("common/lib/**/*.pc", "common/lib/pkgconfig/Wand.pc")); + assertTrue(matcher.match("**/*.pc", "common/lib/pkgconfig/Wand.pc")); + assertFalse(matcher.match("*.pc", "common/lib/pkgconfig/Wand.pc")); + + assertTrue(matcher.match("libreoffice.app/Contents/Resources/bootstraprc", "libreoffice.app/Contents/Resources/bootstraprc")); + assertTrue(matcher.match("*.sh", "alfresco.sh")); + assertFalse(matcher.match("*.sh", "a/different/alfresco.sh")); + + // What about path separators? + assertTrue(matcher.match("**\\common\\lib\\**\\*.pc", "prefix\\common\\lib\\pkgconfig\\ImageMagick++-6.Q16.pc")); + assertTrue(matcher.match("\\**\\common\\lib\\**\\*.pc", "\\absolute\\prefix\\common\\lib\\pkgconfig\\ImageMagick++-6.Q16.pc")); + + // Path separator must be set before this will work + assertFalse(matcher.match("**/common/lib/**/*.pc", "prefix\\common\\lib\\pkgconfig\\ImageMagick++-6.Q16.pc")); + matcher.setPathSeparator("\\"); + assertTrue(matcher.match("**/common/lib/**/*.pc", "prefix\\common\\lib\\pkgconfig\\ImageMagick++-6.Q16.pc")); + } + + @Test + public void canIgnoreSpecifiedPaths() + { + Path tree1 = pathFromClasspath("dir_compare/simple_file_folders/tree1"); + Path tree2 = pathFromClasspath("dir_compare/simple_file_folders/tree2"); + + Set ignorePaths = new HashSet<>(); + ignorePaths.add("b/blah.txt"); + ignorePaths.add("c/c2/**"); + ignorePaths.add("d/**"); + ignorePaths.add("e/**"); + comparator = new FileTreeCompareImpl(ignorePaths); + + // Perform the comparison + ResultSet resultSet = comparator.compare(tree1, tree2); + + System.out.println("Comparison results:"); + for (Result r : resultSet.results) + { + System.out.println("\t"+r); + } + + Iterator rit = resultSet.results.iterator(); + assertResultEquals(tree1.resolve("a"), tree2.resolve("a"), true, rit.next()); + assertResultEquals(null, tree2.resolve("a/story.txt"), false, rit.next()); + assertResultEquals(tree1.resolve("b"), tree2.resolve("b"), true, rit.next()); + // No b/blah.txt here. + assertResultEquals(tree1.resolve("c"), tree2.resolve("c"), true, rit.next()); + assertResultEquals(tree1.resolve("c/c1"), tree2.resolve("c/c1"), true, rit.next()); + assertResultEquals(tree1.resolve("c/c1/commands.bat"), tree2.resolve("c/c1/commands.bat"), true, rit.next()); + assertResultEquals(tree1.resolve("c/c1/commands.sh"), tree2.resolve("c/c1/commands.sh"), true, rit.next()); + // No c/c2, c/c2/Aardvark.java, c/c2/Banana.java, d or e here. + + List results = resultSet.results; + assertResultNotPresent(tree1.resolve("b/blah.txt"), tree2.resolve("b/blah.txt"), true, results); + assertResultNotPresent(tree1.resolve("c/c2"), tree2.resolve("c/c2"), true, results); + assertResultNotPresent(tree1.resolve("c/c2/Aardvark.java"), tree2.resolve("c/c2/Aardvark.java"), false, results); + assertResultNotPresent(tree1.resolve("c/c2/Banana.java"), null, false, results); + assertResultNotPresent(tree1.resolve("d"), null, false, results); + assertResultNotPresent(null, tree2.resolve("e"), false, results); + assertEquals(7, results.size()); + + // TODO: What about paths within war/jar/zip files? + } + + @Test + public void canDiffTreesContainingWarFiles() + { + Path tree1 = pathFromClasspath("dir_compare/file_folders_plus_war/tree1"); + Path tree2 = pathFromClasspath("dir_compare/file_folders_plus_war/tree2"); + + ResultSet resultSet = comparator.compare(tree1, tree2); + + System.out.println("Comparison results:"); + for (Result r : resultSet.results) + { + System.out.println("\t"+r); + } + + // The 14 top-level results + 17 sub-results. + assertEquals(31, resultSet.stats.resultCount); + + // One result for each relative file/folder + assertEquals(14, resultSet.results.size()); + + + Iterator rit = resultSet.results.iterator(); + // TODO: currently all of the files are in one, other or both but where they + // are in both, the file *contents* are identical. + // TODO: evolve test data and functionality to cope with different file contents. + assertResultEquals(tree1.resolve("a"), tree2.resolve("a"), true, rit.next()); + assertResultEquals(null, tree2.resolve("a/story.txt"), false, rit.next()); + assertResultEquals(tree1.resolve("b"), tree2.resolve("b"), true, rit.next()); + + // Examine the results of the war file comparison + Result result = rit.next(); + // The WAR files are different. + assertResultEquals( + tree1.resolve("b/alfresco-testdata-webapp.war"), + tree2.resolve("b/alfresco-testdata-webapp.war"), + false, + result); + List subResults = result.subResults; + System.out.println("subResults:"); + for (Result r : subResults) + { + System.out.println("\t"+r); + } + Iterator subIt = subResults.iterator(); + Path subTree1 = result.subTree1; + Path subTree2 = result.subTree2; + assertEquals(17, subResults.size()); + assertResultEquals(subTree1.resolve("META-INF"), subTree2.resolve("META-INF"), true, subIt.next()); + assertResultEquals(subTree1.resolve("META-INF/MANIFEST.MF"), subTree2.resolve("META-INF/MANIFEST.MF"), false, subIt.next()); + assertResultEquals(subTree1.resolve("META-INF/maven"), subTree2.resolve("META-INF/maven"), true, subIt.next()); + assertResultEquals(subTree1.resolve("META-INF/maven/org.alfresco.dummy"), subTree2.resolve("META-INF/maven/org.alfresco.dummy"), true, subIt.next()); + assertResultEquals(subTree1.resolve("META-INF/maven/org.alfresco.dummy/alfresco-testdata-webapp"), subTree2.resolve("META-INF/maven/org.alfresco.dummy/alfresco-testdata-webapp"), true, subIt.next()); + assertResultEquals(subTree1.resolve("META-INF/maven/org.alfresco.dummy/alfresco-testdata-webapp/pom.properties"), subTree2.resolve("META-INF/maven/org.alfresco.dummy/alfresco-testdata-webapp/pom.properties"), false, subIt.next()); + assertResultEquals(subTree1.resolve("META-INF/maven/org.alfresco.dummy/alfresco-testdata-webapp/pom.xml"), subTree2.resolve("META-INF/maven/org.alfresco.dummy/alfresco-testdata-webapp/pom.xml"), true, subIt.next()); + assertResultEquals(subTree1.resolve("WEB-INF"), subTree2.resolve("WEB-INF"), true, subIt.next()); + assertResultEquals(subTree1.resolve("WEB-INF/classes"), subTree2.resolve("WEB-INF/classes"), true, subIt.next()); + assertResultEquals(subTree1.resolve("WEB-INF/classes/org"), subTree2.resolve("WEB-INF/classes/org"), true, subIt.next()); + assertResultEquals(subTree1.resolve("WEB-INF/classes/org/alfresco"), subTree2.resolve("WEB-INF/classes/org/alfresco"), true, subIt.next()); + assertResultEquals(subTree1.resolve("WEB-INF/classes/org/alfresco/testdata"), subTree2.resolve("WEB-INF/classes/org/alfresco/testdata"), true, subIt.next()); + assertResultEquals(subTree1.resolve("WEB-INF/classes/org/alfresco/testdata/webapp"), subTree2.resolve("WEB-INF/classes/org/alfresco/testdata/webapp"), true, subIt.next()); + assertResultEquals(null, subTree2.resolve("WEB-INF/classes/org/alfresco/testdata/webapp/Another.class"), false, subIt.next()); + assertResultEquals(subTree1.resolve("WEB-INF/classes/org/alfresco/testdata/webapp/ExampleJavaClass.class"), subTree2.resolve("WEB-INF/classes/org/alfresco/testdata/webapp/ExampleJavaClass.class"), true, subIt.next()); + assertResultEquals(subTree1.resolve("WEB-INF/web.xml"), subTree2.resolve("WEB-INF/web.xml"), true, subIt.next()); + assertResultEquals(subTree1.resolve("index.jsp"), subTree2.resolve("index.jsp"), false, subIt.next()); + + // Back up to the top-level comparisons + assertResultEquals(tree1.resolve("b/blah.txt"), tree2.resolve("b/blah.txt"), true, rit.next()); + assertResultEquals(tree1.resolve("c"), tree2.resolve("c"), true, rit.next()); + assertResultEquals(tree1.resolve("c/c1"), tree2.resolve("c/c1"), true, rit.next()); + assertResultEquals(tree1.resolve("c/c1/commands.bat"), tree2.resolve("c/c1/commands.bat"), true, rit.next()); + assertResultEquals(tree1.resolve("c/c1/commands.sh"), tree2.resolve("c/c1/commands.sh"), true, rit.next()); + assertResultEquals(tree1.resolve("c/c2"), tree2.resolve("c/c2"), true, rit.next()); + // Aardvark.java appears in both trees but is not the same! + assertResultEquals(tree1.resolve("c/c2/Aardvark.java"), tree2.resolve("c/c2/Aardvark.java"), false, rit.next()); + assertResultEquals(tree1.resolve("c/c2/Banana.java"), null, false, rit.next()); + assertResultEquals(tree1.resolve("d"), null, false, rit.next()); + assertResultEquals(null, tree2.resolve("e"), false, rit.next()); + } + + private void assertResultNotPresent(Path p1, Path p2, boolean contentEqual, List results) + { + Result r = new Result(); + r.p1 = p1; + r.p2 = p2; + r.equal = contentEqual; + assertFalse("Result should not be present: "+r, results.contains(r)); + } + + private void assertResultEquals(Path p1, Path p2, boolean contentEqual, Result result) + { + Result expected = new Result(); + expected.p1 = p1; + expected.p2 = p2; + expected.equal = contentEqual; + assertEquals(expected, result); + } + + private Path pathFromClasspath(String path) + { + try + { + return Paths.get(getClass().getClassLoader().getResource(path).toURI()); + } + catch (URISyntaxException error) + { + throw new RuntimeException(""); + } + } +} diff --git a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/HtmlResultFormatterTest.java b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/HtmlResultFormatterTest.java new file mode 100644 index 0000000000..09d7919ba4 --- /dev/null +++ b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/HtmlResultFormatterTest.java @@ -0,0 +1,118 @@ +/* + * Copyright 2016 Alfresco Software, Ltd. All rights reserved. + * + * License rights for this program may be obtained from Alfresco Software, Ltd. + * pursuant to a written agreement and any use of this program without such an + * agreement is prohibited. + */ +package org.alfresco.update.tool.dircomp; + +import java.io.BufferedOutputStream; +import java.io.ByteArrayOutputStream; +import java.io.FileOutputStream; +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Set; + +import org.apache.commons.io.FileUtils; +import org.junit.Before; +import org.junit.Ignore; +import org.junit.Test; +import org.springframework.util.AntPathMatcher; + +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; + +/** + * Tests for the {@link HtmlResultFormatter} class. + *

+ * TODO: currently these aren't tests so much as useful utilities to help with manual testing. + * + * @author Matt Ward + */ +public class HtmlResultFormatterTest +{ + @Before + public void setUp() throws Exception + { + } + + @Test + public void canFormatToHTML() throws IOException + { + ResultSet resultSet = new ResultSet(); + List results = resultSet.results; + addResult(results, "/t1/a", "/t2/a", true); + addResult(results, "/t1/a/b", "/t2/a/b", true); + addResult(results, "/t1/a/c", "/t2/a/c", true); + addResult(results, "/t1/a/b/c/something.txt", "/t2/a/b/c/something.txt", true); + addResult(results, "/t1/a/b/c/another.txt", "/t2/a/b/c/another.txt", false); + addResult(results, null, "/t2/a/b/c/blah.txt", false); + addResult(results, "/t1/dir-only-in-p1", null, false); + addResult(results, null, "/t2/dir-only-in-p2", false); + + try(ByteArrayOutputStream os = new ByteArrayOutputStream()) + { + HtmlResultFormatter formatter = new HtmlResultFormatter(); + formatter.format(resultSet, os); + System.out.println(os.toString()); + + // Uncomment to write to file +// Path file = Files.createTempFile(getClass().getSimpleName(), ".html"); +// FileUtils.write(file.toFile(), os.toString()); +// System.out.println("File: "+file); + } + } + + @Ignore + @Test + public void bigDiff() throws IOException + { + Path path1 = Paths.get("/Users/MWard/dev2/alf-installs/alf-5.1-b667"); + Path path2 = Paths.get("/Users/MWard/dev2/alf-installs/alf-5.1-b669"); + + Set ignores = new HashSet<>(); + ignores.add("alf_data/postgresql/**"); + ignores.add("META-INF/MANIFEST.MF"); + ignores.add("META-INF/maven/**"); + ignores.add("README.txt"); + + // Temporary ignores, until we sort out custom diffing or pre-processing before diffs. + ignores.add("**/*.sh"); + ignores.add("**/*.bat"); + ignores.add("uninstall.app/**"); + ignores.add("common/bin/**"); + ignores.add("common/include/**"); + ignores.add("common/lib/**/*.pc"); + ignores.add("common/lib/**/*.la"); + ignores.add("libreoffice.app/Contents/Resources/bootstraprc"); + ignores.add("postgresql/bin/**"); + + FileTreeCompare comparator = new FileTreeCompareImpl(ignores); + ResultSet resultSet = comparator.compare(path1, path2); + + Path file = Files.createTempFile(getClass().getSimpleName(), ".html"); + HtmlResultFormatter formatter = new HtmlResultFormatter(); + formatter.setDifferencesOnly(true); + try(FileOutputStream fos = new FileOutputStream(file.toFile()); + BufferedOutputStream bos = new BufferedOutputStream(fos)) + { + formatter.format(resultSet, bos); + } + System.out.println("File: "+file); + } + + private void addResult(List results, String p1, String p2, boolean contentMatch) + { + Result r = new Result(); + r.p1 = p1 != null ? Paths.get(p1) : null; + r.p2 = p2 != null ? Paths.get(p2) : null; + r.equal = contentMatch; + results.add(r); + } +} diff --git a/enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree1/b/alfresco-testdata-webapp.war b/enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree1/b/alfresco-testdata-webapp.war new file mode 100644 index 0000000000000000000000000000000000000000..8f1c6ac5f2deabd1b77d898a424608942540e5d7 GIT binary patch literal 3162 zcmWIWW@h1HVBlb2s3{KeU_b(#K(?=Ih@-BjpPPOFP?-n=2L}g+G7)5DzK(vLZmz*0 zdcJN`C!X~?Y#`9`e%c?tI>y~)x163vbFp`Ege(c@oInG{JTK*zDjG1A`P30|O{Pv4=Y_ zDj33Do#4TaU6lZms^px+;^Nd|a3o<@4T>a~nK0G)Md^5S$l}nEn3GnNTAZAZN2?kk zttF|&B`Jv|iFnM=CEASg)TG3M0bmHPx-H8 z36gXxlUr$N`IGD6PghILF0)?_jC#_wE7sV#7y=`Ronwz|nvxdKB_=?OI|n$E>Q>i^ z#N2|MRIkLcL}yUc>4BqUs=uM%VF!UZzB1B1o=Pfm4(uKUtg0PqT&^jtOjGLK$~;`u zecmd*AwN(t@B@QfYlO6xRoT*u=Q7fk{QXn)pP`_!u*>e7FpqE#$H%EFeRimQ>Gv0F z$#^tvmcc3CrO$8sF8pgN9yX=<&eR<7H@>Iqk80S=YFkkBJiO~|^L5{sAs2ijiW0uA z;a-<*TKmv9_iNAmilm*HdYmuk-u@MIf5x__AJ#vt(G73oU_Nwn|0>SMW~+6=wM(Pd zlu8z~%(J<}chYNRf{stAjKrLMjd4$3C<^vi7k0=Vd~>`Zc1di_`r_34pdjU9(vNxs z3@~qCK0pL1dYthi1t~Cs^(u06VtY?>H5-VyeE-=Mece>NB)lo%YU_pe0PmNpj;JJb z9ZN{+u8$WF%9w6^X69kDpO&lNhcf10ZMhS*V%=}&nSvZnM^2|aSaH;1$IZ&CyLG3y z1svIP?%^^ikF{^NJc#3GQ<72^Tb`g8{r)ZA$CL4McAX3`{Gze%}p#z&C>^FM?F~P(n~4L&8^gjadlxCMi-jc3-WV8LDD<?Xhm>v3pPkcwj7xR> zXG_h`(ss$WR+O)a*|t3?akY8QL%+}mi=Lge+`C{)tE?B3RLv}n%}e|Fy{kOEg3_Lg zR7WpQ5G*~i|MQvi)4z$wevW)rAGr5J#PP0u?>*}Ux7MF3@{6BdzS<*(BUAPSSMfXV z$kkan^DZy4DN894;#T5iTl%4_>aDRpf}??1NBX}$AF&PT!8#yQBTJN4J-IQfJ6+UAV%S*S@&e&Dp3U z>xxG9l&KEZKgxJ&mmD}T=er+QdC`KE>dlY7NGJ>Ioe-VrU)GB-%EO$H(i7xu;%3a8DQrXeN7CU$|*bfJC0!s+fxxxrC9_3OLS zZ9SdaY}hVckPonwNox`-H_{0#ZkbgzA$-DerQIUWWoCsrs->JO`*b_WS98Y$qqlNb zSMRnJoxP{`-8%2r>V5AoUN(zZ_js2aPi=&o%%S}Mli6-H9cy^mURBap3-#QF zNvrxoNpAJIAtFBHy6>CD%-6-O@1A+yXWn_{EdO(U|8vd{Z^FR|gFv7Vh=Q+$5rjo} zfOo8crLHUnXDE*c)DRFT6#8Fk2v#+$E)HX8aL`f?YnXoK0q&l{hUiZjU*RX%YW&$t zKFh{%7;x^|Xq&Kp&qS=vKiepI8Fl+G9y*?XL|hzwIqTng{W2C_QGA?S;o*tl91@n@ zZKua|%etWh5NOjzL0RqE!%A`7i3^I0y4JLL*?T@CMcjRsx_9hcvZQH%)vf&(|4l7E&K*XaJ1uo% z*X}n^_~8b*HqTE}ZR2LtR!4nBZ0Mz~v$FZ;$57J0-KMCNty_1Hd)r4rr|8E*coS}D z6-O8m&IW;qvO^$XJy$L}fCR+aKySI~D{F0F(Q@^2rcw#iZy2qt4PwOb$PlL}RPukB`Vy$VZqB~WYxt1;X&(Uu7iTj0o2#Y!DYL>g_V9Ki1j>0* z$(8Ns_6OI8ZeTjhN;xe=4E^(A?IH<5!==(Nlt^|9O=V6;QBEwZggq=i7{G`dI%2<7 z06dH;@T}eg8ozp6U2l@FJAoqi4UA-StjRr{4Pkv(Zz}fo_RcMs3zQy?Bp8L*PV zjJ6vIo61FPl&*E3)=V#Wc8qtpRX0w8T5vbA;P=#mY9!aG__69C!Gqq?ne*bvcD3`T zMP8lNk6p;1Y30uIpAo*>@!X}P#-2KlQ43YL_E5hlWV@$Dcmv@+{&@fGxvyvXwE6ed zRO}E5e&D8&qV=S#3$2tzRHoVcNDs9?KQM*%zUj1$PQ{_`i5V z7O%JAbKtc;b4@+rCDW7m#FMWv$t8Gk&9sg>R7j2~40*b}gEyy9xH;Rb%v!8c3TN00_~^!z5P}mXZpVir9q%Gk?chup@!p0lDUNWI0PAEBeqM! zzvywd`%(JB*Wg76Il_mgJuS#9m;{|jFEy=}oJuj<9PR!#BS)bFTlAq1Td=TC=ulcz zf4Y~@2(~l41+A46dx7%7nl>8s0y}K^2x~)e`cl6B%5mkeK`il0()mD_J05a8!{_?u zEC#Zw-i==!43)Kxg>p2#tiQ}Nq*5khz1z>O+)soYov+moZ#OP=k}>t$BAizjapc_} z5&}t@KJns>BW))g=nkP*se}Qrq%d}Q+qXc$On|a7y8}V}>muQ2DJjsda)CrIhvZIJ zlmg8%H+(vJ zaONWim|q>fjO`+D`WL{ndVYGqzsrk~=e7>9+OEAN0p<2pw_TjeRJ{gqR&NU5KTxl|a5F~Sm|Zk9 z2VGf|!fz6cF}67R0TE(X>?GjVTtC_MFmqbSVe;_%aP!)6n>JeACrr4&t?&*C&M`Bf z%*Y<?Ei zKFe-ycxvHOWi^>R3+x%uJsMAnni?r%;_`=PZl{#h^P44&8Oltpe{YAd2q4ZYvdwL7 zEAT@?X~-8BzDReT*=g@~BDQ5Hcc&k3%$f+ZG=wp;}JrZ_^pBxCBFSs zs-ga#c+Y3(<7w$Snt%H9hS3}D=gr_?0h9}+Qc-WGgm(za-QSdL=AYtGpJj+Vrmoq?X&IYU}{Dde+d$eJq@k_*fo0qM8=c`E-BkLv1z?_fxlqHpK&X`UVFp?mrSF z%>R!&nL;8HD83#9s&ab`JW>Gxc~tA@BX~3?L)6ts*yaHDGtLuls%o`1dgNLte65ws z|Ki4{PRqIii{JE>jrQd1fRwqO zSNZ$IE)F!kI;4GS%YZ(;C(!#gL0!0YFTeW}(&AYu+p{gvvvGT48|uK!gL;jtqJX?o zzTJ2>b_B=Di~=NwOR@nnstdj?cL3f5G-FOzR@ws+5r)tsq=46DGZyN&5`);RWd+hDrqwwXD+V1}%bIy=FlOfp)=Ok+^>Tr9iWz@l6%ULN0kE0XU4it9 z=}HY)W{d(bQUMRM?20jM*7ON79H!6EpZ2*-zL^xLjEW)jh}}RR{#=&dPxKdl^iX? zz^r2i{Jt80G-jPe;HF^+JwlqBrG5VP-eHXgPB_*H08TiD&?6)OESKB$@5N)zJG==O TkUInd2R;r!*~Nf%hd}-V9Nxz3 literal 0 HcmV?d00001 diff --git a/enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree2/b/blah.txt b/enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree2/b/blah.txt new file mode 100644 index 0000000000..e508b95435 --- /dev/null +++ b/enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree2/b/blah.txt @@ -0,0 +1,2 @@ +Sample content +More sample content diff --git a/enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree2/c/c1/commands.bat b/enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree2/c/c1/commands.bat new file mode 100644 index 0000000000..fb7b3bb193 --- /dev/null +++ b/enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree2/c/c1/commands.bat @@ -0,0 +1,2 @@ +echo Hello +echo World diff --git a/enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree2/c/c1/commands.sh b/enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree2/c/c1/commands.sh new file mode 100644 index 0000000000..35d5edb327 --- /dev/null +++ b/enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree2/c/c1/commands.sh @@ -0,0 +1,4 @@ +#!/bin/bash + +echo hello +echo world diff --git a/enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree2/c/c2/Aardvark.java b/enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree2/c/c2/Aardvark.java new file mode 100644 index 0000000000..bf3d78b9f5 --- /dev/null +++ b/enterprise-update-test/src/test/resources/dir_compare/file_folders_plus_war/tree2/c/c2/Aardvark.java @@ -0,0 +1,7 @@ +public class Aardvark +{ + public static void main(String[] args) + { + System.out.println("Hello Aardvark!"); + } +} diff --git a/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree1/b/blah.txt b/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree1/b/blah.txt new file mode 100644 index 0000000000..e508b95435 --- /dev/null +++ b/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree1/b/blah.txt @@ -0,0 +1,2 @@ +Sample content +More sample content diff --git a/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree1/c/c1/commands.bat b/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree1/c/c1/commands.bat new file mode 100644 index 0000000000..fb7b3bb193 --- /dev/null +++ b/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree1/c/c1/commands.bat @@ -0,0 +1,2 @@ +echo Hello +echo World diff --git a/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree1/c/c1/commands.sh b/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree1/c/c1/commands.sh new file mode 100644 index 0000000000..35d5edb327 --- /dev/null +++ b/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree1/c/c1/commands.sh @@ -0,0 +1,4 @@ +#!/bin/bash + +echo hello +echo world diff --git a/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree1/c/c2/Aardvark.java b/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree1/c/c2/Aardvark.java new file mode 100644 index 0000000000..5733268500 --- /dev/null +++ b/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree1/c/c2/Aardvark.java @@ -0,0 +1,7 @@ +public class Aardvark +{ + public static void main(String[] args) + { + System.out.println("Aardvark!"); + } +} diff --git a/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree1/c/c2/Banana.java b/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree1/c/c2/Banana.java new file mode 100644 index 0000000000..a9d5570d63 --- /dev/null +++ b/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree1/c/c2/Banana.java @@ -0,0 +1,7 @@ +public class Aardvark +{ + public static void main(String[] args) + { + System.out.println("Banana!"); + } +} diff --git a/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree2/a/story.txt b/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree2/a/story.txt new file mode 100644 index 0000000000..69c3b8a81a --- /dev/null +++ b/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree2/a/story.txt @@ -0,0 +1,5 @@ +Once upon +A time +Lived +A +Troll diff --git a/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree2/b/blah.txt b/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree2/b/blah.txt new file mode 100644 index 0000000000..e508b95435 --- /dev/null +++ b/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree2/b/blah.txt @@ -0,0 +1,2 @@ +Sample content +More sample content diff --git a/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree2/c/c1/commands.bat b/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree2/c/c1/commands.bat new file mode 100644 index 0000000000..fb7b3bb193 --- /dev/null +++ b/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree2/c/c1/commands.bat @@ -0,0 +1,2 @@ +echo Hello +echo World diff --git a/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree2/c/c1/commands.sh b/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree2/c/c1/commands.sh new file mode 100644 index 0000000000..35d5edb327 --- /dev/null +++ b/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree2/c/c1/commands.sh @@ -0,0 +1,4 @@ +#!/bin/bash + +echo hello +echo world diff --git a/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree2/c/c2/Aardvark.java b/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree2/c/c2/Aardvark.java new file mode 100644 index 0000000000..bf3d78b9f5 --- /dev/null +++ b/enterprise-update-test/src/test/resources/dir_compare/simple_file_folders/tree2/c/c2/Aardvark.java @@ -0,0 +1,7 @@ +public class Aardvark +{ + public static void main(String[] args) + { + System.out.println("Hello Aardvark!"); + } +} From 10970e2f723bc634bbe4b5e38e80b6c4aab9b528 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:44:23 +0000 Subject: [PATCH 075/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122681 mward: Added some sensible svn ignore patterns. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123992 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From caddeb90a660c3298b88789f38112a46797bd91e Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:44:59 +0000 Subject: [PATCH 076/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122694 mward: UTF-378: moved the big end-to-end to happen during integration testing. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123993 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 2 +- .../java/{EndToEndTest.java => EndToEndIntegrationTest.java} | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) rename enterprise-update-test/src/test/java/{EndToEndTest.java => EndToEndIntegrationTest.java} (99%) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index c2d254b468..385542017a 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -132,7 +132,7 @@ fetch-installer - generate-test-resources + pre-integration-test run diff --git a/enterprise-update-test/src/test/java/EndToEndTest.java b/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java similarity index 99% rename from enterprise-update-test/src/test/java/EndToEndTest.java rename to enterprise-update-test/src/test/java/EndToEndIntegrationTest.java index b862e8850c..9694d09c10 100644 --- a/enterprise-update-test/src/test/java/EndToEndTest.java +++ b/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java @@ -20,7 +20,7 @@ import java.util.ArrayList; import org.junit.Before; import org.junit.Test; -public class EndToEndTest +public class EndToEndIntegrationTest { private final static String JAR_FILE_NAME = "alfresco-update-tool.jar"; From dcc5304f9f71c39a3537279b1531efb851fd980b Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:47:37 +0000 Subject: [PATCH 077/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122698 mward: UTF-378: bring back all the default java behaviour by removing the pom packaging specification. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123994 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index 385542017a..9cb12a74cf 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -1,13 +1,13 @@ - - 4.0.0 - alfresco-enterprise-update-test - End to end test of the installer and update - - org.alfresco - alfresco-full-installation - 5.1.1-SNAPSHOT - - pom + + 4.0.0 + alfresco-enterprise-update-test + End to end test of the installer and update + + org.alfresco + alfresco-full-installation + 5.1.1-SNAPSHOT + - - - - - - 5.1.0 - https://nightlybuilds.alfresco.com/Enterprise-5.1/5.1/LATEST/ALL/alfresco-one-installer-20160212-SNAPSHOT-665-linux-x64.bin + + - - https://nightlybuilds.alfresco.com/Enterprise-5.1/5.1/LATEST/ALL/alfresco-one-installer-20160212-SNAPSHOT-665-linux-x64.bin - ${project.build.directory}/test-data/base-alf-installation ${project.build.directory}/test-data/this-alf-installation @@ -125,8 +118,7 @@ - + maven-antrun-plugin @@ -139,67 +131,63 @@ - + - + - + + Is base.installer.version provided ? + + + + + + + - - Downloading Base Alfresco installer to - ${base.installer.location}... - - - - + + Downloading Base Alfresco installer ${base.installer.version}... + + + + + + Installing the base Version of Alfresco... to ${base.alfresco.instance} + + + - - - Downloading This Alfresco installer to - ${this.installer.location}... - - - - + + + + + + - Installing The base Version of Alfresco... to - ${base.alfresco.instance} - - - - - Installing This Version of Alfresco... to - ${this.alfresco.instance} - + Installing newly generated version of Alfresco... + + @@ -273,8 +261,6 @@ - - From dbb45ae1b4a30d7d3eaa0f033b4751e17fd6a464 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:50:27 +0000 Subject: [PATCH 079/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122730 jphuynh: BDE-539: Fixed path and added base version extension check. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123997 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index ea0d3bd7db..690861c11c 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -142,12 +142,17 @@ Is base.installer.version provided ? - + + + + + + - + - + @@ -159,7 +164,7 @@ Downloading Base Alfresco installer ${base.installer.version}... - + @@ -167,7 +172,7 @@ - + @@ -178,7 +183,7 @@ - + From 536e7d884d39cd3597577bff8c8e82b799704acc Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:50:33 +0000 Subject: [PATCH 080/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122731 mward: UTF-383: added support for ignoring differences in files where it is just the absolute tree root. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123998 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../tool/dircomp/FileTreeCompareImpl.java | 133 ++++++++++++++---- .../tool/dircomp/HtmlResultFormatter.java | 2 + .../update/tool/dircomp/ResultSet.java | 4 + .../tool/dircomp/FileTreeCompareImplTest.java | 73 +++++++++- .../tool/dircomp/HtmlResultFormatterTest.java | 29 ++-- 5 files changed, 200 insertions(+), 41 deletions(-) diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java index 86dda25b16..3959de78fa 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java @@ -7,13 +7,10 @@ */ package org.alfresco.update.tool.dircomp; -import java.io.File; -import java.io.IOException; +import java.io.*; import java.nio.file.Files; import java.nio.file.Path; -import java.util.HashSet; -import java.util.List; -import java.util.Set; +import java.util.*; import org.alfresco.update.tool.dircomp.exception.FileTreeCompareException; import org.apache.commons.io.FileUtils; @@ -39,19 +36,21 @@ public class FileTreeCompareImpl implements FileTreeCompare { private static final Logger log = LogManager.getLogger(FileTreeCompareImpl.class); private final Set ignorePaths = new HashSet<>(); + private final Set allowedDiffsPaths = new HashSet<>(); private final AntPathMatcher pathMatcher = new AntPathMatcher(File.separator); public FileTreeCompareImpl() { - this(new HashSet()); + this(new HashSet(), new HashSet()); } - public FileTreeCompareImpl(Set ignorePaths) + public FileTreeCompareImpl(Set ignorePaths, Set allowedDiffsPath) { // This config MUST be present before any TFile objects etc. are created. TConfig config = TConfig.get(); config.setArchiveDetector(new TArchiveDetector("war|jar", new ZipDriver(IOPoolLocator.SINGLETON))); this.ignorePaths.addAll(ignorePaths); + this.allowedDiffsPaths.addAll(allowedDiffsPath); } @Override @@ -102,22 +101,41 @@ public class FileTreeCompareImpl implements FileTreeCompare if (Files.isRegularFile(result.p1) && Files.isRegularFile(result.p2)) { contentMatches = FileUtils.contentEquals(result.p1.toFile(), result.p2.toFile()); - if (!contentMatches && isSpecialArchive(pathToFind)) + if (!contentMatches) { - Path archive1 = extract(result.p1); - Path archive2 = extract(result.p2); - result.subTree1 = archive1; - result.subTree2 = archive2; - final int diffBefore = stats.differenceCount; - compare(stats, result.subResults, archive1, archive2); - final int diffAfter = stats.differenceCount; - if (diffAfter == diffBefore) + if (pathMatchesAllowedDiffsPattern(pathToFind)) { - // No significant differences were found in the (recursive) subtree comparison. - // We can therefore mark the special archive files matching in both trees. - contentMatches = true; + File f1 = preprocessFile(tree1, result.p1.toFile()); + File f2 = preprocessFile(tree2, result.p2.toFile()); + contentMatches = FileUtils.contentEquals(f1, f2); + if (contentMatches) + { + // If the preprocessed files match, then although the files didn't + // match when first compared byte-for-byte, they do match as far as we are concerned. + // But add to the stats that this is what has happened. + stats.suppressedDifferenceCount++; + } +// f1.delete(); +// f2.delete(); + } + else if (isSpecialArchive(pathToFind)) + { + Path archive1 = extract(result.p1); + Path archive2 = extract(result.p2); + result.subTree1 = archive1; + result.subTree2 = archive2; + final int diffBefore = stats.differenceCount; + compare(stats, result.subResults, archive1, archive2); + final int diffAfter = stats.differenceCount; + if (diffAfter == diffBefore) + { + // No significant differences were found in the (recursive) subtree comparison. + // We can therefore mark the special archive files matching in both trees. + contentMatches = true; + } } } + } else if (Files.isDirectory(result.p1) && Files.isDirectory(result.p2)) { @@ -151,31 +169,78 @@ public class FileTreeCompareImpl implements FileTreeCompare } } + private File preprocessFile(Path tree, File orig) throws IOException + { + // Create a set of replacements that we intend to make. Replacing them with + // a known token allows us to remove differences (that we're not interested in) in the files. + Map replacements = new HashMap<>(); + replacements.put(tree.toAbsolutePath().toString(), replacementToken("comparison_root")); + + File processed = Files.createTempFile(orig.getName(), ".tmp").toFile(); + try(Reader r = new FileReader(orig); + BufferedReader br = new BufferedReader(r); + Writer w = new FileWriter(processed); + PrintWriter pw = new PrintWriter(w)) + { + String line; + while ((line = br.readLine()) != null) + { + for (String replKey : replacements.keySet()) + { + String replVal = replacements.get(replKey); + line = line.replace(replKey, replVal); + } + pw.println(line); + } + } + return processed; + } + + private String replacementToken(String label) + { + return String.format("@$@$@$@${{TREE_COMPARE_%s}}", label); + } + private boolean isSpecialArchive(Path pathToFind) { return pathToFind.getFileName().toString().toLowerCase().endsWith(".war") || pathToFind.getFileName().toString().toLowerCase().endsWith(".jar"); } + /** + * If the set of paths to allow certain differences ({@link #allowedDiffsPaths}) + * contains a pattern matching the specified path, then true is returned. + *

+ * Patterns are ant-style patterns. + * + * @param path The path to check + * @return True if there is a pattern in the allowedDiffsPaths set matching the path. + */ + private boolean pathMatchesAllowedDiffsPattern(String path) + { + return pathMatchesPattern(path, allowedDiffsPaths); + } + + /** + * @see #pathMatchesAllowedDiffsPattern(String) + */ + private boolean pathMatchesAllowedDiffsPattern(Path path) + { + return pathMatchesAllowedDiffsPattern(path.toString()); + } + /** * If the set of paths to ignore ({@link #ignorePaths}) contains * a pattern matching the specified path, then true is returned. *

* Patterns are ant-style patterns. - * + * * @param path The path to check * @return True if there is a path in the ignorePaths set that is a prefix of the path. */ private boolean pathMatchesIgnorePattern(String path) { - for (String pattern : ignorePaths) - { - if (pathMatcher.match(pattern, path)) - { - return true; - } - } - return false; + return pathMatchesPattern(path, ignorePaths); } /** @@ -186,6 +251,18 @@ public class FileTreeCompareImpl implements FileTreeCompare return pathMatchesIgnorePattern(path.toString()); } + private boolean pathMatchesPattern(String path, Set patterns) + { + for (String pattern : patterns) + { + if (pathMatcher.match(pattern, path)) + { + return true; + } + } + return false; + } + private Path extract(Path archivePath) throws IOException { String destDirName = archivePath.getFileName().toString(); diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/HtmlResultFormatter.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/HtmlResultFormatter.java index b934897628..55a127073e 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/HtmlResultFormatter.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/HtmlResultFormatter.java @@ -32,10 +32,12 @@ public class HtmlResultFormatter implements ResultFormatter pw.println(""); pw.println("File tree comparison results"); pw.println(""); + pw.println(""); pw.println(""); pw.println(""); pw.println("

Files examined: "+resultSet.stats.resultCount+"

"); pw.println("

Files with differences: "+resultSet.stats.differenceCount+"

"); + pw.println("

Files with allowed differences: "+resultSet.stats.suppressedDifferenceCount+"

"); pw.println("

Ignored files: "+resultSet.stats.ignoredFileCount+"

"); String passOrFail; if (resultSet.stats.differenceCount > 0) diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ResultSet.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ResultSet.java index fecd88a1ff..a66d4a473b 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ResultSet.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ResultSet.java @@ -32,6 +32,10 @@ public class ResultSet * The number of files discovered to have differences. */ int differenceCount; + /** + * The number of files discovered to have differences, but where we do not care. + */ + int suppressedDifferenceCount; /** * The number of files that were completely ignored due to being in the ignore list. */ diff --git a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java index 5abde16cf1..c182c47a00 100644 --- a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java +++ b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java @@ -21,6 +21,7 @@ import java.util.Iterator; import java.util.List; import java.util.Set; +import org.apache.commons.io.FileUtils; import org.junit.Before; import org.junit.Test; import org.springframework.util.AntPathMatcher; @@ -153,7 +154,7 @@ public class FileTreeCompareImplTest ignorePaths.add("c/c2/**"); ignorePaths.add("d/**"); ignorePaths.add("e/**"); - comparator = new FileTreeCompareImpl(ignorePaths); + comparator = new FileTreeCompareImpl(ignorePaths, new HashSet()); // Perform the comparison ResultSet resultSet = comparator.compare(tree1, tree2); @@ -185,8 +186,76 @@ public class FileTreeCompareImplTest assertEquals(7, results.size()); // TODO: What about paths within war/jar/zip files? + // ...at the moment, if we specify a path of "mydir/README.txt" to be ignored, + // this will be ignored in the main tree, e.g. /mydir/README.txt but also + // within sub-trees if there is a match, e.g. /mydir/README.txt } - + + @Test + public void canSpecifyFilesThatShouldHaveCertainDifferencesAllowed() throws IOException + { + Path tree1 = pathFromClasspath("dir_compare/allowed_differences/tree1"); + Path tree2 = pathFromClasspath("dir_compare/allowed_differences/tree2"); + + // Check that two identical trees are... identical! + ResultSet resultSet = comparator.compare(tree1, tree2); + assertEquals(0, resultSet.stats.differenceCount); + assertEquals(0, resultSet.stats.ignoredFileCount); + assertEquals(4, resultSet.stats.resultCount); + assertEquals(4, resultSet.results.size()); + + // Now add files that are different only in there use of tree1 and tree2's absolute paths. + File t1File = new File(tree1.toFile(), "different.txt"); + t1File.deleteOnExit(); + FileUtils.write(t1File, sampleText(tree1.toAbsolutePath().toString())); + + File t2File = new File(tree2.toFile(), "different.txt"); + t2File.deleteOnExit(); + FileUtils.write(t2File, sampleText(tree2.toAbsolutePath().toString())); + + // Perform the comparison + comparator = new FileTreeCompareImpl(); + resultSet = comparator.compare(tree1, tree2); + + // We should see a difference + assertEquals(0, resultSet.stats.suppressedDifferenceCount); + assertEquals(1, resultSet.stats.differenceCount); + assertEquals(0, resultSet.stats.ignoredFileCount); + assertEquals(5, resultSet.stats.resultCount); + assertEquals(5, resultSet.results.size()); + + Iterator rit = resultSet.results.iterator(); + assertResultEquals(tree1.resolve("different.txt"), tree2.resolve("different.txt"), false, rit.next()); + + // Perform the comparison again, but after allowing the files to be different. + Set allowedDiffsPaths = new HashSet<>(); + allowedDiffsPaths.add("**/*.txt"); + + // Perform the comparison + comparator = new FileTreeCompareImpl(new HashSet(), allowedDiffsPaths); + resultSet = comparator.compare(tree1, tree2); + + // We should see a difference - but it is in the 'suppressed' list. + assertEquals(1, resultSet.stats.suppressedDifferenceCount); + assertEquals(0, resultSet.stats.differenceCount); + assertEquals(0, resultSet.stats.ignoredFileCount); + assertEquals(5, resultSet.stats.resultCount); + assertEquals(5, resultSet.results.size()); + + rit = resultSet.results.iterator(); + assertResultEquals(tree1.resolve("different.txt"), tree2.resolve("different.txt"), true, rit.next()); + } + + private String sampleText(String absPath) + { + StringBuilder sb = new StringBuilder(); + sb.append("This is some example text\n"); + sb.append("...in tree: "+absPath); + sb.append(" ...and here is some more text.\n"); + sb.append("The End."); + return sb.toString(); + } + @Test public void canDiffTreesContainingWarFiles() { diff --git a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/HtmlResultFormatterTest.java b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/HtmlResultFormatterTest.java index 09d7919ba4..85d1f3ddf9 100644 --- a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/HtmlResultFormatterTest.java +++ b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/HtmlResultFormatterTest.java @@ -81,19 +81,26 @@ public class HtmlResultFormatterTest ignores.add("META-INF/MANIFEST.MF"); ignores.add("META-INF/maven/**"); ignores.add("README.txt"); - - // Temporary ignores, until we sort out custom diffing or pre-processing before diffs. - ignores.add("**/*.sh"); - ignores.add("**/*.bat"); ignores.add("uninstall.app/**"); - ignores.add("common/bin/**"); - ignores.add("common/include/**"); - ignores.add("common/lib/**/*.pc"); - ignores.add("common/lib/**/*.la"); - ignores.add("libreoffice.app/Contents/Resources/bootstraprc"); - ignores.add("postgresql/bin/**"); - FileTreeCompare comparator = new FileTreeCompareImpl(ignores); + // All the patterns will be applied to these files, e.g. they will all have differences + // in absolute path references ignored. + Set ignoreSpecialDifferences = new HashSet<>(); + ignoreSpecialDifferences.add("common/bin/**"); + ignoreSpecialDifferences.add("common/include/**/*.h"); + ignoreSpecialDifferences.add("common/lib/**/*.pc"); + ignoreSpecialDifferences.add("common/lib/**/*.la"); + ignoreSpecialDifferences.add("libreoffice.app/Contents/Resources/bootstraprc"); + ignoreSpecialDifferences.add("postgresql/bin/**"); + ignoreSpecialDifferences.add("**/*.sh"); + ignoreSpecialDifferences.add("**/*.bat"); + ignoreSpecialDifferences.add("**/*.ini"); + ignoreSpecialDifferences.add("**/*.properties"); + ignoreSpecialDifferences.add("**/*.xml"); + ignoreSpecialDifferences.add("**/*.sample"); + ignoreSpecialDifferences.add("**/*.txt"); + + FileTreeCompare comparator = new FileTreeCompareImpl(ignores, ignoreSpecialDifferences); ResultSet resultSet = comparator.compare(path1, path2); Path file = Files.createTempFile(getClass().getSimpleName(), ".html"); From 17c2f95a00e408b4be9e797d255566aa47d41d76 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:50:42 +0000 Subject: [PATCH 081/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122745 mward: UTF-383: added support for deep differencing in amp files. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@123999 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../alfresco/update/tool/dircomp/FileTreeCompareImpl.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java index 3959de78fa..d82a7b0a24 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java @@ -48,7 +48,7 @@ public class FileTreeCompareImpl implements FileTreeCompare { // This config MUST be present before any TFile objects etc. are created. TConfig config = TConfig.get(); - config.setArchiveDetector(new TArchiveDetector("war|jar", new ZipDriver(IOPoolLocator.SINGLETON))); + config.setArchiveDetector(new TArchiveDetector("war|jar|amp", new ZipDriver(IOPoolLocator.SINGLETON))); this.ignorePaths.addAll(ignorePaths); this.allowedDiffsPaths.addAll(allowedDiffsPath); } @@ -204,7 +204,8 @@ public class FileTreeCompareImpl implements FileTreeCompare private boolean isSpecialArchive(Path pathToFind) { return pathToFind.getFileName().toString().toLowerCase().endsWith(".war") || - pathToFind.getFileName().toString().toLowerCase().endsWith(".jar"); + pathToFind.getFileName().toString().toLowerCase().endsWith(".jar") || + pathToFind.getFileName().toString().toLowerCase().endsWith(".amp"); } /** From d2a2b48ee9f899c4aaea306c77902be19a5b765d Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:50:47 +0000 Subject: [PATCH 082/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122751 mward: UTF-384: wired in comparison tool and HTML formatter to the build. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124000 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../tool/dircomp/FileTreeCompareImpl.java | 34 ++++++++- .../test/java/EndToEndIntegrationTest.java | 69 ++++++++++++++----- .../tool/dircomp/HtmlResultFormatterTest.java | 45 ------------ 3 files changed, 84 insertions(+), 64 deletions(-) diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java index d82a7b0a24..df0f1ba45b 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java @@ -41,16 +41,44 @@ public class FileTreeCompareImpl implements FileTreeCompare public FileTreeCompareImpl() { - this(new HashSet(), new HashSet()); + this(null, null); } - public FileTreeCompareImpl(Set ignorePaths, Set allowedDiffsPath) + public FileTreeCompareImpl(Set ignorePaths, Set allowedDiffsPaths) { // This config MUST be present before any TFile objects etc. are created. TConfig config = TConfig.get(); config.setArchiveDetector(new TArchiveDetector("war|jar|amp", new ZipDriver(IOPoolLocator.SINGLETON))); + if (ignorePaths == null) + { + // Add default ignores + ignorePaths = new HashSet<>(); + ignorePaths.add("alf_data/postgresql/**"); + ignorePaths.add("META-INF/MANIFEST.MF"); + ignorePaths.add("META-INF/maven/**"); + ignorePaths.add("README.txt"); + ignorePaths.add("uninstall.app/**"); + } + if (allowedDiffsPaths == null) + { + // Add default paths where certain differences are allowed, e.g. absolute path references. + allowedDiffsPaths = new HashSet<>(); + allowedDiffsPaths.add("common/bin/**"); + allowedDiffsPaths.add("common/include/**/*.h"); + allowedDiffsPaths.add("common/lib/**/*.pc"); + allowedDiffsPaths.add("common/lib/**/*.la"); + allowedDiffsPaths.add("libreoffice.app/Contents/Resources/bootstraprc"); + allowedDiffsPaths.add("postgresql/bin/**"); + allowedDiffsPaths.add("**/*.sh"); + allowedDiffsPaths.add("**/*.bat"); + allowedDiffsPaths.add("**/*.ini"); + allowedDiffsPaths.add("**/*.properties"); + allowedDiffsPaths.add("**/*.xml"); + allowedDiffsPaths.add("**/*.sample"); + allowedDiffsPaths.add("**/*.txt"); + } this.ignorePaths.addAll(ignorePaths); - this.allowedDiffsPaths.addAll(allowedDiffsPath); + this.allowedDiffsPaths.addAll(allowedDiffsPaths); } @Override diff --git a/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java b/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java index 9694d09c10..e19bcb75a6 100644 --- a/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java +++ b/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java @@ -6,20 +6,24 @@ * agreement is prohibited. */ -import static org.junit.Assert.*; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.IOException; -import java.io.InputStreamReader; -import java.io.OutputStream; -import java.io.OutputStreamWriter; -import java.util.ArrayList; - +import org.alfresco.update.tool.dircomp.FileTreeCompare; +import org.alfresco.update.tool.dircomp.FileTreeCompareImpl; +import org.alfresco.update.tool.dircomp.HtmlResultFormatter; +import org.alfresco.update.tool.dircomp.ResultSet; import org.junit.Before; +import org.junit.Ignore; import org.junit.Test; +import java.io.*; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.ArrayList; +import java.util.HashSet; +import java.util.Set; + +import static org.junit.Assert.assertTrue; + public class EndToEndIntegrationTest { private final static String JAR_FILE_NAME = "alfresco-update-tool.jar"; @@ -132,14 +136,47 @@ public class EndToEndIntegrationTest /** * Run the diff tool * - * @param src - * @param dest + * @param path1 + * @param path2 */ - public void compare(File src, File dest) + public void compare(File path1, File path2) throws IOException { - //assertTrue("test not implemented", false); + FileTreeCompare comparator = new FileTreeCompareImpl(); + ResultSet resultSet = comparator.compare(path1.toPath(), path2.toPath()); + + File dircompDir = new File(targetDir, "installation-diff"); + dircompDir.mkdirs(); + + // Format the results as an HTML report. + File file = new File(dircompDir, "installation-diff-report.html"); + file.createNewFile(); + + HtmlResultFormatter formatter = new HtmlResultFormatter(); + formatter.setDifferencesOnly(true); + try(FileOutputStream fos = new FileOutputStream(file); + BufferedOutputStream bos = new BufferedOutputStream(fos)) + { + formatter.format(resultSet, bos); + } } - + + /** + * Utility/harness to allow easy testing of {@link #compare(File, File)}. + *

+ * Uncomment @Ignore, but do not check in. + * + * @throws IOException + */ + @Ignore + @Test + public void bigDiff() throws IOException + { + Path path1 = Paths.get("/Users/MWard/dev2/alf-installs/alf-5.1-b667"); + Path path2 = Paths.get("/Users/MWard/dev2/alf-installs/alf-5.1-b669"); + + compare(path1.toFile(), path2.toFile()); + } + /* * Method to execute a command * diff --git a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/HtmlResultFormatterTest.java b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/HtmlResultFormatterTest.java index 85d1f3ddf9..6ba39f8c6b 100644 --- a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/HtmlResultFormatterTest.java +++ b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/HtmlResultFormatterTest.java @@ -68,51 +68,6 @@ public class HtmlResultFormatterTest // System.out.println("File: "+file); } } - - @Ignore - @Test - public void bigDiff() throws IOException - { - Path path1 = Paths.get("/Users/MWard/dev2/alf-installs/alf-5.1-b667"); - Path path2 = Paths.get("/Users/MWard/dev2/alf-installs/alf-5.1-b669"); - - Set ignores = new HashSet<>(); - ignores.add("alf_data/postgresql/**"); - ignores.add("META-INF/MANIFEST.MF"); - ignores.add("META-INF/maven/**"); - ignores.add("README.txt"); - ignores.add("uninstall.app/**"); - - // All the patterns will be applied to these files, e.g. they will all have differences - // in absolute path references ignored. - Set ignoreSpecialDifferences = new HashSet<>(); - ignoreSpecialDifferences.add("common/bin/**"); - ignoreSpecialDifferences.add("common/include/**/*.h"); - ignoreSpecialDifferences.add("common/lib/**/*.pc"); - ignoreSpecialDifferences.add("common/lib/**/*.la"); - ignoreSpecialDifferences.add("libreoffice.app/Contents/Resources/bootstraprc"); - ignoreSpecialDifferences.add("postgresql/bin/**"); - ignoreSpecialDifferences.add("**/*.sh"); - ignoreSpecialDifferences.add("**/*.bat"); - ignoreSpecialDifferences.add("**/*.ini"); - ignoreSpecialDifferences.add("**/*.properties"); - ignoreSpecialDifferences.add("**/*.xml"); - ignoreSpecialDifferences.add("**/*.sample"); - ignoreSpecialDifferences.add("**/*.txt"); - - FileTreeCompare comparator = new FileTreeCompareImpl(ignores, ignoreSpecialDifferences); - ResultSet resultSet = comparator.compare(path1, path2); - - Path file = Files.createTempFile(getClass().getSimpleName(), ".html"); - HtmlResultFormatter formatter = new HtmlResultFormatter(); - formatter.setDifferencesOnly(true); - try(FileOutputStream fos = new FileOutputStream(file.toFile()); - BufferedOutputStream bos = new BufferedOutputStream(fos)) - { - formatter.format(resultSet, bos); - } - System.out.println("File: "+file); - } private void addResult(List results, String p1, String p2, boolean contentMatch) { From c4d708e3921cbb00ebc3d23545aa15d8e6cfaf89 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:50:57 +0000 Subject: [PATCH 083/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122752 mward: UTF-378: Delete temp files when no longer needed git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124001 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../alfresco/update/tool/dircomp/FileTreeCompareImpl.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java index df0f1ba45b..6170694c11 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java @@ -136,6 +136,9 @@ public class FileTreeCompareImpl implements FileTreeCompare File f1 = preprocessFile(tree1, result.p1.toFile()); File f2 = preprocessFile(tree2, result.p2.toFile()); contentMatches = FileUtils.contentEquals(f1, f2); + // Delete the files now that we no longer need them. The originals are still available. + f1.delete(); + f2.delete(); if (contentMatches) { // If the preprocessed files match, then although the files didn't @@ -143,8 +146,6 @@ public class FileTreeCompareImpl implements FileTreeCompare // But add to the stats that this is what has happened. stats.suppressedDifferenceCount++; } -// f1.delete(); -// f2.delete(); } else if (isSpecialArchive(pathToFind)) { From 86664bbe028f94831ede5b25e71f2b12f299b457 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:51:17 +0000 Subject: [PATCH 084/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122753 jphuynh: BDE-539: Changed wget to ant get. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124002 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index 690861c11c..d33d589250 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -163,9 +163,7 @@ Downloading Base Alfresco installer ${base.installer.version}... - - - + Installing the base Version of Alfresco... to ${base.alfresco.instance} From 7d8f2da5b51eb11a4129b03237657c60627bf2cc Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:51:27 +0000 Subject: [PATCH 085/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122755 mward: UTF-378: Fix unit tests git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124003 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../alfresco/update/tool/dircomp/FileTreeCompareImplTest.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java index c182c47a00..25794f51b2 100644 --- a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java +++ b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java @@ -38,7 +38,7 @@ public class FileTreeCompareImplTest @Before public void setUp() throws Exception { - comparator = new FileTreeCompareImpl(); + comparator = new FileTreeCompareImpl(new HashSet(), new HashSet()); } @Test @@ -214,7 +214,7 @@ public class FileTreeCompareImplTest FileUtils.write(t2File, sampleText(tree2.toAbsolutePath().toString())); // Perform the comparison - comparator = new FileTreeCompareImpl(); + comparator = new FileTreeCompareImpl(new HashSet(), new HashSet()); resultSet = comparator.compare(tree1, tree2); // We should see a difference From 33b9cbf0112ee39d90f3ce8ad3e0af928fc50000 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:51:52 +0000 Subject: [PATCH 086/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122756 jphuynh: BDE-539: Fixed typo. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124004 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index d33d589250..58fceb9def 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -163,7 +163,7 @@ Downloading Base Alfresco installer ${base.installer.version}... - + Installing the base Version of Alfresco... to ${base.alfresco.instance} From a3de76ef9ecf738b8d03a81e1db88de65bc49677 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:52:01 +0000 Subject: [PATCH 087/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122763 mward: UTF-378: improve result set formatting. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124005 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../tool/dircomp/HtmlResultFormatter.java | 33 +++++++++++++------ .../tool/dircomp/HtmlResultFormatterTest.java | 7 +++- 2 files changed, 29 insertions(+), 11 deletions(-) diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/HtmlResultFormatter.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/HtmlResultFormatter.java index 55a127073e..4fda857aed 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/HtmlResultFormatter.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/HtmlResultFormatter.java @@ -25,6 +25,8 @@ public class HtmlResultFormatter implements ResultFormatter @Override public void format(ResultSet resultSet, OutputStream out) { + boolean failed = resultSet.stats.differenceCount > 0; + try(PrintWriter pw = new PrintWriter(out)) { pw.println(""); @@ -32,26 +34,37 @@ public class HtmlResultFormatter implements ResultFormatter pw.println(""); pw.println("File tree comparison results"); pw.println(""); - pw.println(""); + pw.println(""); pw.println(""); pw.println(""); - pw.println("

Files examined: "+resultSet.stats.resultCount+"

"); - pw.println("

Files with differences: "+resultSet.stats.differenceCount+"

"); - pw.println("

Files with allowed differences: "+resultSet.stats.suppressedDifferenceCount+"

"); - pw.println("

Ignored files: "+resultSet.stats.ignoredFileCount+"

"); + pw.println("
"); + String passOrFail; - if (resultSet.stats.differenceCount > 0) + String alertClass; + if (failed) { - passOrFail = "FAILED"; + alertClass = "alert-danger"; + passOrFail = "FAILED"; } else { - passOrFail = "PASSED"; + alertClass = "alert-success"; + passOrFail = "PASSED"; } - pw.println("

Status: "+passOrFail+"

"); + pw.println("
\n" + + "

Fresh installation vs updated installation Diff tool results

\n" + + "
"); + pw.println("
"); + pw.println("

Status: "+passOrFail+"

"); + pw.println("

Files examined: "+resultSet.stats.resultCount+"

"); + pw.println("

Files with differences: "+resultSet.stats.differenceCount+"

"); + pw.println("

Files with allowed differences: "+resultSet.stats.suppressedDifferenceCount+"

"); + pw.println("

Ignored files: "+resultSet.stats.ignoredFileCount+"

"); + pw.println("
"); outputResultsTable(resultSet.results, pw, 0); - + + pw.println("
"); pw.println(""); pw.println(""); } diff --git a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/HtmlResultFormatterTest.java b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/HtmlResultFormatterTest.java index 6ba39f8c6b..bd387646db 100644 --- a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/HtmlResultFormatterTest.java +++ b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/HtmlResultFormatterTest.java @@ -55,7 +55,12 @@ public class HtmlResultFormatterTest addResult(results, null, "/t2/a/b/c/blah.txt", false); addResult(results, "/t1/dir-only-in-p1", null, false); addResult(results, null, "/t2/dir-only-in-p2", false); - + + resultSet.stats.suppressedDifferenceCount = 2; + resultSet.stats.differenceCount = 4; + resultSet.stats.ignoredFileCount = 0; + resultSet.stats.resultCount = results.size(); + try(ByteArrayOutputStream os = new ByteArrayOutputStream()) { HtmlResultFormatter formatter = new HtmlResultFormatter(); From 487b623933980a4cf93d8410512e2b84324a18f9 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:52:11 +0000 Subject: [PATCH 088/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122764 mward: UTF-378: added missing test data git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124006 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../dir_compare/allowed_differences/tree1/x/story.txt | 5 +++++ .../dir_compare/allowed_differences/tree1/y/blah.txt | 2 ++ .../dir_compare/allowed_differences/tree2/x/story.txt | 5 +++++ .../dir_compare/allowed_differences/tree2/y/blah.txt | 2 ++ 4 files changed, 14 insertions(+) create mode 100644 enterprise-update-test/src/test/resources/dir_compare/allowed_differences/tree1/x/story.txt create mode 100644 enterprise-update-test/src/test/resources/dir_compare/allowed_differences/tree1/y/blah.txt create mode 100644 enterprise-update-test/src/test/resources/dir_compare/allowed_differences/tree2/x/story.txt create mode 100644 enterprise-update-test/src/test/resources/dir_compare/allowed_differences/tree2/y/blah.txt diff --git a/enterprise-update-test/src/test/resources/dir_compare/allowed_differences/tree1/x/story.txt b/enterprise-update-test/src/test/resources/dir_compare/allowed_differences/tree1/x/story.txt new file mode 100644 index 0000000000..69c3b8a81a --- /dev/null +++ b/enterprise-update-test/src/test/resources/dir_compare/allowed_differences/tree1/x/story.txt @@ -0,0 +1,5 @@ +Once upon +A time +Lived +A +Troll diff --git a/enterprise-update-test/src/test/resources/dir_compare/allowed_differences/tree1/y/blah.txt b/enterprise-update-test/src/test/resources/dir_compare/allowed_differences/tree1/y/blah.txt new file mode 100644 index 0000000000..e508b95435 --- /dev/null +++ b/enterprise-update-test/src/test/resources/dir_compare/allowed_differences/tree1/y/blah.txt @@ -0,0 +1,2 @@ +Sample content +More sample content diff --git a/enterprise-update-test/src/test/resources/dir_compare/allowed_differences/tree2/x/story.txt b/enterprise-update-test/src/test/resources/dir_compare/allowed_differences/tree2/x/story.txt new file mode 100644 index 0000000000..69c3b8a81a --- /dev/null +++ b/enterprise-update-test/src/test/resources/dir_compare/allowed_differences/tree2/x/story.txt @@ -0,0 +1,5 @@ +Once upon +A time +Lived +A +Troll diff --git a/enterprise-update-test/src/test/resources/dir_compare/allowed_differences/tree2/y/blah.txt b/enterprise-update-test/src/test/resources/dir_compare/allowed_differences/tree2/y/blah.txt new file mode 100644 index 0000000000..e508b95435 --- /dev/null +++ b/enterprise-update-test/src/test/resources/dir_compare/allowed_differences/tree2/y/blah.txt @@ -0,0 +1,2 @@ +Sample content +More sample content From e9a8284958e1c65668c501d52aebafffe977ab85 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:53:48 +0000 Subject: [PATCH 089/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122766 jphuynh: BDE-539: AOS Module Only exist on 5.1. Added changes in installer.args to reflect that. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124007 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index 58fceb9def..2b8aa52094 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -28,10 +28,15 @@ ${project.build.directory}/test-data/this-alf-installation - --mode unattended --alfresco_admin_password admin --jdbc_username alfresco --jdbc_password alfresco + --mode unattended --alfresco_admin_password admin --jdbc_username alfresco --jdbc_password alfresco + --tomcat_server_domain ${HOSTNAME} --disable-components postgres --enable-components javaalfresco,libreofficecomponent,alfrescosolr,alfrescosolr4,alfrescosharepoint,alfrescowcmqs,alfrescogoogledocs + --alfrescocustomstack_services_startup demand + + + --mode unattended --alfresco_admin_password admin --jdbc_username alfresco --jdbc_password alfresco --tomcat_server_domain ${HOSTNAME} --disable-components postgres --enable-components javaalfresco,libreofficecomponent,alfrescosolr,alfrescosolr4,aosmodule,alfrescowcmqs,alfrescogoogledocs --alfrescocustomstack_services_startup demand - + ${project.build.directory}/test-data/alfresco-enterprise-update-package @@ -168,7 +173,7 @@ Installing the base Version of Alfresco... to ${base.alfresco.instance} - + @@ -187,7 +192,7 @@ Installing newly generated version of Alfresco... - + From 04cfba44c1f8e4e1aabe8dfc9c59c5e19d9efe0d Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:53:58 +0000 Subject: [PATCH 090/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122767 jphuynh: BDE-539: this.installer.args! git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124008 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index 2b8aa52094..2dc56ac371 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -33,7 +33,7 @@ --alfrescocustomstack_services_startup demand - --mode unattended --alfresco_admin_password admin --jdbc_username alfresco --jdbc_password alfresco + --mode unattended --alfresco_admin_password admin --jdbc_username alfresco --jdbc_password alfresco --tomcat_server_domain ${HOSTNAME} --disable-components postgres --enable-components javaalfresco,libreofficecomponent,alfrescosolr,alfrescosolr4,aosmodule,alfrescowcmqs,alfrescogoogledocs --alfrescocustomstack_services_startup demand From 21972513c42cb3acfeb628f56806211703da1e14 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:54:20 +0000 Subject: [PATCH 091/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122774 jphuynh: BDE-539: alfrescosharepoint is not a selectable component. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124009 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index 2dc56ac371..29e0f27d53 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -29,7 +29,7 @@ --mode unattended --alfresco_admin_password admin --jdbc_username alfresco --jdbc_password alfresco - --tomcat_server_domain ${HOSTNAME} --disable-components postgres --enable-components javaalfresco,libreofficecomponent,alfrescosolr,alfrescosolr4,alfrescosharepoint,alfrescowcmqs,alfrescogoogledocs + --tomcat_server_domain ${HOSTNAME} --disable-components postgres --enable-components javaalfresco,libreofficecomponent,alfrescosolr,alfrescosolr4,alfrescowcmqs,alfrescogoogledocs --alfrescocustomstack_services_startup demand From 7d25c3c46df62d60eba5f8f5d5a4bd10b97fb25d Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:54:31 +0000 Subject: [PATCH 092/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122785 mward: UTF-378: fixed path pattern matching on Windows. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124010 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../tool/dircomp/FileTreeCompareImpl.java | 58 ++++++++++--------- .../tool/dircomp/HtmlResultFormatter.java | 2 +- .../tool/dircomp/FileTreeCompareImplTest.java | 10 ++-- 3 files changed, 37 insertions(+), 33 deletions(-) diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java index 6170694c11..b8204fa482 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java @@ -7,24 +7,23 @@ */ package org.alfresco.update.tool.dircomp; -import java.io.*; -import java.nio.file.Files; -import java.nio.file.Path; -import java.util.*; - -import org.alfresco.update.tool.dircomp.exception.FileTreeCompareException; -import org.apache.commons.io.FileUtils; - import de.schlichtherle.truezip.file.TArchiveDetector; import de.schlichtherle.truezip.file.TConfig; import de.schlichtherle.truezip.file.TFile; import de.schlichtherle.truezip.file.TVFS; import de.schlichtherle.truezip.fs.archive.zip.ZipDriver; import de.schlichtherle.truezip.socket.sl.IOPoolLocator; +import org.alfresco.update.tool.dircomp.exception.FileTreeCompareException; +import org.apache.commons.io.FileUtils; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.springframework.util.AntPathMatcher; +import java.io.*; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.*; + /** * Class capable of comparing two trees of files to determine which directories or * files appear in one tree and not the other, or whether a file that appears in @@ -53,34 +52,39 @@ public class FileTreeCompareImpl implements FileTreeCompare { // Add default ignores ignorePaths = new HashSet<>(); - ignorePaths.add("alf_data/postgresql/**"); - ignorePaths.add("META-INF/MANIFEST.MF"); - ignorePaths.add("META-INF/maven/**"); - ignorePaths.add("README.txt"); - ignorePaths.add("uninstall.app/**"); + ignorePaths.add(toPlatformPath("alf_data/postgresql/**")); + ignorePaths.add(toPlatformPath("META-INF/MANIFEST.MF")); + ignorePaths.add(toPlatformPath("META-INF/maven/**")); + ignorePaths.add(toPlatformPath("README.txt")); + ignorePaths.add(toPlatformPath("uninstall.app/**")); } if (allowedDiffsPaths == null) { // Add default paths where certain differences are allowed, e.g. absolute path references. allowedDiffsPaths = new HashSet<>(); - allowedDiffsPaths.add("common/bin/**"); - allowedDiffsPaths.add("common/include/**/*.h"); - allowedDiffsPaths.add("common/lib/**/*.pc"); - allowedDiffsPaths.add("common/lib/**/*.la"); - allowedDiffsPaths.add("libreoffice.app/Contents/Resources/bootstraprc"); - allowedDiffsPaths.add("postgresql/bin/**"); - allowedDiffsPaths.add("**/*.sh"); - allowedDiffsPaths.add("**/*.bat"); - allowedDiffsPaths.add("**/*.ini"); - allowedDiffsPaths.add("**/*.properties"); - allowedDiffsPaths.add("**/*.xml"); - allowedDiffsPaths.add("**/*.sample"); - allowedDiffsPaths.add("**/*.txt"); + allowedDiffsPaths.add(toPlatformPath("common/bin/**")); + allowedDiffsPaths.add(toPlatformPath("common/include/**/*.h")); + allowedDiffsPaths.add(toPlatformPath("common/lib/**/*.pc")); + allowedDiffsPaths.add(toPlatformPath("common/lib/**/*.la")); + allowedDiffsPaths.add(toPlatformPath("libreoffice.app/Contents/Resources/bootstraprc")); + allowedDiffsPaths.add(toPlatformPath("postgresql/bin/**")); + allowedDiffsPaths.add(toPlatformPath("**/*.sh")); + allowedDiffsPaths.add(toPlatformPath("**/*.bat")); + allowedDiffsPaths.add(toPlatformPath("**/*.ini")); + allowedDiffsPaths.add(toPlatformPath("**/*.properties")); + allowedDiffsPaths.add(toPlatformPath("**/*.xml")); + allowedDiffsPaths.add(toPlatformPath("**/*.sample")); + allowedDiffsPaths.add(toPlatformPath("**/*.txt")); } this.ignorePaths.addAll(ignorePaths); this.allowedDiffsPaths.addAll(allowedDiffsPaths); } - + + private String toPlatformPath(String path) + { + return path.replace("/", File.separator); + } + @Override public ResultSet compare(Path p1, Path p2) { diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/HtmlResultFormatter.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/HtmlResultFormatter.java index 4fda857aed..ec8fa8ebc1 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/HtmlResultFormatter.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/HtmlResultFormatter.java @@ -18,7 +18,7 @@ import java.util.List; */ public class HtmlResultFormatter implements ResultFormatter { - private int maxPathDisplayLength = 80; + private int maxPathDisplayLength = 50; private boolean differencesOnly; diff --git a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java index 25794f51b2..148b40a436 100644 --- a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java +++ b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java @@ -133,14 +133,14 @@ public class FileTreeCompareImplTest assertTrue(matcher.match("*.sh", "alfresco.sh")); assertFalse(matcher.match("*.sh", "a/different/alfresco.sh")); - // What about path separators? + // Windows matcher + // It seems that changing the path separator on an instance that's already been + // used isn't a good idea due to pattern caching. + matcher = new AntPathMatcher("\\"); assertTrue(matcher.match("**\\common\\lib\\**\\*.pc", "prefix\\common\\lib\\pkgconfig\\ImageMagick++-6.Q16.pc")); assertTrue(matcher.match("\\**\\common\\lib\\**\\*.pc", "\\absolute\\prefix\\common\\lib\\pkgconfig\\ImageMagick++-6.Q16.pc")); - // Path separator must be set before this will work - assertFalse(matcher.match("**/common/lib/**/*.pc", "prefix\\common\\lib\\pkgconfig\\ImageMagick++-6.Q16.pc")); - matcher.setPathSeparator("\\"); - assertTrue(matcher.match("**/common/lib/**/*.pc", "prefix\\common\\lib\\pkgconfig\\ImageMagick++-6.Q16.pc")); + assertTrue(matcher.match("b\\blah.txt", "b\\blah.txt")); } @Test From 1cabf38177a410a29bdad2d69190598183559717 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:54:37 +0000 Subject: [PATCH 093/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122797 mrogers: Corrected test to run on windows. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124011 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../tool/dircomp/FileTreeCompareImplTest.java | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java index 148b40a436..ce632a7b2d 100644 --- a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java +++ b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java @@ -150,10 +150,10 @@ public class FileTreeCompareImplTest Path tree2 = pathFromClasspath("dir_compare/simple_file_folders/tree2"); Set ignorePaths = new HashSet<>(); - ignorePaths.add("b/blah.txt"); - ignorePaths.add("c/c2/**"); - ignorePaths.add("d/**"); - ignorePaths.add("e/**"); + ignorePaths.add(toPlatformPath("b/blah.txt")); + ignorePaths.add(toPlatformPath("c/c2/**")); + ignorePaths.add(toPlatformPath("d/**")); + ignorePaths.add(toPlatformPath("e/**")); comparator = new FileTreeCompareImpl(ignorePaths, new HashSet()); // Perform the comparison @@ -229,7 +229,7 @@ public class FileTreeCompareImplTest // Perform the comparison again, but after allowing the files to be different. Set allowedDiffsPaths = new HashSet<>(); - allowedDiffsPaths.add("**/*.txt"); + allowedDiffsPaths.add(toPlatformPath("**/*.txt")); // Perform the comparison comparator = new FileTreeCompareImpl(new HashSet(), allowedDiffsPaths); @@ -364,4 +364,9 @@ public class FileTreeCompareImplTest throw new RuntimeException(""); } } + + private String toPlatformPath(String path) + { + return path.replace("/", File.separator); + } } From af27e4f182943b40330f6b9b44a06ae3afc517de Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:55:01 +0000 Subject: [PATCH 094/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122800 mrogers: kludge tests to get something to run. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124012 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index 29e0f27d53..6b219669fd 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -19,24 +19,18 @@ ${project.build.directory}/test-data/base-alf-installation ${project.build.directory}/test-data/this-alf-installation - - - --mode unattended --alfresco_admin_password admin --jdbc_username alfresco --jdbc_password alfresco - --tomcat_server_domain ${HOSTNAME} --disable-components postgres --enable-components javaalfresco,libreofficecomponent,alfrescosolr,alfrescosolr4,alfrescowcmqs,alfrescogoogledocs - --alfrescocustomstack_services_startup demand - - - --mode unattended --alfresco_admin_password admin --jdbc_username alfresco --jdbc_password alfresco + + --mode unattended --alfresco_admin_password admin --jdbc_username alfresco --jdbc_password alfresco --tomcat_server_domain ${HOSTNAME} --disable-components postgres --enable-components javaalfresco,libreofficecomponent,alfrescosolr,alfrescosolr4,aosmodule,alfrescowcmqs,alfrescogoogledocs --alfrescocustomstack_services_startup demand - + ${project.build.directory}/test-data/alfresco-enterprise-update-package @@ -170,10 +164,21 @@ Downloading Base Alfresco installer ${base.installer.version}... + + + Kludging Base version ... + + + + + + + + Installing the base Version of Alfresco... to ${base.alfresco.instance} - + @@ -192,7 +197,7 @@ Installing newly generated version of Alfresco... - + From 053034758a96eced7e01ee524a1a96b631cdd284 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:55:07 +0000 Subject: [PATCH 095/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122824 jphuynh: BDE-539: Use latest 5.1-SNAPSHOT build as base version for now. (Latest as in previous successful build excluding the current one.) git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124013 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index 6b219669fd..527222b60a 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -148,7 +148,7 @@ - + @@ -162,19 +162,19 @@ Downloading Base Alfresco installer ${base.installer.version}... - + - - - Kludging Base version ... + + + Kludging Base version ... - + - + Installing the base Version of Alfresco... to ${base.alfresco.instance} From 4b35b09bed0bdf801b4026246d6e2a53640a9558 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:55:26 +0000 Subject: [PATCH 096/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122846 mrogers: BDE-539 - Remove kludge. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124014 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index 527222b60a..fcc06ed55f 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -165,17 +165,6 @@ - - Kludging Base version ... - - - - - - - - - Installing the base Version of Alfresco... to ${base.alfresco.instance} From 09520372e44fd5ed2f336bb0d4f42f33527806bd Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:55:33 +0000 Subject: [PATCH 097/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122856 mward: UTF-384: swapped the 'fresh' and 'updated' in the comparison method call so that the report appears with them in the correct columns. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124015 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../src/test/java/EndToEndIntegrationTest.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java b/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java index e19bcb75a6..9a86ac9d37 100644 --- a/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java +++ b/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java @@ -136,13 +136,13 @@ public class EndToEndIntegrationTest /** * Run the diff tool * - * @param path1 - * @param path2 + * @param freshInstallation + * @param updatedInstallation */ - public void compare(File path1, File path2) throws IOException + public void compare(File freshInstallation, File updatedInstallation) throws IOException { FileTreeCompare comparator = new FileTreeCompareImpl(); - ResultSet resultSet = comparator.compare(path1.toPath(), path2.toPath()); + ResultSet resultSet = comparator.compare(updatedInstallation.toPath(), freshInstallation.toPath()); File dircompDir = new File(targetDir, "installation-diff"); dircompDir.mkdirs(); From 5a22fd095c642b249db15ee4a25b9a9dc1448bbd Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:55:55 +0000 Subject: [PATCH 098/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122860 mward: UTF-378: improved test to ensure multiple occurrences of replacement text are all replaced. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124016 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../alfresco/update/tool/dircomp/FileTreeCompareImplTest.java | 1 + 1 file changed, 1 insertion(+) diff --git a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java index ce632a7b2d..0df6df50aa 100644 --- a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java +++ b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java @@ -252,6 +252,7 @@ public class FileTreeCompareImplTest sb.append("This is some example text\n"); sb.append("...in tree: "+absPath); sb.append(" ...and here is some more text.\n"); + sb.append("...but wait! here's an absolute path again:"+absPath+", yes."); sb.append("The End."); return sb.toString(); } From 029bc75d4bcaa0f6ccd79bcecdbf65a127966370 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:55:57 +0000 Subject: [PATCH 099/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 122880 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124017 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 616e03b1d5af1acd2ecee906cdc1de5e9f9986bb Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:56:46 +0000 Subject: [PATCH 100/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122881 mrogers: Update googledocs to 3.0.3 to keep in line with release git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124018 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From df3acfd11ad88426d621a7e62cdb5ff3ae2b2a4c Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:56:56 +0000 Subject: [PATCH 101/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122922 mward: UTF-378: added some diff ignore patterns. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124019 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../alfresco/update/tool/dircomp/FileTreeCompareImpl.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java index b8204fa482..24cd8cd493 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java @@ -53,10 +53,18 @@ public class FileTreeCompareImpl implements FileTreeCompare // Add default ignores ignorePaths = new HashSet<>(); ignorePaths.add(toPlatformPath("alf_data/postgresql/**")); + ignorePaths.add(toPlatformPath("alf_data/solr4/**")); ignorePaths.add(toPlatformPath("META-INF/MANIFEST.MF")); ignorePaths.add(toPlatformPath("META-INF/maven/**")); ignorePaths.add(toPlatformPath("README.txt")); ignorePaths.add(toPlatformPath("uninstall.app/**")); + ignorePaths.add(toPlatformPath("uninstall/**")); + ignorePaths.add(toPlatformPath("uninstall.exe")); + ignorePaths.add(toPlatformPath("uninstall.dat")); + ignorePaths.add(toPlatformPath("libreoffice.app/**")); + ignorePaths.add(toPlatformPath("libreoffice/**")); + ignorePaths.add(toPlatformPath("java/**")); + ignorePaths.add(toPlatformPath("applied-updates/**")); } if (allowedDiffsPaths == null) { From c93bdd696fe5d8fef8773a3d8cd787eebaed76db Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:57:03 +0000 Subject: [PATCH 102/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 122949 mrogers: UTF-378 - Added some code to ignore module.install date within module.properties git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124020 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../tool/dircomp/FileTreeCompareImpl.java | 15 ++++- .../tool/dircomp/FileTreeCompareImplTest.java | 55 ++++++++++++++++--- 2 files changed, 62 insertions(+), 8 deletions(-) diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java index 24cd8cd493..6af60562e0 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java @@ -23,6 +23,8 @@ import java.io.*; import java.nio.file.Files; import java.nio.file.Path; import java.util.*; +import java.util.regex.Matcher; +import java.util.regex.Pattern; /** * Class capable of comparing two trees of files to determine which directories or @@ -216,6 +218,9 @@ public class FileTreeCompareImpl implements FileTreeCompare // a known token allows us to remove differences (that we're not interested in) in the files. Map replacements = new HashMap<>(); replacements.put(tree.toAbsolutePath().toString(), replacementToken("comparison_root")); + + // Create a pattern for module.installDate + Pattern installDatePattern = Pattern.compile("module.installDate=.*[\n\r\f]*$"); File processed = Files.createTempFile(orig.getName(), ".tmp").toFile(); try(Reader r = new FileReader(orig); @@ -224,13 +229,21 @@ public class FileTreeCompareImpl implements FileTreeCompare PrintWriter pw = new PrintWriter(w)) { String line; + while ((line = br.readLine()) != null) - { + { for (String replKey : replacements.keySet()) { String replVal = replacements.get(replKey); line = line.replace(replKey, replVal); } + Matcher m = installDatePattern.matcher(line); + if(m.matches()) + { + // replace module.installDate + line = m.replaceFirst("module.installDate="); + } + pw.println(line); } } diff --git a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java index 0df6df50aa..093d09a766 100644 --- a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java +++ b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java @@ -16,6 +16,7 @@ import java.io.IOException; import java.net.URISyntaxException; import java.nio.file.Path; import java.nio.file.Paths; +import java.util.Date; import java.util.HashSet; import java.util.Iterator; import java.util.List; @@ -199,6 +200,12 @@ public class FileTreeCompareImplTest // Check that two identical trees are... identical! ResultSet resultSet = comparator.compare(tree1, tree2); + + System.out.println("Comparison results:"); + for (Result r : resultSet.results) + { + System.out.println("\t"+r); + } assertEquals(0, resultSet.stats.differenceCount); assertEquals(0, resultSet.stats.ignoredFileCount); assertEquals(4, resultSet.stats.resultCount); @@ -212,17 +219,33 @@ public class FileTreeCompareImplTest File t2File = new File(tree2.toFile(), "different.txt"); t2File.deleteOnExit(); FileUtils.write(t2File, sampleText(tree2.toAbsolutePath().toString())); + + // Now add a module.properties that are different in their "installDate" property only. + File t3File = new File(tree1.toFile(), "module.properties"); + t3File.deleteOnExit(); + Date date = new Date(); + FileUtils.write(t3File, sampleModuleProperties("2016-02-29T16\\:26\\:18.053Z")); + + File t4File = new File(tree2.toFile(), "module.properties"); + t4File.deleteOnExit(); + FileUtils.write(t4File, sampleModuleProperties("2016-02-28T14\\:30\\:14.035Z")); + // Perform the comparison comparator = new FileTreeCompareImpl(new HashSet(), new HashSet()); resultSet = comparator.compare(tree1, tree2); + System.out.println("Comparison results:"); + for (Result r : resultSet.results) + { + System.out.println("\t"+r); + } // We should see a difference assertEquals(0, resultSet.stats.suppressedDifferenceCount); - assertEquals(1, resultSet.stats.differenceCount); + assertEquals(2, resultSet.stats.differenceCount); assertEquals(0, resultSet.stats.ignoredFileCount); - assertEquals(5, resultSet.stats.resultCount); - assertEquals(5, resultSet.results.size()); + assertEquals(6, resultSet.stats.resultCount); + assertEquals(6, resultSet.results.size()); Iterator rit = resultSet.results.iterator(); assertResultEquals(tree1.resolve("different.txt"), tree2.resolve("different.txt"), false, rit.next()); @@ -230,17 +253,18 @@ public class FileTreeCompareImplTest // Perform the comparison again, but after allowing the files to be different. Set allowedDiffsPaths = new HashSet<>(); allowedDiffsPaths.add(toPlatformPath("**/*.txt")); + allowedDiffsPaths.add(toPlatformPath("**/module.properties")); - // Perform the comparison + // Perform the comparison, this time with some allowed differences comparator = new FileTreeCompareImpl(new HashSet(), allowedDiffsPaths); resultSet = comparator.compare(tree1, tree2); // We should see a difference - but it is in the 'suppressed' list. - assertEquals(1, resultSet.stats.suppressedDifferenceCount); + assertEquals(2, resultSet.stats.suppressedDifferenceCount); assertEquals(0, resultSet.stats.differenceCount); assertEquals(0, resultSet.stats.ignoredFileCount); - assertEquals(5, resultSet.stats.resultCount); - assertEquals(5, resultSet.results.size()); + assertEquals(6, resultSet.stats.resultCount); + assertEquals(6, resultSet.results.size()); rit = resultSet.results.iterator(); assertResultEquals(tree1.resolve("different.txt"), tree2.resolve("different.txt"), true, rit.next()); @@ -256,6 +280,23 @@ public class FileTreeCompareImplTest sb.append("The End."); return sb.toString(); } + + private String sampleModuleProperties(String installDateAsString) + { + StringBuilder sb = new StringBuilder(); + sb.append("module.id=org.alfresco.integrations.share.google.docs\n"); + sb.append("module.version=3.0.3\n"); + sb.append("module.buildnumber=4ent\n"); + sb.append("module.title=Alfresco / Google Docs Share Module\n"); + sb.append("module.description=The Share side artifacts of the Alfresco / Google Docs Integration.\n"); + sb.append("module.repo.version.min=5.0.0\n"); + sb.append("module.repo.version.max=5.99.99\n"); + sb.append("module.installState=INSTALLED\n"); + // this is the problem we are trying to solve + sb.append("module.installDate=" + installDateAsString + "\n"); + + return sb.toString(); + } @Test public void canDiffTreesContainingWarFiles() From 6e8a4018a826dd7c0e6b3d2ecb771826a139bba1 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:57:10 +0000 Subject: [PATCH 103/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123015 mrogers: UTF-378 - Now produce the zip file of the update test differences. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124021 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../tool/dircomp/ZipResultFormatter.java | 67 +++++++++++++++ .../test/java/EndToEndIntegrationTest.java | 14 ++++ .../tool/dircomp/ZipResultFormatterTest.java | 82 +++++++++++++++++++ 3 files changed, 163 insertions(+) create mode 100644 enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ZipResultFormatter.java create mode 100644 enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/ZipResultFormatterTest.java diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ZipResultFormatter.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ZipResultFormatter.java new file mode 100644 index 0000000000..8cf0a793e0 --- /dev/null +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ZipResultFormatter.java @@ -0,0 +1,67 @@ +package org.alfresco.update.tool.dircomp; + +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.OutputStream; +import java.nio.file.Path; +import java.util.zip.ZipEntry; +import java.util.zip.ZipOutputStream; + +/** + * Format the org.alfresco.update.tool.dircomp.ResultSet as a set of files inside a zip file. + * + * Files that are equal are not added to the zip file. + * + * @author mrogers + */ +public class ZipResultFormatter implements ResultFormatter +{ + @Override + public void format(ResultSet resultSet, OutputStream out) + { + ZipOutputStream zos = (ZipOutputStream)out; + + for(Result result : resultSet.results) + { + if(!result.equal) + { + try + { + putFile(result.p1, zos); + putFile(result.p2, zos); + } + catch (IOException ie) + { + // Do nothing + } + } + } + } + + private void putFile(Path path, ZipOutputStream zos) throws IOException + { + + if(path != null) + { + byte[] buffer = new byte[1024]; + File file = path.toFile(); + if(file.isFile()) + { + String entryName = path.toString().replace('\\', '/'); + ZipEntry zipEntry = new ZipEntry(entryName); + zipEntry.setTime(file.lastModified()); + try (FileInputStream ins = new FileInputStream(file)) + { + zos.putNextEntry(zipEntry); + int len; + while ((len = ins.read(buffer)) > 0) { + zos.write(buffer, 0, len); + } + zos.closeEntry(); + } + } + } + } + +} diff --git a/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java b/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java index 9a86ac9d37..176cf61a81 100644 --- a/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java +++ b/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java @@ -9,7 +9,9 @@ import org.alfresco.update.tool.dircomp.FileTreeCompare; import org.alfresco.update.tool.dircomp.FileTreeCompareImpl; import org.alfresco.update.tool.dircomp.HtmlResultFormatter; +import org.alfresco.update.tool.dircomp.Result; import org.alfresco.update.tool.dircomp.ResultSet; +import org.alfresco.update.tool.dircomp.ZipResultFormatter; import org.junit.Before; import org.junit.Ignore; import org.junit.Test; @@ -21,6 +23,7 @@ import java.nio.file.Paths; import java.util.ArrayList; import java.util.HashSet; import java.util.Set; +import java.util.zip.ZipOutputStream; import static org.junit.Assert.assertTrue; @@ -158,6 +161,17 @@ public class EndToEndIntegrationTest { formatter.format(resultSet, bos); } + + File zipFile = new File(dircompDir, "installation-diff-report.zip"); + zipFile.createNewFile(); + + ZipResultFormatter zformatter = new ZipResultFormatter(); + + try (FileOutputStream fos = new FileOutputStream(zipFile); + ZipOutputStream zos = new ZipOutputStream(fos)) + { + zformatter.format(resultSet, zos); + } } /** diff --git a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/ZipResultFormatterTest.java b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/ZipResultFormatterTest.java new file mode 100644 index 0000000000..bca1660d28 --- /dev/null +++ b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/ZipResultFormatterTest.java @@ -0,0 +1,82 @@ +package org.alfresco.update.tool.dircomp; + +import static org.junit.Assert.*; + +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.net.URL; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.List; +import java.util.zip.ZipOutputStream; + +import org.junit.Before; +import org.junit.Test; + +/** + * Tests for the {@link ZipResultFormatter} class. + *

+ * + * @author Mark Rogers + */ +public class ZipResultFormatterTest +{ + @Before + public void setUp() throws Exception + { + } + + @Test + public void canFormatToZip() throws IOException + { + ResultSet resultSet = new ResultSet(); + List results = resultSet.results; + + URL srcDir = getClass().getClassLoader().getResource("dir_compare/allowed_differences/tree1"); + assertNotNull(srcDir.getPath()); + + File f = new File(srcDir.getPath()); + + File[] files = f.listFiles(); + for(File file : files) + { + addResult(results, file.getAbsolutePath(), null, false); + } + + resultSet.stats.suppressedDifferenceCount = 2; + resultSet.stats.differenceCount = 4; + resultSet.stats.ignoredFileCount = 0; + resultSet.stats.resultCount = results.size(); + + ZipResultFormatter zof = new ZipResultFormatter(); + + Path file = Files.createTempFile(getClass().getSimpleName(), ".zip"); + + File zipFile = file.toFile(); + zipFile.createNewFile(); + zipFile.deleteOnExit(); + + ZipResultFormatter zformatter = new ZipResultFormatter(); + + try (FileOutputStream fos = new FileOutputStream(zipFile); + ZipOutputStream zos = new ZipOutputStream(fos)) + { + zof.format(resultSet, zos); + } + + assertTrue(zipFile.length() > 0); + + } + + private void addResult(List results, String p1, String p2, boolean contentMatch) + { + Result r = new Result(); + r.p1 = p1 != null ? Paths.get(p1) : null; + r.p2 = p2 != null ? Paths.get(p2) : null; + r.equal = contentMatch; + results.add(r); + } + +} From 9811e8e842ebe3fc757d126e5af74edacf74bf57 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:57:20 +0000 Subject: [PATCH 104/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123029 mrogers: UTF-378 - A few additions to the ignore patterns + change for zip format to use absolute paths. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124022 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../alfresco/update/tool/dircomp/FileTreeCompareImpl.java | 6 ++++++ .../alfresco/update/tool/dircomp/ZipResultFormatter.java | 5 +++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java index 6af60562e0..53562505cd 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java @@ -67,6 +67,10 @@ public class FileTreeCompareImpl implements FileTreeCompare ignorePaths.add(toPlatformPath("libreoffice/**")); ignorePaths.add(toPlatformPath("java/**")); ignorePaths.add(toPlatformPath("applied-updates/**")); + ignorePaths.add(toPlatformPath("~build/**")); + ignorePaths.add(toPlatformPath("properties.ini")); + ignorePaths.add(toPlatformPath("**/modifications.install")); + ignorePaths.add(toPlatformPath("tomcat/webapps/ROOT.war")); } if (allowedDiffsPaths == null) { @@ -85,6 +89,8 @@ public class FileTreeCompareImpl implements FileTreeCompare allowedDiffsPaths.add(toPlatformPath("**/*.xml")); allowedDiffsPaths.add(toPlatformPath("**/*.sample")); allowedDiffsPaths.add(toPlatformPath("**/*.txt")); + allowedDiffsPaths.add(toPlatformPath("tomcat/conf/Catalina/localhost/solr4.xml")); + allowedDiffsPaths.add(toPlatformPath("tomcat/conf/Catalina/localhost/solr.xml")); } this.ignorePaths.addAll(ignorePaths); this.allowedDiffsPaths.addAll(allowedDiffsPaths); diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ZipResultFormatter.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ZipResultFormatter.java index 8cf0a793e0..1c5fa75de4 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ZipResultFormatter.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ZipResultFormatter.java @@ -48,14 +48,15 @@ public class ZipResultFormatter implements ResultFormatter File file = path.toFile(); if(file.isFile()) { - String entryName = path.toString().replace('\\', '/'); + String entryName = path.toAbsolutePath().toString().replace('\\', '/'); ZipEntry zipEntry = new ZipEntry(entryName); zipEntry.setTime(file.lastModified()); try (FileInputStream ins = new FileInputStream(file)) { zos.putNextEntry(zipEntry); int len; - while ((len = ins.read(buffer)) > 0) { + while ((len = ins.read(buffer)) > 0) + { zos.write(buffer, 0, len); } zos.closeEntry(); From f764b0a7aab4b5e56c482f6671c1e91221eae7ff Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:57:23 +0000 Subject: [PATCH 105/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 123042 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124023 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From cc1a0a660fdf95abda7c39edaab7a56354806370 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 11:57:54 +0000 Subject: [PATCH 106/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123059 mrogers: UTF-378 - Try toRealPath on file comparison utility. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124024 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../update/tool/dircomp/FileTreeCompareImpl.java | 2 +- .../update/tool/dircomp/ZipResultFormatter.java | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java index 53562505cd..2d8e444d85 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java @@ -223,7 +223,7 @@ public class FileTreeCompareImpl implements FileTreeCompare // Create a set of replacements that we intend to make. Replacing them with // a known token allows us to remove differences (that we're not interested in) in the files. Map replacements = new HashMap<>(); - replacements.put(tree.toAbsolutePath().toString(), replacementToken("comparison_root")); + replacements.put(tree.toRealPath().toString(), replacementToken("comparison_root")); // Create a pattern for module.installDate Pattern installDatePattern = Pattern.compile("module.installDate=.*[\n\r\f]*$"); diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ZipResultFormatter.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ZipResultFormatter.java index 1c5fa75de4..d1929ad2d0 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ZipResultFormatter.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ZipResultFormatter.java @@ -48,11 +48,10 @@ public class ZipResultFormatter implements ResultFormatter File file = path.toFile(); if(file.isFile()) { - String entryName = path.toAbsolutePath().toString().replace('\\', '/'); - ZipEntry zipEntry = new ZipEntry(entryName); + ZipEntry zipEntry = new ZipEntry(getEntryName(path)); zipEntry.setTime(file.lastModified()); try (FileInputStream ins = new FileInputStream(file)) - { + { zos.putNextEntry(zipEntry); int len; while ((len = ins.read(buffer)) > 0) @@ -64,5 +63,10 @@ public class ZipResultFormatter implements ResultFormatter } } } + + private String getEntryName(Path path) + { + return "differences/" + path.toAbsolutePath().toString().replace('\\', '/').trim(); + } } From c9b1a93e6289daaf7a381e6e3fca818e9c78b4ec Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:01:11 +0000 Subject: [PATCH 107/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123080 mrogers: Fix for file names within ZipFormatter ... had // in the path. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124025 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../org/alfresco/update/tool/dircomp/ZipResultFormatter.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ZipResultFormatter.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ZipResultFormatter.java index d1929ad2d0..0ec0aac001 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ZipResultFormatter.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ZipResultFormatter.java @@ -66,7 +66,8 @@ public class ZipResultFormatter implements ResultFormatter private String getEntryName(Path path) { - return "differences/" + path.toAbsolutePath().toString().replace('\\', '/').trim(); + // eg differences/xml-data/foo/bar + return "differences" + path.normalize().toString().replace('\\', '/').trim(); } } From bcd54a93134cb21cd94955ab55656c535c4f1491 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:01:17 +0000 Subject: [PATCH 108/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123084 mrogers: Add more ignorePaths git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124026 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../alfresco/update/tool/dircomp/FileTreeCompareImpl.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java index 2d8e444d85..6a75355749 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java @@ -55,10 +55,11 @@ public class FileTreeCompareImpl implements FileTreeCompare // Add default ignores ignorePaths = new HashSet<>(); ignorePaths.add(toPlatformPath("alf_data/postgresql/**")); - ignorePaths.add(toPlatformPath("alf_data/solr4/**")); + ignorePaths.add(toPlatformPath("alf_data/oouser/user/**")); + ignorePaths.add(toPlatformPath("common/**")); ignorePaths.add(toPlatformPath("META-INF/MANIFEST.MF")); ignorePaths.add(toPlatformPath("META-INF/maven/**")); - ignorePaths.add(toPlatformPath("README.txt")); + ignorePaths.add(toPlatformPath("licenses/notice.txt")); ignorePaths.add(toPlatformPath("uninstall.app/**")); ignorePaths.add(toPlatformPath("uninstall/**")); ignorePaths.add(toPlatformPath("uninstall.exe")); @@ -69,8 +70,11 @@ public class FileTreeCompareImpl implements FileTreeCompare ignorePaths.add(toPlatformPath("applied-updates/**")); ignorePaths.add(toPlatformPath("~build/**")); ignorePaths.add(toPlatformPath("properties.ini")); + ignorePaths.add(toPlatformPath("**/log.txt")); + ignorePaths.add(toPlatformPath("**/solrcore.properties")); ignorePaths.add(toPlatformPath("**/modifications.install")); ignorePaths.add(toPlatformPath("tomcat/webapps/ROOT.war")); + } if (allowedDiffsPaths == null) { From 5eb4079339d44f8f30e34c3f046fa76e06f9b1a5 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:01:19 +0000 Subject: [PATCH 109/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 123096 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124027 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From aa94cd99e9da39a01820864f9f36441523406bb1 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:01:26 +0000 Subject: [PATCH 110/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123121 mrogers: when comparing the two trees, ignore the sol1 war file in alf_data git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124028 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java index 6a75355749..3dc4fd40cc 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java @@ -56,6 +56,7 @@ public class FileTreeCompareImpl implements FileTreeCompare ignorePaths = new HashSet<>(); ignorePaths.add(toPlatformPath("alf_data/postgresql/**")); ignorePaths.add(toPlatformPath("alf_data/oouser/user/**")); + ignorePaths.add(toPlatformPath("alf_data/solr/*.war")); ignorePaths.add(toPlatformPath("common/**")); ignorePaths.add(toPlatformPath("META-INF/MANIFEST.MF")); ignorePaths.add(toPlatformPath("META-INF/maven/**")); @@ -74,6 +75,7 @@ public class FileTreeCompareImpl implements FileTreeCompare ignorePaths.add(toPlatformPath("**/solrcore.properties")); ignorePaths.add(toPlatformPath("**/modifications.install")); ignorePaths.add(toPlatformPath("tomcat/webapps/ROOT.war")); + ignorePaths.add(toPlatformPath("tomcat/webapps/ROOT.war")); } if (allowedDiffsPaths == null) From 18aa18c3918eb79e7bd3cf66400d48cb918a8dda Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:01:28 +0000 Subject: [PATCH 111/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 123159 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124029 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 906bf941444fa26bca27404822e96412c6aabd86 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:01:57 +0000 Subject: [PATCH 112/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123183 mrogers: Update pom files to a) reflect the fact that the "enterprise" artifact name has been changed to "one", b) update to what is on 5.1 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124030 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 4 ++-- .../src/test/java/EndToEndIntegrationTest.java | 2 +- enterprise-update/pom.xml | 10 +++++----- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index fcc06ed55f..e55b052fa0 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -32,7 +32,7 @@ --alfrescocustomstack_services_startup demand - ${project.build.directory}/test-data/alfresco-enterprise-update-package + ${project.build.directory}/test-data/alfresco-one-update-package @@ -105,7 +105,7 @@ org.alfresco - alfresco-enterprise-update-package + alfresco-one-update-package ${project.version} true ${unpacked.update.package} diff --git a/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java b/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java index 176cf61a81..eb51812699 100644 --- a/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java +++ b/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java @@ -64,7 +64,7 @@ public class EndToEndIntegrationTest String basePath = System.getProperty("unpacked.update.package"); if (basePath == null) { - basePath = "./test-data/alfresco-enterprise-update-package"; + basePath = "./test-data/alfresco-one-update-package"; } File base = new File(targetDir, basePath); assertTrue(base.isDirectory()); diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index f01bfa931c..d792936804 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -7,13 +7,13 @@ alfresco-full-installation 5.1.1-SNAPSHOT - alfresco-enterprise-update-package + alfresco-one-update-package jar - Alfresco Enterprise Update Package + Alfresco One Update Package ${project.build.directory}/dependency/alfresco-update-tool-distribution-${alfresco.updatetool.version} - ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${alfresco.platform.version} + ${project.build.directory}/dependency/alfresco-one-platform-distributionzip-${alfresco.platform.version} ${project.build.directory}/dependency/alfresco-share-distribution-${alfresco.share.version} ${project.build.directory}/dependency/wcmqs-${project.version} ${project.build.directory}/dependency/aos-${alfresco.aos-module.version} @@ -89,7 +89,7 @@ org.alfresco - alfresco-platform-enterprise-distributionzip + alfresco-one-platform-distributionzip ${alfresco.platform.version} zip @@ -181,7 +181,7 @@ org.alfresco - alfresco-platform-enterprise-distributionzip + alfresco-one-platform-distributionzip ${alfresco.platform.version} true zip From a608785d40a947d03c851b29d6b2a5043994d05a Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:04:02 +0000 Subject: [PATCH 113/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123184 mrogers: More work on pom files git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124031 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From e50ef1c01f663c5c4106a6c54c86a192046d523f Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:09:23 +0000 Subject: [PATCH 114/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123230 mrogers: Rollback previous changes. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124032 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- distribution/pom.xml | 1 + ear/pom.xml | 49 +++++++------------ ear/src/assembly/ear-distribution.xml | 10 ++-- enterprise-distribution/pom.xml | 7 +-- enterprise-installer/pom.xml | 46 ++++++++++------- enterprise-update-test/mer.bat | 1 + enterprise-update-test/pom.xml | 4 +- .../test/java/EndToEndIntegrationTest.java | 2 +- enterprise-update/pom.xml | 10 ++-- installer/pom.xml | 16 ------ 10 files changed, 62 insertions(+), 84 deletions(-) create mode 100644 enterprise-update-test/mer.bat diff --git a/distribution/pom.xml b/distribution/pom.xml index 877eacf5e3..296b30f5cc 100644 --- a/distribution/pom.xml +++ b/distribution/pom.xml @@ -13,6 +13,7 @@ 8080 + community diff --git a/ear/pom.xml b/ear/pom.xml index d5e130baa9..3cbe834c96 100644 --- a/ear/pom.xml +++ b/ear/pom.xml @@ -36,6 +36,13 @@ ${alfresco.share.version} war + + + org.alfresco + alfresco-enterprise-vti-bin + ${alfresco.platform.version} + war + org.alfresco alfresco-server-root @@ -47,7 +54,7 @@ org.alfresco - alfresco-one-platform-distributionzip + alfresco-platform-enterprise-distributionzip ${alfresco.platform.version} zip provided @@ -58,19 +65,6 @@ - - org.alfresco - alfresco-share-distribution - ${alfresco.share.version} - zip - provided - - - * - * - - - @@ -186,6 +180,11 @@ share share.war + + org.alfresco + alfresco-enterprise-vti-bin + _vti_bin.war + org.alfresco alfresco-server-root @@ -199,29 +198,15 @@ maven-dependency-plugin - unpack-platform-distribution + unpack-distribution prepare-package unpack-dependencies - alfresco-one-platform-distributionzip + alfresco-platform-enterprise-distributionzip true - alfresco-one-platform-distributionzip-${alfresco.platform.version}/solr4/,alfresco-one-platform-distributionzip-${alfresco.platform.version}/web-server/webapps/,alfresco-one-platform-distributionzip-${alfresco.platform.version}/modules/ - - - - - unpack-share-distribution - prepare-package - - unpack-dependencies - - - alfresco-share-distribution - true - * - alfresco-share-distribution-${alfresco.share.version}/web-extension-samples/ + alfresco-platform-enterprise-distributionzip-${alfresco.platform.version}/solr4/,alfresco-platform-enterprise-distributionzip-${alfresco.platform.version}/web-server/webapps/ @@ -239,7 +224,7 @@ 1.0.1 - ${project.build.directory}/dependency/alfresco-one-platform-distributionzip-${alfresco.platform.version}/web-server/lib + ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${alfresco.platform.version}/web-server/lib diff --git a/ear/src/assembly/ear-distribution.xml b/ear/src/assembly/ear-distribution.xml index 35732d8b91..549f26a600 100644 --- a/ear/src/assembly/ear-distribution.xml +++ b/ear/src/assembly/ear-distribution.xml @@ -8,20 +8,16 @@ - ${project.build.directory}/dependency/alfresco-one-platform-distributionzip-${alfresco.platform.version} + ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${alfresco.platform.version} web-server/shared/** - ${project.build.directory}/dependency/alfresco-one-platform-distributionzip-${alfresco.platform.version}/web-server/shared/classes + ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${alfresco.platform.version}/web-server/shared/classes web-server/classpath - - ${project.build.directory}/dependency/alfresco-share-distribution-${alfresco.share.version}/web-extension-samples - web-server/classpath/alfresco/web-extension - @@ -30,7 +26,7 @@ ${project.build.directory}/alfresco-ear-distribution-${installer.version.name}.ear - alfresco-one-${installer.version.name}.ear + alfresco-enterprise-${installer.version.name}.ear diff --git a/enterprise-distribution/pom.xml b/enterprise-distribution/pom.xml index e054447097..c610d3aa8b 100644 --- a/enterprise-distribution/pom.xml +++ b/enterprise-distribution/pom.xml @@ -6,20 +6,21 @@ alfresco-full-installation 5.1.1-SNAPSHOT - alfresco-one-distribution + alfresco-enterprise-distribution jar Alfresco Full Distribution (Enterprise Edition) 8080 + enterprise org.alfresco - alfresco-one-platform-distributionzip + alfresco-platform-enterprise-distributionzip ${alfresco.platform.version} zip @@ -81,7 +82,7 @@ org.alfresco - alfresco-one-platform-distributionzip + alfresco-platform-enterprise-distributionzip ${alfresco.platform.version} zip diff --git a/enterprise-installer/pom.xml b/enterprise-installer/pom.xml index acdf25c85a..29b158199c 100644 --- a/enterprise-installer/pom.xml +++ b/enterprise-installer/pom.xml @@ -6,7 +6,7 @@ alfresco-full-installation 5.1.1-SNAPSHOT - alfresco-one-installer + alfresco-enterprise-installer pom Alfresco Enterprise Full Installers @@ -25,14 +25,15 @@ alfresco_edition=enterprise alfresco_package='${alfresco.package.name}' alfrescogoogledocs_component_enabled=1 + alfrescosharepoint_component_enabled=0 alfrescosolr_component_enabled=1 alfrescowcmqs_component_enabled=1 project.outputDirectory=${project.build.directory} - alfresco-one - alfresco-one-distribution + alfresco-enterprise + ${alfresco.package.name}-distribution @@ -67,13 +68,13 @@ org.alfresco - alfresco-one-installer-resources + alfresco-installer-resources ${alfresco.platform.version} ${project.build.directory}/classes org.alfresco - alfresco-one-distribution + alfresco-enterprise-distribution ${project.version} zip ${project.build.directory}/distribution @@ -111,14 +112,6 @@ ${project.build.directory}/wcmqs alfresco/extension/** - - - org.alfresco.aos-module - alfresco-aos-module-distributionzip - ${alfresco.aos-module.version} - zip - ${project.build.directory}/distribution/aos-module - @@ -134,14 +127,12 @@ org.alfresco.integrations alfresco-googledocs-repo ${alfresco.googledocs.version} - enterprise amp org.alfresco.integrations alfresco-googledocs-share ${alfresco.googledocs.version} - enterprise amp @@ -150,6 +141,27 @@ + + + maven-resources-plugin + + + override-local-resources + prepare-package + + resources + + + ${project.build.directory} + true + + properties + + + + + + maven-antrun-plugin @@ -176,9 +188,7 @@ ${project.build.directory}/classes/bitrock - - - + diff --git a/enterprise-update-test/mer.bat b/enterprise-update-test/mer.bat new file mode 100644 index 0000000000..5626a8ec94 --- /dev/null +++ b/enterprise-update-test/mer.bat @@ -0,0 +1 @@ +mvn install -Dthis.installer.location=c:\demo\alfresco-one-installer-20160203-SNAPSHOT-664-win-x64.exe -Dbase.installer.location=c:\demo\alfresco-one-installer-20160203-SNAPSHOT-664-win-x64.exe diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index e55b052fa0..fcc06ed55f 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -32,7 +32,7 @@ --alfrescocustomstack_services_startup demand - ${project.build.directory}/test-data/alfresco-one-update-package + ${project.build.directory}/test-data/alfresco-enterprise-update-package @@ -105,7 +105,7 @@ org.alfresco - alfresco-one-update-package + alfresco-enterprise-update-package ${project.version} true ${unpacked.update.package} diff --git a/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java b/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java index eb51812699..176cf61a81 100644 --- a/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java +++ b/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java @@ -64,7 +64,7 @@ public class EndToEndIntegrationTest String basePath = System.getProperty("unpacked.update.package"); if (basePath == null) { - basePath = "./test-data/alfresco-one-update-package"; + basePath = "./test-data/alfresco-enterprise-update-package"; } File base = new File(targetDir, basePath); assertTrue(base.isDirectory()); diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index d792936804..f01bfa931c 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -7,13 +7,13 @@ alfresco-full-installation 5.1.1-SNAPSHOT - alfresco-one-update-package + alfresco-enterprise-update-package jar - Alfresco One Update Package + Alfresco Enterprise Update Package ${project.build.directory}/dependency/alfresco-update-tool-distribution-${alfresco.updatetool.version} - ${project.build.directory}/dependency/alfresco-one-platform-distributionzip-${alfresco.platform.version} + ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${alfresco.platform.version} ${project.build.directory}/dependency/alfresco-share-distribution-${alfresco.share.version} ${project.build.directory}/dependency/wcmqs-${project.version} ${project.build.directory}/dependency/aos-${alfresco.aos-module.version} @@ -89,7 +89,7 @@ org.alfresco - alfresco-one-platform-distributionzip + alfresco-platform-enterprise-distributionzip ${alfresco.platform.version} zip @@ -181,7 +181,7 @@ org.alfresco - alfresco-one-platform-distributionzip + alfresco-platform-enterprise-distributionzip ${alfresco.platform.version} true zip diff --git a/installer/pom.xml b/installer/pom.xml index 38c2befbd3..ec49c2e095 100644 --- a/installer/pom.xml +++ b/installer/pom.xml @@ -310,14 +310,6 @@ ${project.build.directory}/wcmqs alfresco/extension/** - - - org.alfresco.aos-module - alfresco-aos-module-distributionzip - ${alfresco.aos-module.version} - zip - ${project.build.directory}/distribution/aos-module - @@ -341,14 +333,6 @@ ${alfresco.googledocs.version} amp - - - org.alfresco - alfresco-spp - ${alfresco.platform.version} - amp - alfresco-spp.amp - From 6044ec98f7caa21d38e69faa0a9a2b419ba5ba51 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:09:49 +0000 Subject: [PATCH 115/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123231 mrogers: Rename the alfresco-enterprise-update-package to the alfresco-one-update-package git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124033 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update-test/pom.xml | 4 ++-- enterprise-update/pom.xml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/enterprise-update-test/pom.xml b/enterprise-update-test/pom.xml index fcc06ed55f..e55b052fa0 100644 --- a/enterprise-update-test/pom.xml +++ b/enterprise-update-test/pom.xml @@ -32,7 +32,7 @@ --alfrescocustomstack_services_startup demand - ${project.build.directory}/test-data/alfresco-enterprise-update-package + ${project.build.directory}/test-data/alfresco-one-update-package @@ -105,7 +105,7 @@ org.alfresco - alfresco-enterprise-update-package + alfresco-one-update-package ${project.version} true ${unpacked.update.package} diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index f01bfa931c..1798d0a225 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -7,9 +7,9 @@ alfresco-full-installation 5.1.1-SNAPSHOT - alfresco-enterprise-update-package + alfresco-one-update-package jar - Alfresco Enterprise Update Package + Alfresco One Update Package ${project.build.directory}/dependency/alfresco-update-tool-distribution-${alfresco.updatetool.version} From dd4bb979843b97aaa050d8f8da66326321f3c981 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:09:58 +0000 Subject: [PATCH 116/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123233 mrogers: Run the test against alfresco-one-update-package not alfresco-enterprise-update-package git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124034 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../src/test/java/EndToEndIntegrationTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java b/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java index 176cf61a81..eb51812699 100644 --- a/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java +++ b/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java @@ -64,7 +64,7 @@ public class EndToEndIntegrationTest String basePath = System.getProperty("unpacked.update.package"); if (basePath == null) { - basePath = "./test-data/alfresco-enterprise-update-package"; + basePath = "./test-data/alfresco-one-update-package"; } File base = new File(targetDir, basePath); assertTrue(base.isDirectory()); From bcde49e0e553d51b8d3155cdebb77d3d6579d23d Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:10:26 +0000 Subject: [PATCH 117/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123239 mrogers: Build against Platform 5.1.1-SNAPSHOT since that contains our MMT fixes. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124035 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 67c9641b7c92c01cd16c0ec3fa75126aea81c5c3 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:12:00 +0000 Subject: [PATCH 118/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123256 mrogers: rollback 123243 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124037 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- ear/pom.xml | 6 ++-- enterprise-war-for-ear/pom.xml | 57 ---------------------------------- pom.xml | 1 - 3 files changed, 3 insertions(+), 61 deletions(-) delete mode 100644 enterprise-war-for-ear/pom.xml diff --git a/ear/pom.xml b/ear/pom.xml index 6306175607..3cbe834c96 100644 --- a/ear/pom.xml +++ b/ear/pom.xml @@ -26,8 +26,8 @@ org.alfresco - alfresco-enterprise-war-for-ear - ${project.version} + alfresco-platform-enterprise + ${alfresco.platform.version} war @@ -172,7 +172,7 @@ org.alfresco - alfresco-enterprise-war-for-ear + alfresco-platform-enterprise alfresco.war diff --git a/enterprise-war-for-ear/pom.xml b/enterprise-war-for-ear/pom.xml deleted file mode 100644 index 1db7e2b636..0000000000 --- a/enterprise-war-for-ear/pom.xml +++ /dev/null @@ -1,57 +0,0 @@ - - 4.0.0 - alfresco-enterprise-war-for-ear - Alfresco Enterprise WAR for inclusion in EAR - - org.alfresco - alfresco-full-installation - 2015-SNAPSHOT - - war - - - - org.alfresco - alfresco-platform-enterprise - ${alfresco.platform.version} - war - - - org.alfresco - alfresco-share-services - ${alfresco.share.version} - amp - - - - - alfresco - - - maven-war-plugin - - - - org.alfresco.maven.plugin - alfresco-maven-plugin - 2.1.1 - - - - - - org.alfresco - alfresco-platform-enterprise - war - - - org.alfresco - alfresco-share-services - amp - - - - - - - diff --git a/pom.xml b/pom.xml index 4fee219cf1..db61c1276a 100644 --- a/pom.xml +++ b/pom.xml @@ -77,7 +77,6 @@ enterprise - enterprise-war-for-ear ear enterprise-distribution enterprise-update From 525365dd0d321f8c1d98ceddf5117eb3347c2ee8 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:12:22 +0000 Subject: [PATCH 119/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123261 mrogers: Merged trunk (2015.0) to WOLF-6 (WOLF.0.0) 113329 jphuynh: ACE-4314: Added a release profile to enforce the installer naming convention git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124038 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From e5ea038331b8d2a70871c6da1e323f5624a32aec Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:13:01 +0000 Subject: [PATCH 120/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123262 mrogers: Merged trunk (2015.0) to WOLF-6 (WOLF.0.0) 113363 jphuynh: ACE-4312: Fixed missing web-extension folder in the EAR Distribution + Removed unnecessary modules/platform folder. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124039 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- ear/pom.xml | 31 +++++++++++++++++++++++++-- ear/src/assembly/ear-distribution.xml | 4 ++++ 2 files changed, 33 insertions(+), 2 deletions(-) diff --git a/ear/pom.xml b/ear/pom.xml index 3cbe834c96..b10bf7b441 100644 --- a/ear/pom.xml +++ b/ear/pom.xml @@ -65,6 +65,19 @@ + + org.alfresco + alfresco-share-distribution + ${alfresco.share.version} + zip + provided + + + * + * + + + @@ -198,7 +211,7 @@ maven-dependency-plugin - unpack-distribution + unpack-platform-distribution prepare-package unpack-dependencies @@ -206,7 +219,21 @@ alfresco-platform-enterprise-distributionzip true - alfresco-platform-enterprise-distributionzip-${alfresco.platform.version}/solr4/,alfresco-platform-enterprise-distributionzip-${alfresco.platform.version}/web-server/webapps/ + alfresco-platform-enterprise-distributionzip-${alfresco.platform.version}/solr4/,alfresco-platform-enterprise-distributionzip-${alfresco.platform.version}/web-server/webapps/,alfresco-platform-enterprise-distributionzip-${alfresco.platform.version}/modules/ + + + + + unpack-share-distribution + prepare-package + + unpack-dependencies + + + alfresco-share-distribution + true + * + alfresco-share-distribution-${alfresco.share.version}/web-extension-samples/ diff --git a/ear/src/assembly/ear-distribution.xml b/ear/src/assembly/ear-distribution.xml index 549f26a600..5e5e9ead3f 100644 --- a/ear/src/assembly/ear-distribution.xml +++ b/ear/src/assembly/ear-distribution.xml @@ -18,6 +18,10 @@ ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${alfresco.platform.version}/web-server/shared/classes web-server/classpath + + ${project.build.directory}/dependency/alfresco-share-distribution-${alfresco.share.version}/web-extension-samples + web-server/classpath/alfresco/web-extension + From 4a9f09b58e39cae22aafc2f2009d81903419e058 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:13:15 +0000 Subject: [PATCH 121/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123263 mrogers: Merged trunk (2015.0) to WOLF-6 (WOLF.0.0) 113466 jphuynh: ACE-4335: Added missing enterprise classifier for GoogleDocs integration artifacts. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124040 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-installer/pom.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/enterprise-installer/pom.xml b/enterprise-installer/pom.xml index 29b158199c..b390ee5c43 100644 --- a/enterprise-installer/pom.xml +++ b/enterprise-installer/pom.xml @@ -127,12 +127,14 @@ org.alfresco.integrations alfresco-googledocs-repo ${alfresco.googledocs.version} + enterprise amp org.alfresco.integrations alfresco-googledocs-share ${alfresco.googledocs.version} + enterprise amp From d6e239666e83518e32dad84a64e1e752af64df09 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:14:38 +0000 Subject: [PATCH 122/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123264 mrogers: Merged trunk (2015.0) to WOLF-6 (WOLF.0.0) 113813 jphuynh: ACE-4276: Upgraded Installbuilder to 15.9.0 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124041 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From dfae9c07f940a542ab3f656d04587b31d2f0a6f5 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:15:03 +0000 Subject: [PATCH 123/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123265 mrogers: Merged trunk (2015.0) to WOLF-6 (WOLF.0.0) 115168 jphuynh: ACE-4508: Reinstated the forgotten alfresco-spp.amp git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124042 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- installer/pom.xml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/installer/pom.xml b/installer/pom.xml index ec49c2e095..39bf1c5547 100644 --- a/installer/pom.xml +++ b/installer/pom.xml @@ -333,6 +333,14 @@ ${alfresco.googledocs.version} amp + + + org.alfresco + alfresco-spp + ${alfresco.platform.version} + amp + alfresco-spp.amp + From 6a69eb8b6db6e8f2a5f0cd4c50c408ebb89e24ff Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:18:35 +0000 Subject: [PATCH 124/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123268 mrogers: Merged trunk (2015.0) to WOLF-6 (WOLF.0.0) 115782 jphuynh: ACE-4547: Clean up and updated consistency of the README files. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124043 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- distribution/src/main/resources/README.txt | 3 +-- enterprise-distribution/src/main/resources/README.txt | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/distribution/src/main/resources/README.txt b/distribution/src/main/resources/README.txt index 517e56f94d..62c0a6f580 100644 --- a/distribution/src/main/resources/README.txt +++ b/distribution/src/main/resources/README.txt @@ -1,5 +1,4 @@ -Alfresco Community (Build: ${installer.version.name}) -=============================== +Alfresco One Community (Build: ${installer.version.name}) Contains: - Alfresco Platform: ${alfresco.platform.version} diff --git a/enterprise-distribution/src/main/resources/README.txt b/enterprise-distribution/src/main/resources/README.txt index 7091aa83ca..ccba8e6601 100644 --- a/enterprise-distribution/src/main/resources/README.txt +++ b/enterprise-distribution/src/main/resources/README.txt @@ -1,4 +1,4 @@ -Alfresco One (Build: ${installer.version.name}) +Alfresco One Enterprise (Build: ${installer.version.name}) =============================== Contains: From c1aa828405209c697a7c4ff5bdec06609c51e175 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:19:01 +0000 Subject: [PATCH 125/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123269 mrogers: Merged trunk (2015.0) to WOLF-6 (WOLF.0.0) 116121 jphuynh: ACE-4561: Release Agility: Updates to the installer - Alfresco One Enterprise git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124044 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-installer/pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/enterprise-installer/pom.xml b/enterprise-installer/pom.xml index b390ee5c43..054effc0fc 100644 --- a/enterprise-installer/pom.xml +++ b/enterprise-installer/pom.xml @@ -17,7 +17,7 @@ ${binaries.folder}/build-classpath/license.xml project.version=${installer.version.name} - project.fullName='Alfresco One' + project.fullName='Alfresco One Enterprise' project.osxSigningPkcs12File=${signing.key.location}/Alfresco-Software-Ltd-osx.p12 project.osxSigningPkcs12Password=${p12Password} project.windowsSigningPkcs12File=${signing.key.location}/Alfresco-Software-Ltd.p12 @@ -32,7 +32,7 @@ - alfresco-enterprise + alfresco-one-enterprise ${alfresco.package.name}-distribution From e1d6b5be6d696981ecc84ffe42ac2c205f8032f2 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:19:15 +0000 Subject: [PATCH 126/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123270 mrogers: Merged trunk (2015.0) to WOLF-6 (WOLF.0.0) 116128 jphuynh: ACE-4561: Release Agility: Updates to the installer - Distribution zip name remains the same as before. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124045 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-installer/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/enterprise-installer/pom.xml b/enterprise-installer/pom.xml index 054effc0fc..e3f769f123 100644 --- a/enterprise-installer/pom.xml +++ b/enterprise-installer/pom.xml @@ -33,7 +33,7 @@ alfresco-one-enterprise - ${alfresco.package.name}-distribution + alfresco-enterprise-distribution From 921332911230a2a08ddc1bb5f13574728af9a5fc Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:28:09 +0000 Subject: [PATCH 127/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123267 mrogers: Merged trunk (2015.0) to WOLF-6 (WOLF.0.0) 115174 jphuynh: ACE-4494: Updated Java to 1.8.0_65 to fix the following vulnerabilities: - CVE-2015-4868 - CVE-2015-4803 - CVE-2015-4893 - CVE-2015-4911 - CVE-2015-4872 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124047 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 1481962405c27be4d2059a83b8a869465b4e76f1 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:29:03 +0000 Subject: [PATCH 128/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123276 mrogers: Merged trunk (2015.0) to WOLF-6 (WOLF.0.0) 117634 jphuynh: Merged BDE-443 (5.1.0) to trunk (2015.0) 114665 jphuynh: Updated: - installer.common.version=5.1-20151016 - installer.postgresql.version=9.4.4-20151016 - installer.libreoffice.version=4.4.5-20151016 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124048 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 382164f8c4ab58f133bd508aa9f77cbe0e4af989 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:29:19 +0000 Subject: [PATCH 129/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123277 mrogers: Merged trunk (2015.0) to WOLF-6 (WOLF.0.0) 117929 jphuynh: ACE-4675: Upgraded common package to fix CVE-2015-8126 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124049 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 405e22ed445aa8b75dd16e4a507df9f2645c3f17 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:29:45 +0000 Subject: [PATCH 130/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123278 mrogers: Merged trunk (2015.0) to WOLF-6 (WOLF.0.0) 118074 jphuynh: ACE-4600: Upgraded to InstallBuilder 15.10.1 (Custom) git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124050 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From b50bedc94fd1b5f906469484ef8f0074ab7da1b5 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:56:45 +0000 Subject: [PATCH 131/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 123284 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124058 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 32c2826f640411fe1bcc27ef9c08a9605c9fc67f Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:57:11 +0000 Subject: [PATCH 132/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 123285 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124059 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 6aa97b2a045217dc2e7ac507a1170b7be4ac3d3c Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:57:18 +0000 Subject: [PATCH 133/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 123286 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124060 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From e85ea4c8a035fe395ea14f7b22988f3842e139cf Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:57:25 +0000 Subject: [PATCH 134/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 123288 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124061 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From ac5d966e4a292e2c37bdcf78017ecc2c14598794 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:57:34 +0000 Subject: [PATCH 135/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 123289 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124062 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From daa012a6d3a1e2e2030a4075b32858243cec423e Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:57:42 +0000 Subject: [PATCH 136/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 123304 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124064 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From ea72a3b584784c76b85b02e2988e96760f65b796 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:58:04 +0000 Subject: [PATCH 137/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123305 mrogers: Change update assistant to use renamed alfresco-one-platform-distributionzip git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124065 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/pom.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index 1798d0a225..d792936804 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -13,7 +13,7 @@ ${project.build.directory}/dependency/alfresco-update-tool-distribution-${alfresco.updatetool.version} - ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${alfresco.platform.version} + ${project.build.directory}/dependency/alfresco-one-platform-distributionzip-${alfresco.platform.version} ${project.build.directory}/dependency/alfresco-share-distribution-${alfresco.share.version} ${project.build.directory}/dependency/wcmqs-${project.version} ${project.build.directory}/dependency/aos-${alfresco.aos-module.version} @@ -89,7 +89,7 @@ org.alfresco - alfresco-platform-enterprise-distributionzip + alfresco-one-platform-distributionzip ${alfresco.platform.version} zip @@ -181,7 +181,7 @@ org.alfresco - alfresco-platform-enterprise-distributionzip + alfresco-one-platform-distributionzip ${alfresco.platform.version} true zip From 53d55d802c958ba5f9f567f29cdbea70e15674cf Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:58:14 +0000 Subject: [PATCH 138/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 123307 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124066 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From e7433556d7b4f2f8abab8f4bb45bb416795d37ea Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:58:20 +0000 Subject: [PATCH 139/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 123308 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124067 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From c143becf9938720be51cd7a66778b48d6f80a2f8 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:58:34 +0000 Subject: [PATCH 140/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 123310 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124068 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 03ae31140da000cc95a8bb3e4c1331d7a0215092 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:58:43 +0000 Subject: [PATCH 141/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123314 mrogers: File tree comparison needs to ignore comment lines. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124069 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../alfresco/update/tool/dircomp/FileTreeCompareImpl.java | 7 +++++++ .../update/tool/dircomp/FileTreeCompareImplTest.java | 1 + 2 files changed, 8 insertions(+) diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java index 3dc4fd40cc..e5a837cb41 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java @@ -233,6 +233,7 @@ public class FileTreeCompareImpl implements FileTreeCompare // Create a pattern for module.installDate Pattern installDatePattern = Pattern.compile("module.installDate=.*[\n\r\f]*$"); + Pattern commentPattern = Pattern.compile("^#.*"); File processed = Files.createTempFile(orig.getName(), ".tmp").toFile(); try(Reader r = new FileReader(orig); @@ -255,6 +256,12 @@ public class FileTreeCompareImpl implements FileTreeCompare // replace module.installDate line = m.replaceFirst("module.installDate="); } + Matcher cp = commentPattern.matcher(line); + if(cp.matches()) + { + // replace module.installDate + line = "# {comment suppressed}\n"; + } pw.println(line); } diff --git a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java index 093d09a766..938ef2722a 100644 --- a/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java +++ b/enterprise-update-test/src/test/java/org/alfresco/update/tool/dircomp/FileTreeCompareImplTest.java @@ -284,6 +284,7 @@ public class FileTreeCompareImplTest private String sampleModuleProperties(String installDateAsString) { StringBuilder sb = new StringBuilder(); + sb.append("# " + installDateAsString + "\n"); sb.append("module.id=org.alfresco.integrations.share.google.docs\n"); sb.append("module.version=3.0.3\n"); sb.append("module.buildnumber=4ent\n"); From b96f95aa7b97d417767ef60277af9fc78f5359cb Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 12:58:46 +0000 Subject: [PATCH 142/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) (RECORD ONLY) : - 123337,123472 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124070 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 From 0d96ad055d1efd714b6482ee95966a5a27e94585 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 13:00:39 +0000 Subject: [PATCH 143/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123492 mrogers: Package the correct README for the all in one installer. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124071 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 10 ++++++- enterprise-update/pom.xml | 31 ++++++++++++++++++++- 2 files changed, 39 insertions(+), 2 deletions(-) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index 241dec6cb8..12eebca3e5 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -38,12 +38,20 @@ ${unpacked.alfresco.platform.distribution} resources/distribution/platform - README.txt package.properties keep + + ${unpacked.alfresco.one.distribution} + resources/distribution/platform + + README.txt + + keep + + ${unpacked.alfresco.platform.distribution} diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index d792936804..2ba337446c 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -17,6 +17,7 @@ ${project.build.directory}/dependency/alfresco-share-distribution-${alfresco.share.version} ${project.build.directory}/dependency/wcmqs-${project.version} ${project.build.directory}/dependency/aos-${alfresco.aos-module.version} + ${project.build.directory}/dependency/alfresco-one-distribution-${project.version} ${project.build.directory}/classes/script/${version.major}.${version.minor} @@ -102,6 +103,14 @@ zip + + + org.alfresco + alfresco-one-distribution + ${project.version} + jar + + junit @@ -226,7 +235,27 @@ - + + + + unpack-one-distribution + generate-resources + + unpack + + + + + org.alfresco + alfresco-one-distribution + ${project.version} + true + jar + ${unpacked.alfresco.one.distribution} + + + + From 3671b5a33bdcbd39ec42a93fe6174667e6a3972e Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 13:00:53 +0000 Subject: [PATCH 144/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123496 mrogers: alfresco-share-services.amp needs to be called exactly that not with a 5.1.1-SNAPSHOT git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124072 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index 12eebca3e5..afc4a6f90b 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -209,6 +209,7 @@ false true resources/amp/platform + alfresco-share-services.amp org.alfresco:alfresco-share-services:amp:* From 37fb4b9e94ac1e138a5d0f8ab350ae42e96481d9 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 13:01:01 +0000 Subject: [PATCH 145/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123497 mrogers: convert the readme to windows line format. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124073 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index afc4a6f90b..0c46983a41 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -19,7 +19,7 @@ *.bat - keep + dos @@ -40,7 +40,7 @@ package.properties - keep + dos @@ -49,7 +49,7 @@ README.txt - keep + dos @@ -60,7 +60,7 @@ README.txt package.properties - keep + dos @@ -71,7 +71,7 @@ README.txt package.properties - keep + dos From fea5e40e57cfecf9950096a1b1339a7395da41d1 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 13:01:08 +0000 Subject: [PATCH 146/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123498 mrogers: Another README that needs converting to dos git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124074 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index 0c46983a41..742a06c24d 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -120,7 +120,7 @@ README.txt package.properties - unix + dos From 2eff753b1fe10669d5d1edf09f27086b2559c7d6 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 13:01:17 +0000 Subject: [PATCH 147/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123519 mrogers: Ignore share-config-custom.xml git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124075 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../alfresco/update/tool/dircomp/FileTreeCompareImpl.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java index e5a837cb41..dcc02584bc 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java @@ -75,7 +75,10 @@ public class FileTreeCompareImpl implements FileTreeCompare ignorePaths.add(toPlatformPath("**/solrcore.properties")); ignorePaths.add(toPlatformPath("**/modifications.install")); ignorePaths.add(toPlatformPath("tomcat/webapps/ROOT.war")); - ignorePaths.add(toPlatformPath("tomcat/webapps/ROOT.war")); + + // Ignore for 5.1 MNT-14307 + ignorePaths.add(toPlatformPath("alfresco/web-extension/share-config-custom.xml")); + } if (allowedDiffsPaths == null) From 9c819f7429935391683fc0ac37a5791776145406 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 13:01:39 +0000 Subject: [PATCH 148/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123525 mrogers: Add the solr4 archive schema.xml to the update package. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124076 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- enterprise-update/assemblies/updateTool.xml | 10 +++++++ enterprise-update/pom.xml | 33 ++++++++++++++++++++- 2 files changed, 42 insertions(+), 1 deletion(-) diff --git a/enterprise-update/assemblies/updateTool.xml b/enterprise-update/assemblies/updateTool.xml index 742a06c24d..bdbefa8ebe 100644 --- a/enterprise-update/assemblies/updateTool.xml +++ b/enterprise-update/assemblies/updateTool.xml @@ -84,6 +84,16 @@ keep + + + + ${unpacked.solr4.distribution}/archive-SpacesStore/conf + resources/distribution/common/solr4/archive-SpacesStore/conf + + schema.xml + + keep + diff --git a/enterprise-update/pom.xml b/enterprise-update/pom.xml index 2ba337446c..1ede413b11 100644 --- a/enterprise-update/pom.xml +++ b/enterprise-update/pom.xml @@ -18,6 +18,7 @@ ${project.build.directory}/dependency/wcmqs-${project.version} ${project.build.directory}/dependency/aos-${alfresco.aos-module.version} ${project.build.directory}/dependency/alfresco-one-distribution-${project.version} + ${project.build.directory}/dependency/solr4-distribution-${project.version} ${project.build.directory}/classes/script/${version.major}.${version.minor} @@ -110,6 +111,15 @@ ${project.version} jar + + + + org.alfresco + alfresco-solr4 + ${alfresco.platform.version} + config + zip + @@ -255,7 +265,28 @@ - + + + + unpack-solr4-distribution + generate-resources + + unpack + + + + + org.alfresco + alfresco-solr4 + ${alfresco.platform.version} + config + true + zip + ${unpacked.solr4.distribution} + + + + From e5d030b7ad102c5136b33071382e94478b5b4bd6 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 13:01:48 +0000 Subject: [PATCH 149/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123527 mrogers: Correct path for share-config-custom.xml git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124077 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java index dcc02584bc..99472447ea 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/FileTreeCompareImpl.java @@ -77,7 +77,7 @@ public class FileTreeCompareImpl implements FileTreeCompare ignorePaths.add(toPlatformPath("tomcat/webapps/ROOT.war")); // Ignore for 5.1 MNT-14307 - ignorePaths.add(toPlatformPath("alfresco/web-extension/share-config-custom.xml")); + ignorePaths.add(toPlatformPath("tomcat/shared/classes/alfresco/web-extension/share-config-custom.xml")); } From c2864afc9ca0a540cd8498cb6833f568dc9582ec Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 13:01:57 +0000 Subject: [PATCH 150/151] Merged WOLF-6 (WOLF.0.0) to 5.1.1 (5.1.1) 123532 mrogers: Now that the end to end test passes, use a junit assert to break the build if it fails. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124078 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../alfresco/update/tool/dircomp/ResultSet.java | 14 +++++++------- .../src/test/java/EndToEndIntegrationTest.java | 6 +++++- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ResultSet.java b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ResultSet.java index a66d4a473b..a96a426569 100644 --- a/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ResultSet.java +++ b/enterprise-update-test/src/main/java/org/alfresco/update/tool/dircomp/ResultSet.java @@ -13,7 +13,7 @@ import java.util.List; public class ResultSet { final List results = new ArrayList<>(); - final Stats stats = new Stats(); + public final Stats stats = new Stats(); /** * Class for aggregating basic statistics relating to the directory tree comparisons. @@ -27,18 +27,18 @@ public class ResultSet /** * The number of files (including directories) examined. */ - int resultCount; + public int resultCount; /** - * The number of files discovered to have differences. + * The number of files discovered to have differences that are not allowed or ignored. */ - int differenceCount; + public int differenceCount; /** - * The number of files discovered to have differences, but where we do not care. + * The number of files discovered to have differences, but the difference is allowed. */ - int suppressedDifferenceCount; + public int suppressedDifferenceCount; /** * The number of files that were completely ignored due to being in the ignore list. */ - int ignoredFileCount; + public int ignoredFileCount; } } diff --git a/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java b/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java index eb51812699..53fec9617c 100644 --- a/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java +++ b/enterprise-update-test/src/test/java/EndToEndIntegrationTest.java @@ -107,7 +107,7 @@ public class EndToEndIntegrationTest // Run the diff tool compare(referenceInstance, updateThisOne); - + } /** @@ -172,6 +172,10 @@ public class EndToEndIntegrationTest { zformatter.format(resultSet, zos); } + + + assertTrue("update test has found unexpected differences, see the installation-diff-report for further details", resultSet.stats.differenceCount == 0); + } /** From 4ffa58131a25f73208309dd0c0cc813ebd3e8a11 Mon Sep 17 00:00:00 2001 From: Mark Rogers Date: Tue, 15 Mar 2016 13:35:10 +0000 Subject: [PATCH 151/151] Reverting incorrect merges from mass WOLF-6 merge git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/services/full-installer/branches/5.1.1@124081 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- distribution/pom.xml | 1 - distribution/src/main/resources/README.txt | 3 +- ear/pom.xml | 20 ++------ ear/src/assembly/ear-distribution.xml | 6 +-- enterprise-distribution/pom.xml | 7 ++- .../src/main/resources/README.txt | 2 +- enterprise-installer/pom.xml | 46 +++++++------------ installer/pom.xml | 8 ++++ pom.xml | 6 +-- 9 files changed, 41 insertions(+), 58 deletions(-) diff --git a/distribution/pom.xml b/distribution/pom.xml index 296b30f5cc..877eacf5e3 100644 --- a/distribution/pom.xml +++ b/distribution/pom.xml @@ -13,7 +13,6 @@ 8080 - community diff --git a/distribution/src/main/resources/README.txt b/distribution/src/main/resources/README.txt index 62c0a6f580..517e56f94d 100644 --- a/distribution/src/main/resources/README.txt +++ b/distribution/src/main/resources/README.txt @@ -1,4 +1,5 @@ -Alfresco One Community (Build: ${installer.version.name}) +Alfresco Community (Build: ${installer.version.name}) +=============================== Contains: - Alfresco Platform: ${alfresco.platform.version} diff --git a/ear/pom.xml b/ear/pom.xml index b10bf7b441..d5e130baa9 100644 --- a/ear/pom.xml +++ b/ear/pom.xml @@ -36,13 +36,6 @@ ${alfresco.share.version} war - - - org.alfresco - alfresco-enterprise-vti-bin - ${alfresco.platform.version} - war - org.alfresco alfresco-server-root @@ -54,7 +47,7 @@ org.alfresco - alfresco-platform-enterprise-distributionzip + alfresco-one-platform-distributionzip ${alfresco.platform.version} zip provided @@ -193,11 +186,6 @@ share share.war - - org.alfresco - alfresco-enterprise-vti-bin - _vti_bin.war - org.alfresco alfresco-server-root @@ -217,9 +205,9 @@ unpack-dependencies - alfresco-platform-enterprise-distributionzip + alfresco-one-platform-distributionzip true - alfresco-platform-enterprise-distributionzip-${alfresco.platform.version}/solr4/,alfresco-platform-enterprise-distributionzip-${alfresco.platform.version}/web-server/webapps/,alfresco-platform-enterprise-distributionzip-${alfresco.platform.version}/modules/ + alfresco-one-platform-distributionzip-${alfresco.platform.version}/solr4/,alfresco-one-platform-distributionzip-${alfresco.platform.version}/web-server/webapps/,alfresco-one-platform-distributionzip-${alfresco.platform.version}/modules/ @@ -251,7 +239,7 @@ 1.0.1 - ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${alfresco.platform.version}/web-server/lib + ${project.build.directory}/dependency/alfresco-one-platform-distributionzip-${alfresco.platform.version}/web-server/lib diff --git a/ear/src/assembly/ear-distribution.xml b/ear/src/assembly/ear-distribution.xml index 5e5e9ead3f..35732d8b91 100644 --- a/ear/src/assembly/ear-distribution.xml +++ b/ear/src/assembly/ear-distribution.xml @@ -8,14 +8,14 @@ - ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${alfresco.platform.version} + ${project.build.directory}/dependency/alfresco-one-platform-distributionzip-${alfresco.platform.version} web-server/shared/** - ${project.build.directory}/dependency/alfresco-platform-enterprise-distributionzip-${alfresco.platform.version}/web-server/shared/classes + ${project.build.directory}/dependency/alfresco-one-platform-distributionzip-${alfresco.platform.version}/web-server/shared/classes web-server/classpath @@ -30,7 +30,7 @@ ${project.build.directory}/alfresco-ear-distribution-${installer.version.name}.ear - alfresco-enterprise-${installer.version.name}.ear + alfresco-one-${installer.version.name}.ear diff --git a/enterprise-distribution/pom.xml b/enterprise-distribution/pom.xml index c610d3aa8b..e054447097 100644 --- a/enterprise-distribution/pom.xml +++ b/enterprise-distribution/pom.xml @@ -6,21 +6,20 @@ alfresco-full-installation 5.1.1-SNAPSHOT - alfresco-enterprise-distribution + alfresco-one-distribution jar Alfresco Full Distribution (Enterprise Edition) 8080 - enterprise org.alfresco - alfresco-platform-enterprise-distributionzip + alfresco-one-platform-distributionzip ${alfresco.platform.version} zip @@ -82,7 +81,7 @@ org.alfresco - alfresco-platform-enterprise-distributionzip + alfresco-one-platform-distributionzip ${alfresco.platform.version} zip diff --git a/enterprise-distribution/src/main/resources/README.txt b/enterprise-distribution/src/main/resources/README.txt index ccba8e6601..7091aa83ca 100644 --- a/enterprise-distribution/src/main/resources/README.txt +++ b/enterprise-distribution/src/main/resources/README.txt @@ -1,4 +1,4 @@ -Alfresco One Enterprise (Build: ${installer.version.name}) +Alfresco One (Build: ${installer.version.name}) =============================== Contains: diff --git a/enterprise-installer/pom.xml b/enterprise-installer/pom.xml index e3f769f123..acdf25c85a 100644 --- a/enterprise-installer/pom.xml +++ b/enterprise-installer/pom.xml @@ -6,7 +6,7 @@ alfresco-full-installation 5.1.1-SNAPSHOT - alfresco-enterprise-installer + alfresco-one-installer pom Alfresco Enterprise Full Installers @@ -17,7 +17,7 @@ ${binaries.folder}/build-classpath/license.xml project.version=${installer.version.name} - project.fullName='Alfresco One Enterprise' + project.fullName='Alfresco One' project.osxSigningPkcs12File=${signing.key.location}/Alfresco-Software-Ltd-osx.p12 project.osxSigningPkcs12Password=${p12Password} project.windowsSigningPkcs12File=${signing.key.location}/Alfresco-Software-Ltd.p12 @@ -25,15 +25,14 @@ alfresco_edition=enterprise alfresco_package='${alfresco.package.name}' alfrescogoogledocs_component_enabled=1 - alfrescosharepoint_component_enabled=0 alfrescosolr_component_enabled=1 alfrescowcmqs_component_enabled=1 project.outputDirectory=${project.build.directory} - alfresco-one-enterprise - alfresco-enterprise-distribution + alfresco-one + alfresco-one-distribution @@ -68,13 +67,13 @@ org.alfresco - alfresco-installer-resources + alfresco-one-installer-resources ${alfresco.platform.version} ${project.build.directory}/classes org.alfresco - alfresco-enterprise-distribution + alfresco-one-distribution ${project.version} zip ${project.build.directory}/distribution @@ -112,6 +111,14 @@ ${project.build.directory}/wcmqs alfresco/extension/** + + + org.alfresco.aos-module + alfresco-aos-module-distributionzip + ${alfresco.aos-module.version} + zip + ${project.build.directory}/distribution/aos-module + @@ -143,27 +150,6 @@ - - - maven-resources-plugin - - - override-local-resources - prepare-package - - resources - - - ${project.build.directory} - true - - properties - - - - - - maven-antrun-plugin @@ -190,7 +176,9 @@ ${project.build.directory}/classes/bitrock - + + + diff --git a/installer/pom.xml b/installer/pom.xml index 39bf1c5547..38c2befbd3 100644 --- a/installer/pom.xml +++ b/installer/pom.xml @@ -310,6 +310,14 @@ ${project.build.directory}/wcmqs alfresco/extension/** + + + org.alfresco.aos-module + alfresco-aos-module-distributionzip + ${alfresco.aos-module.version} + zip + ${project.build.directory}/distribution/aos-module + diff --git a/pom.xml b/pom.xml index db61c1276a..1856e48773 100644 --- a/pom.xml +++ b/pom.xml @@ -23,8 +23,8 @@ 1.0-SNAPSHOT - - + + 1.1 @@ -81,7 +81,7 @@ enterprise-distribution enterprise-update enterprise-installer - enterprise-update-test + enterprise-update-test