Skip to content

Latest commit

 

History

History
55 lines (32 loc) · 1.8 KB

README.md

File metadata and controls

55 lines (32 loc) · 1.8 KB

ECR

Execute, Collect, and Report - a tool set for remote code execution, data collection and reporting

Work in Progress

The idea is to develop a set of networking tools for:

  • preparing jobs which can be simple one-liners or complex scripts
  • sending them to remote machines for execution
  • collecting data and reporting it back

The underlying tech is based on ØMQ, Redis and cJSON.

The code is based on C99 and can be compiled under Windows, macOS and Linux.

msvc_ide

macos_ide

Building

This project uses CMake to generate project files for your preferred build environment.

Create a build folder and enter it: mkdir build && cd build.

Then let CMake generate Makefiles: cmake ..

Build the binaries: make.

For verbose output use make VERBOSE=1.

For a simple showcase of available functions use the binary based on ecrprog.c which is located in build/bin.

Testing

Tests are based on Criterion Testing Framework

Enter directory test and compile the suite with clang -o test_ecr_all test_ecr_all.c -lcriterion -lhiredis (applies to GCC as well)

$ ./test_ecr_all 
[====] Synthesis: Tested: 13 | Passing: 13 | Failing: 0 | Crashing: 0 

Use-Cases

  • Managing server farms via script-execution
  • Automatized reporting
  • Software delivery and updates
  • Health-checks & heartbeats

LICENSE

MIT