Building RR with a custom plugin
Configuration
[roadrunner]
# ref -> reference, tag, commit or branch
ref = "master"
# the debug option is used to build RR with debug symbols to profile it with pprof
[debug]
enabled = true
[github]
[github.token]
token = "${RT_TOKEN}"
# ref -> master, commit or tag
[github.plugins]
# LOGS
appLogger = { ref = "v5.0.2", owner = "roadrunner-server", repository = "app-logger" }
logger = { ref = "v5.0.2", owner = "roadrunner-server", repository = "logger" }
lock = { ref = "v5.0.2", owner = "roadrunner-server", repository = "lock" }
rpc = { ref = "v5.0.2", owner = "roadrunner-server", repository = "rpc" }
# CENTRIFUGE BROADCASTING PLATFORM
centrifuge = { ref = "v5.0.2", owner = "roadrunner-server", repository = "centrifuge" }
# WORKFLOWS ENGINE
temporal = { ref = "v5.1.0", owner = "temporalio", repository = "roadrunner-temporal" }
# METRICS
metrics = { ref = "v5.0.2", owner = "roadrunner-server", repository = "metrics" }
# HTTP + MIDDLEWARE
http = { ref = "v5.0.2", owner = "roadrunner-server", repository = "http" }
gzip = { ref = "v5.0.2", owner = "roadrunner-server", repository = "gzip" }
prometheus = { ref = "v5.0.1", owner = "roadrunner-server", repository = "prometheus" }
headers = { ref = "v5.0.2", owner = "roadrunner-server", repository = "headers" }
static = { ref = "v5.0.1", owner = "roadrunner-server", repository = "static" }
proxy = { ref = "v5.0.2", owner = "roadrunner-server", repository = "proxy_ip_parser" }
send = { ref = "v5.0.1", owner = "roadrunner-server", repository = "send" }
# OpenTelemetry
otel = { ref = "v5.0.1", owner = "roadrunner-server", repository = "otel" }
# SERVER
server = { ref = "v5.0.2", owner = "roadrunner-server", repository = "server" }
# SERVICE aka lightweight systemd
service = { ref = "v5.0.2", owner = "roadrunner-server", repository = "service" }
# JOBS
jobs = { ref = "v5.0.2", owner = "roadrunner-server", repository = "jobs" }
amqp = { ref = "v5.0.2", owner = "roadrunner-server", repository = "amqp" }
sqs = { ref = "v5.0.2", owner = "roadrunner-server", repository = "sqs" }
beanstalk = { ref = "v5.0.2", owner = "roadrunner-server", repository = "beanstalk" }
nats = { ref = "v5.0.2", owner = "roadrunner-server", repository = "nats" }
kafka = { ref = "v5.0.2", owner = "roadrunner-server", repository = "kafka" }
googlepubsub = { ref = "v5.0.2", owner = "roadrunner-server", repository = "google-pub-sub" }
# KV
kv = { ref = "v5.0.2", owner = "roadrunner-server", repository = "kv" }
boltdb = { ref = "v5.0.2", owner = "roadrunner-server", repository = "boltdb" }
memory = { ref = "v5.0.2", owner = "roadrunner-server", repository = "memory" }
redis = { ref = "v5.0.2", owner = "roadrunner-server", repository = "redis" }
memcached = { ref = "v5.0.2", owner = "roadrunner-server", repository = "memcached" }
# FILESERVER (static files)
fileserver = { ref = "v5.0.1", owner = "roadrunner-server", repository = "fileserver" }
# gRPC plugin
grpc = { ref = "v5.0.2", owner = "roadrunner-server", repository = "grpc" }
# HEALTHCHECKS + READINESS CHECKS
status = { ref = "v5.0.2", owner = "roadrunner-server", repository = "status" }
# TCP for the RAW TCP PAYLOADS
tcp = { ref = "v5.0.2", owner = "roadrunner-server", repository = "tcp" }
[gitlab]
[gitlab.token]
# api, read-api, read-repo
token = "${GL_TOKEN}"
[gitlab.endpoint]
endpoint = "https://gitlab.com"
[gitlab.plugins]
# ref -> master, commit or tag
test_plugin_1 = { ref = "main", owner = "rustatian", repository = "36405203" }
test_plugin_2 = { ref = "main", owner = "rustatian", repository = "36405235" }
[log]
level = "info"
mode = "production"Variable
Description
Options
Option
Description
Private repositories
Building
Option
Description
Option
Description
Video tutorials
How to write a plugin
v2023.x.x update
v2023.x.x updateVelox configuration
Third-party and deprecated plugins
Known limitations
Last updated