/** * Request localization of the program jar and all other files. */ private Builder.RunnableSetter localizeFiles(Map<String, LocalizeResource> localizeResources, Builder.RuntimeSpecificationAdder builder) { Builder.LocalFileAdder fileAdder; Builder.MoreFile moreFile = null; for (Map.Entry<String, LocalizeResource> entry : localizeResources.entrySet()) { LOG.debug("Localizing file for {}: {} {}", programRunId, entry.getKey(), entry.getValue()); fileAdder = (moreFile == null) ? builder.withLocalFiles() : moreFile; moreFile = fileAdder.add(entry.getKey(), entry.getValue().getURI(), entry.getValue().isArchive()); } return moreFile == null ? builder.noLocalFiles() : moreFile.apply(); }
/** * Request localization of the program jar and all other files. */ private Builder.RunnableSetter localizeFiles(Map<String, LocalizeResource> localizeResources, Builder.RuntimeSpecificationAdder builder) { Builder.LocalFileAdder fileAdder; Builder.MoreFile moreFile = null; for (Map.Entry<String, LocalizeResource> entry : localizeResources.entrySet()) { LOG.debug("Localizing file for {}: {} {}", programRunId, entry.getKey(), entry.getValue()); fileAdder = (moreFile == null) ? builder.withLocalFiles() : moreFile; moreFile = fileAdder.add(entry.getKey(), entry.getValue().getURI(), entry.getValue().isArchive()); } return moreFile == null ? builder.noLocalFiles() : moreFile.apply(); }
/** * Adds localize resources for the given service. */ private Builder.RunnableSetter addResources(String service, Builder.RuntimeSpecificationAdder adder) { Map<String, LocalizeResource> localizeResources = runnableLocalizeResources.get(service); Iterator<Map.Entry<String, LocalizeResource>> iterator = localizeResources.entrySet().iterator(); TwillSpecification.Builder.MoreFile moreFile = null; while (iterator.hasNext()) { Map.Entry<String, LocalizeResource> entry = iterator.next(); if (moreFile == null) { moreFile = adder.withLocalFiles().add(entry.getKey(), entry.getValue().getURI(), entry.getValue().isArchive()); } else { moreFile = moreFile.add(entry.getKey(), entry.getValue().getURI(), entry.getValue().isArchive()); } } return moreFile == null ? adder.noLocalFiles() : moreFile.apply(); }
new org.apache.fluo.cluster.runnable.OracleRunnable(), oracleResources) .withLocalFiles(); RunnableSetter runnableSetter = addConfigFiles(fileAdder).apply(); new org.apache.fluo.cluster.runnable.WorkerRunnable(), workerResources) .withLocalFiles(); runnableSetter = addConfigFiles(fileAdder).apply();
new org.apache.fluo.cluster.runnable.OracleRunnable(), oracleResources) .withLocalFiles(); RunnableSetter runnableSetter = addConfigFiles(fileAdder).apply(); new org.apache.fluo.cluster.runnable.WorkerRunnable(), workerResources) .withLocalFiles(); runnableSetter = addConfigFiles(fileAdder).apply();
return files.apply().withPlacementPolicy() .add(yarnDeploymentPolicy, YARN_RUNNABLE_NAME) .anyOrder().build();
moreRunnable.add(FluoOracleMain.ORACLE_NAME, new FluoOracleMain(), oracleResources) .withLocalFiles(); RunnableSetter runnableSetter = addConfigFiles(fileAdder).apply(); runnableSetter.add(FluoWorkerMain.WORKER_NAME, new FluoWorkerMain(), workerResources) .withLocalFiles(); runnableSetter = addConfigFiles(fileAdder).apply();
@Override public TwillSpecification configure() { return TwillSpecification.Builder.with() .setName(APPLICATION_NAME) .withRunnable() .add(PeriodicNotificationTwillRunnable.TWILL_RUNNABLE_NAME, new PeriodicNotificationTwillRunnable(), ResourceSpecification.Builder.with() .setVirtualCores(2) .setMemory(2, SizeUnit.GIGA) .setInstances(1) .build()) .withLocalFiles() .add(PeriodicNotificationTwillRunnable.CONFIG_FILE_NAME, configFile) .apply() .anyOrder() .build(); }
@Override public TwillSpecification configure() { return TwillSpecification.Builder.with() .setName("ExampleBundedJarApp") .withRunnable() .add("BundledJarRunnable", new BundledJarRunnable()) .withLocalFiles() .add(jarName, jarURI, false) .apply() .anyOrder() .build(); } }
@Override public TwillSpecification configure() { return TwillSpecification.Builder.with() .setName("LocalFileApp") .withRunnable() .add(new LocalFileSocketServer()) .withLocalFiles() .add("header", headerJar, true).apply() .anyOrder() .build(); } }