Skip to content

Commit

Permalink
initial commit
Browse files Browse the repository at this point in the history
Signed-off-by: Kevin Hoffman <[email protected]>
  • Loading branch information
autodidaddict committed Nov 3, 2023
0 parents commit 2dd7e72
Show file tree
Hide file tree
Showing 53 changed files with 5,818 additions and 0 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
.task
9 changes: 9 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# NATS Execution Engine
Turn your NATS infrastructure into a distributed workload deployment and execution engine.

* [nex-agent](./nex-agent) - Agent that runs inside a Firecracker VM, responsible for running untrusted workloads. Not something end users need to interact with.
* [nex-node](./nex-node) - Service running on a NEX node. Exposes a control API, starts/tops firecracker processes, communicates within the agent inside each process.
* [control-api](./control-api/) - The API for communicating with and remotely controlling NEX nodes
* [nex-cli](./nex-cli) - CLI for communicating with NEX nodes
* [fc-image](./fc-image/) - Tools for building the rootfs (ext4) file system for use in firecracker VMs
* [agent-api](./agent-api/) - Protobuf API specification for protocol used between `nex-node` and `nex-agent` across the firecracker boundary. Also contains a client for communicating with an agent. This is an internal API unlikely to be of interest to users.
22 changes: 22 additions & 0 deletions Taskfile.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# https://taskfile.dev
# to install `go install github.com/go-task/task/v3/cmd/task@latest`

version: "3"

interval: 200ms

vars:
NAME: "nex"

tasks:
agent-api:
dir: agent-api
sources:
- "*.proto"
generates:
- "*.pb.go"
cmds:
- protoc --proto_path=./ --go_out=./ --go_opt=paths=source_relative --go-grpc_out=./ --go-grpc_opt=paths=source_relative ./*.proto

gen:
deps: [agent-api]
4 changes: 4 additions & 0 deletions agent-api/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Agent API
This is the API used for communication between the agent (process running inside the firecracker VM) and the host (`nex-node`). This API contains operations to subscribe to logs and events, as well as health query and, of course, a function to start and run a workload.

Most of this package is generated from protobufs, but there is also a client that can be used to communicate with `nex-agent`s.
Loading

0 comments on commit 2dd7e72

Please sign in to comment.