public static ShellResult configure()

in bigtop-manager-stack/bigtop-manager-stack-bigtop/src/main/java/org/apache/bigtop/manager/stack/bigtop/v3_3_0/spark/SparkSetup.java [39:106]


    public static ShellResult configure(Params params) {
        log.info("Configuring Spark");
        SparkParams sparkParams = (SparkParams) params;

        String confDir = sparkParams.confDir();
        String sparkUser = sparkParams.user();
        String sparkGroup = sparkParams.group();

        LinuxFileUtils.createDirectories(sparkParams.getSparkLogDir(), sparkUser, sparkGroup, PERMISSION_755, true);
        LinuxFileUtils.createDirectories(sparkParams.getSparkPidDir(), sparkUser, sparkGroup, PERMISSION_755, true);

        String sparkHistoryLogDir = sparkParams.getSparkHistoryLogDir();
        if (sparkHistoryLogDir.startsWith("file:")) {
            String dir = sparkHistoryLogDir.split(":")[1];
            LinuxFileUtils.createDirectories(dir, sparkUser, sparkGroup, PERMISSION_755, true);
        }

        LinuxFileUtils.toFileByTemplate(
                sparkParams.getSparkEnvContent(),
                MessageFormat.format("{0}/spark-env.sh", confDir),
                sparkUser,
                sparkGroup,
                Constants.PERMISSION_755,
                sparkParams.getGlobalParamsMap());

        LinuxFileUtils.toFileByTemplate(
                sparkParams.getSparkDefaultsContent(),
                MessageFormat.format("{0}/spark-defaults.conf", confDir),
                sparkUser,
                sparkGroup,
                Constants.PERMISSION_755,
                sparkParams.getGlobalParamsMap());

        LinuxFileUtils.toFileByTemplate(
                sparkParams.getSparkFairSchedulerContent(),
                MessageFormat.format("{0}/fairscheduler.xml", confDir),
                sparkUser,
                sparkGroup,
                Constants.PERMISSION_755,
                sparkParams.getGlobalParamsMap());

        LinuxFileUtils.toFileByTemplate(
                sparkParams.getSparkLog4j2Content(),
                MessageFormat.format("{0}/log4j2.properties", confDir),
                sparkUser,
                sparkGroup,
                Constants.PERMISSION_755,
                sparkParams.getGlobalParamsMap());

        LinuxFileUtils.toFileByTemplate(
                sparkParams.getSparkMetricsContent(),
                MessageFormat.format("{0}/metrics.properties", confDir),
                sparkUser,
                sparkGroup,
                Constants.PERMISSION_755,
                sparkParams.getGlobalParamsMap());

        LinuxFileUtils.toFile(
                ConfigType.XML,
                MessageFormat.format("{0}/hive-site.xml", confDir),
                sparkUser,
                sparkGroup,
                Constants.PERMISSION_644,
                sparkParams.sparkHiveSite());

        log.info("Successfully configured Spark");
        return ShellResult.success();
    }