importPackage( Packages.org.openedit.util ); importPackage( Packages.java.util ); importPackage( Packages.java.lang ); importPackage( Packages.java.io ); importPackage( Packages.org.entermediadb.modules.update ); log.info("Starting upgrade"); var war = "http://dev.ijsolutions.ca/jenkins/job/testbench/lastSuccessfulBuild/artifact/deploy/builds/testbench.zip"; var root = moduleManager.getBean("root").getAbsolutePath(); var web = root + "/WEB-INF"; var tmp = web + "/tmp"; log.info("1. DOWNLOADED THE LATEST EDITOR BUILD"); var downloader = new Downloader(); downloader.download( war, tmp + "/ROOT.war"); log.info("2. UNZIP WAR FILE"); var unziper = new ZipUtil(); unziper.unzip( tmp + "/ROOT.war", tmp ); log.info("3. REPLACE JARS"); var files = new FileUtils(); files.deleteMatch( web + "/lib/ijsolutions-te*.jar"); files.deleteMatch( web + "/lib/testbench*.jar"); files.deleteMatch( web + "/lib/ehcache*.jar"); files.deleteMatch( web + "/lib/itext*.jar"); files.deleteMatch( web + "/lib/fr*.jar"); files.deleteMatch( web + "/lib/org.odf*.jar"); files.deleteMatch( web + "/lib/xerces*.jar"); files.deleteMatch( web + "/lib/xml-apis*.jar"); files.deleteMatch( web + "/lib/oro-*.jar"); files.deleteMatch( web + "/lib/odfdom-*.jar"); files.deleteMatch( web + "/lib/xmlworker-*.jar"); files.deleteMatch( web + "/lib/app-mediamoney*.jar"); files.deleteMatch( web + "/lib/poi*.jar"); files.deleteMatch( web + "/lib/xmlbeans*.jar"); files.deleteMatch( web + "/lib/jcsAnet*.jar"); files.deleteMatch( web + "/lib/openedit-money*.jar"); files.deleteMatch( web + "/lib/openecho*.jar"); files.deleteMatch( web + "/lib/money*.jar"); files.deleteMatch( web + "/lib/bsh*.jar"); files.deleteMatch( web + "/lib/stripe*.jar"); files.deleteMatch( web + "/lib/store-reports*.jar"); files.deleteMatch( web + "/lib/paypal*.jar"); files.deleteMatch( web + "/lib/jsoup*.jar"); files.deleteMatch( web + "/lib/jetty*.jar"); files.deleteMatch( web + "/lib/tincan*.jar"); files.deleteMatch( web + "/lib/twilio*.jar"); files.deleteMatch( web + "/lib/rome*.jar"); /*Hibernate */ files.deleteMatch( web + "lib/antlr*.jar"); files.deleteMatch( web + "lib/byte-buddy*.jar"); files.deleteMatch( web + "lib/classmate*.jar"); files.deleteMatch( web + "lib/FastInfoset*.jar"); files.deleteMatch( web + "lib/h2*.jar"); files.deleteMatch( web + "lib/hibernate-commons-annotations*.jar"); files.deleteMatch( web + "lib/hibernate-core-*.jar"); files.deleteMatch( web + "lib/istack-commons-*.jar"); files.deleteMatch( web + "lib/jandex-*.jar"); files.deleteMatch( web + "lib/javax.activation-api*.jar"); files.deleteMatch( web + "lib/javax.persistence-api*.jar"); files.deleteMatch( web + "lib/jaxb-api*.jar"); files.deleteMatch( web + "lib/jaxb-runtime*.jar"); files.deleteMatch( web + "lib/jboss-logging*.jar"); files.deleteMatch( web + "lib/jboss-transaction-api*.jar"); files.deleteMatch( web + "lib/mysql-connector-java*.jar"); files.deleteMatch( web + "lib/stax-ex*.jar"); files.deleteMatch( web + "lib/txw2*.jar"); files.copyFileByMatch( tmp + "/lib/antlr*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/byte-buddy*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/classmate*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/FastInfoset*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/h2*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/hibernate-commons-annotations*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/hibernate-core*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/istack-commons-runtime*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/jandex*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/javax.activation-api*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/javax.persistence-api*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/jaxb-api*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/jaxb-runtime*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/jboss-logging*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/jboss-transaction-api*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/mysql-connector-java*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/stax-ex*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/txw2*.jar", web + "/lib/"); /* End Hibernate */ files.copyFileByMatch( tmp + "/lib/testbench*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/itext*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/fr*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/org.odf*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/xerces*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/xml-apis*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/oro-*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/odfdom-*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/xmlworker-*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/poi*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/xmlbeans*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/jcsAnet*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/openecho*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/openedit-money*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/bsh*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/stripe*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/store-reports*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/paypal*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/commons-*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/jsoup*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/jetty*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/tincan*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/twilio*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/lib/rome*.jar", web + "/lib/"); files.copyFileByMatch( tmp + "/base/bootstrapfrontend/system/views/user/*.xml", web + "/base/system/data/views/user/"); files.copyFileByMatch( tmp + "/base/bootstrapfrontend/system/fields/user.xml", web + "/base/system/data/fields/"); log.info("4. UPGRADE BASE DIR. (moved into the /WEB-INF/base/ directory)"); files.deleteAll( root + "/WEB-INF/base/testbench"); //files.deleteAll( root + "/WEB-INF/base/bench"); //files.copyFiles( tmp + "/bench", root + "/WEB-INF/base/bench"); files.deleteAll( root + "/WEB-INF/base/bootstrapfrontend"); files.copyFiles( tmp + "/base/bootstrapfrontend", root + "/WEB-INF/base/bootstrapfrontend"); //files.copyFiles( tmp + "/festi", root + "/festi"); files.copyFiles( tmp + "/fireexam", root + "/fireexam"); files.copyFiles( tmp + "/vesseltraining", root + "/vesseltraining"); files.copyFiles( tmp + "/firewise", root + "/firewise"); files.copyFiles( tmp + "/netevolved", root + "/netevolved"); files.copyFiles( tmp + "/netevolved", root + "/netevolved"); files.copyFiles( tmp + "/evolved", root + "/evolved"); files.copyFiles( tmp + "/colonies", root + "/colonies"); files.copyFiles( tmp + "/colony42", root + "/colony42"); files.deleteAll( root + "/WEB-INF/base/edu"); files.deleteAll( root + "/WEB-INF/base/oneliveweb"); files.copyFiles( tmp + "/base/oneliveweb", root + "/WEB-INF/base/oneliveweb"); files.deleteAll( root + "/WEB-INF/base/mobile"); files.deleteAll( root + "/WEB-INF/base/testshop"); log.info("5. CLEAN UP"); //files.deleteAll(tmp); log.info("6. UPGRADE COMPLETED");