diff --git a/server/docker-base/Dockerfile b/server/docker-base/Dockerfile index 16087bf1..63ba47fe 100644 --- a/server/docker-base/Dockerfile +++ b/server/docker-base/Dockerfile @@ -77,6 +77,7 @@ RUN \ mkdir $TPAPITMP && \ git clone https://github.com/tpoechtrager/apple-libtapi.git && \ cd apple-libtapi && \ + git checkout 19694a572cd9c0f6452a8e214682e74197370934 && \ INSTALLPREFIX=$TPAPITMP ./build.sh && \ ./install.sh && \ git clone https://github.com/tpoechtrager/cctools-port.git && \ @@ -93,22 +94,21 @@ RUN \ apt-get remove -y git cmake -# +# # iOS + OSX # +# For package instructions, see README_IOS.md -# Keeping iOS 9.3 and MaxOSX 10.11 around for a few weeks (should also remove iPhoneOS.sdk folder) +# Keeping iOS 10.3 and MacOSX10.2 around for a few sprints RUN \ - wget -q -O - ${S3_URL}/iPhoneOS9.3.sdk.tar.gz | tar xz -C /opt && \ - mv /opt/iPhoneOS.sdk /opt/iPhoneOS9.3.sdk && \ + wget -q -O - ${S3_URL}/iPhoneOS11.2.sdk.tar.gz | tar xz -C /opt && \ + mv /opt/iPhoneOS.sdk /opt/iPhoneOS11.2.sdk && \ wget -q -O - ${S3_URL}/iPhoneOS10.3.sdk.tar.gz | tar xz -C /opt && \ mv /opt/iPhoneOS.sdk /opt/iPhoneOS10.3.sdk && \ - wget -q -O - ${S3_URL}/MacOSX10.11.sdk.tar.gz | tar xz -C /opt && \ - mv /opt/MacOSX.sdk /opt/MacOSX10.11.sdk && \ + wget -q -O - ${S3_URL}/MacOSX10.13.sdk.tar.gz | tar xz -C /opt && \ + mv /opt/MacOSX.sdk /opt/MacOSX10.13.sdk && \ wget -q -O - ${S3_URL}/MacOSX10.12.sdk.tar.gz | tar xz -C /opt && \ mv /opt/MacOSX.sdk /opt/MacOSX10.12.sdk && \ - ln -s /opt/iPhoneOS9.3.sdk /opt/iPhoneOS.sdk && \ - ln -s /opt/MacOSX10.11.sdk /opt/MacOSX.sdk && \ ln -s /usr/local/bin/llvm-dsymutil /usr/local/bin/dsymutil && \ ln -s /usr/local/bin/clang /usr/local/bin/arm-apple-darwin12-clang && \ ln -s /usr/local/bin/clang /usr/local/bin/x86_64-apple-darwin12-clang && \ @@ -118,7 +118,8 @@ RUN \ # EMSCRIPTEN # -RUN apt-get install -y --no-install-recommends python2.7 && \ +RUN apt-get autoclean && \ + apt-get install -y --no-install-recommends python2.7 && \ ln -s /usr/bin/python2.7 /usr/local/bin/python && \ ln -s /usr/bin/python2.7 /usr/local/bin/python2 @@ -148,6 +149,7 @@ RUN \ # RUN \ + apt-get update && \ apt-get install apt-transport-https # According to some notes, wine 1.8 is needed for Visual Studio 2015, and Ubuntu 14 only has wine 1.4 diff --git a/server/src/main/java/com/defold/extender/ExtenderController.java b/server/src/main/java/com/defold/extender/ExtenderController.java index 824ed25f..3858337e 100644 --- a/server/src/main/java/com/defold/extender/ExtenderController.java +++ b/server/src/main/java/com/defold/extender/ExtenderController.java @@ -117,15 +117,6 @@ public void buildEngine(MultipartHttpServletRequest request, ZipUtils.zip(response.getOutputStream(), outputFiles); gaugeService.submit("job.write", timer.start()); } finally { - // Run top and log result - ProcessExecutor processExecutor = new ProcessExecutor(); - try { - processExecutor.execute("top -b -n 1 -o %MEM"); - LOGGER.info(processExecutor.getOutput()); - } catch (InterruptedException e) { - LOGGER.warn("Failed to run top after build."); - } - // Delete temporary upload directory FileUtils.deleteDirectory(jobDirectory); } diff --git a/server/src/test/java/com/defold/extender/IntegrationTest.java b/server/src/test/java/com/defold/extender/IntegrationTest.java index ac24dc53..6f659fd1 100644 --- a/server/src/test/java/com/defold/extender/IntegrationTest.java +++ b/server/src/test/java/com/defold/extender/IntegrationTest.java @@ -106,15 +106,10 @@ public static Collection data() { DefoldVersion[] versions = { // "a" is a made up sdk where we can more easily test build.yml fixes new DefoldVersion("a", new Version(0, 0, 0), new String[] {"x86_64-osx", "armv7-android", "js-web", "x86_64-win32"} ), - - new DefoldVersion("8e1d5f8a8a0e1734c9e873ec72b56bea53f25d87", new Version(1, 2, 97), new String[] {"x86-osx"}), - new DefoldVersion("735ff76c8b1f93b3126ff223cd234d7ceb5b886d", new Version(1, 2, 98), new String[] {"armv7-android", "armv7-ios", "arm64-ios", "x86-osx", "x86_64-osx"}), - new DefoldVersion("0d7f8b51658bee90cb38f3d651b3ba072394afed", new Version(1, 2, 99), new String[] {"armv7-android", "armv7-ios", "arm64-ios", "x86-osx", "x86_64-osx"}), - new DefoldVersion("1afccdb2cd42ca3bc7612a0496dfa6d434a8ebf9", new Version(1, 2, 100), new String[] {"armv7-android", "armv7-ios", "arm64-ios", "x86-osx", "x86_64-osx"}), - new DefoldVersion("1e53d81a6306962b64381195f081d442d033ead1", new Version(1, 2, 101), new String[] {"armv7-android", "armv7-ios", "arm64-ios", "x86-osx", "x86_64-osx"}), - new DefoldVersion("d530758af74c2800d0898c591cc7188cc4515476", new Version(1, 2, 102), new String[] {"armv7-android", "armv7-ios", "arm64-ios", "x86-osx", "x86_64-osx"}), - new DefoldVersion("d126b0348d27c684d020e0bd43fde0a2771746f0", new Version(1, 2, 103), new String[] {"armv7-android", "armv7-ios", "arm64-ios", "x86-osx", "x86_64-osx"}), new DefoldVersion("2406775912d235d2579cfe723ab4dbcea2ca77ca", new Version(1, 2, 119), new String[] {"armv7-android", "armv7-ios", "arm64-ios", "x86_64-osx", "x86_64-linux"}), + new DefoldVersion("fce7921da858a71876773c75920b74310ca7ac1f", new Version(1, 2, 120), new String[] {"armv7-android", "armv7-ios", "arm64-ios", "x86_64-osx", "x86_64-linux", "x86_64-win32"}), + new DefoldVersion("fce7921da858a71876773c75920b74310ca7ac1f", new Version(1, 2, 121), new String[] {"armv7-android", "armv7-ios", "arm64-ios", "x86_64-osx", "x86_64-linux", "x86_64-win32"}), + new DefoldVersion("fce7921da858a71876773c75920b74310ca7ac1f", new Version(1, 2, 122), new String[] {"armv7-android", "armv7-ios", "arm64-ios", "x86_64-osx", "x86_64-linux", "x86_64-win32"}), // Use test-data/createdebugsdk.sh to package your preferred platform sdk and it ends up in the sdk/debugsdk folder // Then you can write your tests without waiting for the next release @@ -179,55 +174,6 @@ private void clearCache() assertFalse(cachedBuild.exists()); } - @Test - public void buildEngineOLD() throws IOException, ExtenderClientException { - - org.junit.Assume.assumeFalse("Too new sdk - skipping", configuration.version.version.isGreaterThan(1, 2, 100) ); - - clearCache(); - - File cacheDir = new File("build"); - ExtenderClient extenderClient = new ExtenderClient("http://localhost:" + EXTENDER_PORT, cacheDir); - List sourceFiles = Lists.newArrayList( - new FileExtenderResource("test-data/ext/ext.manifest"), - new FileExtenderResource("test-data/ext/src/test_ext.cpp"), - new FileExtenderResource(String.format("test-data/ext/lib/%s/%s", configuration.platform, getLibName(configuration.platform, "alib"))) - ); - File destination = Files.createTempFile("dmengine", ".zip").toFile(); - File log = Files.createTempFile("dmengine", ".log").toFile(); - - String platform = configuration.platform; - String sdkVersion = configuration.version.sha1; - - try { - extenderClient.build( - platform, - sdkVersion, - sourceFiles, - destination, - log - ); - } catch (ExtenderClientException e) { - System.out.println("ERROR LOG:"); - System.out.println(new String(Files.readAllBytes(log.toPath()))); - throw e; - } - - assertTrue("Resulting engine should be of a size greater than zero.", destination.length() > 0); - assertEquals("Log should be of size zero if successful.", 0, log.length()); - - ExtenderClientCache cache = new ExtenderClientCache(cacheDir); - assertTrue(cache.getCachedBuildFile(platform).exists()); - - assertTrue("Resulting engine should be of a size greater than zero.", destination.length() > 0); - assertEquals("Log should be of size zero if successful.", 0, log.length()); - - ZipFile zipFile = new ZipFile(destination); - assertNotEquals(null, zipFile.getEntry( getEngineName(platform) ) ); - - FileUtils.deleteDirectory(new File("build" + File.separator + sdkVersion)); - } - private String getEngineName(String platform) { if (platform.endsWith("android")) { return "libdmengine.so";