项目作者: OdinProAgrica

项目描述 :
HPCC ECL syntax checker for Windows and Linux
高级语言: PowerShell
项目地址: git://github.com/OdinProAgrica/ECLSyntaxChecker.git
创建时间: 2017-02-20T13:38:59Z
项目社区:https://github.com/OdinProAgrica/ECLSyntaxChecker

开源协议:GNU General Public License v3.0

下载


ECLSyntaxChecker

HPCC ECL syntax checker for Windows and Linux.

Description

This script can be useful if you are developing a project in HPCC: https://hpccsystems.com.
It allows you to perform a Syntax Check in all files as ECLIDE can only make syntax check of a single file.
Script makes a Syntax Check on all *.ecl files in a given directory and subdirectories.

Useful in these situations:

  • Windows PowerShell Script: Moving or refactoring files in your project. You can use it in conjunction with ECLIDE.
  • Linux BASH Script: Integrate it as one step of your CI build.

    Check HPCC forum for more info and screenshots: https://hpccsystems.com/bb/viewtopic.php?f=9&t=3913

Windows

This is a powershell script with a .config file:

  • $relativePathToCODEDirectory —> Relative path from script to your ECL code.
  • $relativePathToImportsDirectory —> Relative path from script to base path for ECL IMPORTS.
  • $logfile —> Name of log file (i.e: “EclSyntaxCheck.log”).
  • $ignoreWarnings —> $true will make syntax check to ignore warnings.
  • $excludedDirectories —> Top level directories under $CODEDirectory to be ignored.
  • $eclClientTools —> Path to your HPCC Client Tools. (i.e: “C:\Program Files (x86)\HPCCSystems\5.6.4\clienttools\bin”)

    It requires PowerShell 3.0 and HPCC Client Tools.

    TODO

    • Add parameters to override config file.
    • Improve excluded directories to allow a list of directories at any level.

Linux

This is a BASH script with four parameters:

  • RelativePathToCODEDirectory —> Relative path from script to your ECL code.
  • RrelativePathToImportsDirectory —> Relative path from script to base path for ECL IMPORTS.
  • ExcludedDirectories —> Top level directories under $CODEDirectory to be ignored.
  • IgnoreWarnings —> $true will make syntax check to ignore warnings.

    TODO

    • Resolve “horrible” workaround.
    • Allow to pass log file name as parameter.
    • Allow passing ECL Client Tools as parameter rather than relying in eclcc being in path.