cmaster11 / qvalet

qValet listens for HTTP requests and executes commands on demand.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

qValet

"Buy Me A Coffee"

qValet listens for HTTP requests and executes commands on demand.

GitHub release (latest SemVer) GitHub all releases

Links:

Feature list

  • Command execution with templatable fields (command, arguments, environment variables, etc…)
  • Some built-in authentication methods
  • Storage for payloads and execution results
  • Trigger conditions to evaluate if a command should be run or not
  • AWS SNS support, to automatically accept subscription requests and receive AWS SNS messages
  • Scheduled tasks, to execute commands in the future
  • And more!

Example

listeners:

  /hello:

    # Returns the output of the command in the response
    return: output

    # Command to run, and list of arguments
    command: bash
    args:
      - -c
      # You can use templates to customize commands/arguments/env vars
      - |
        echo "Hello {{ .name }}"

Tested with:

curl "http://localhost:7055/hello?name=Mr.%20Anderson"

Will return:

{"output":"Hello Mr. Anderson\n"}

About

qValet listens for HTTP requests and executes commands on demand.

License:MIT License


Languages

Language:Go 77.8%Language:JavaScript 13.5%Language:HTML 4.8%Language:Shell 2.8%Language:TypeScript 0.5%Language:Makefile 0.4%Language:Dockerfile 0.2%