velox

package module
v1.0.0-beta.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 23, 2022 License: MIT Imports: 2 Imported by: 0

README

velox

Replacement for the roadrunner-binary. Automated build system for the RR and roadrunner-plugins.

  1. Installation:
go install github.com/roadrunner-server/velox/vx@v1.0.0-beta.2

Or download velox binary from the releases page and unpack to your PATH.

  1. Configuration sample: (filename - plugins.toml)
[velox]
build_args = ['-trimpath', '-ldflags', '-s -X github.com/roadrunner-server/roadrunner/v2/internal/meta.version=v2.10.1 -X github.com/roadrunner-server/roadrunner/v2/internal/meta.buildTime=10:00:00']

[roadrunner]
ref = "v2.10.1"

[github]
    [github.token]
    token = "token"

    [github.plugins]
    # ref -> master, commit or tag
    logger = { ref = "master", owner = "roadrunner-server", repository = "logger" }
    temporal = { ref = "master", owner = "temporalio", repository = "roadrunner-temporal" }
    metrics = { ref = "master", owner = "roadrunner-server", repository = "metrics" }
    cache = { ref = "master", owner = "roadrunner-server", repository = "cache" }
    reload = { ref = "master", owner = "roadrunner-server", repository = "reload" }
    otel = { ref = "master", owner = "roadrunner-server", repository = "otel" }
    server = { ref = "master", owner = "roadrunner-server", repository = "server" }
    service = { ref = "master", owner = "roadrunner-server", repository = "service" }
    amqp = { ref = "master", owner = "roadrunner-server", repository = "amqp" }
    beanstalk = { ref = "master", owner = "roadrunner-server", repository = "beanstalk" }
    boltdb = { ref = "master", owner = "roadrunner-server", repository = "boltdb" }
    broadcast = { ref = "master", owner = "roadrunner-server", repository = "broadcast" }
    fileserver = { ref = "master", owner = "roadrunner-server", repository = "fileserver" }
    grpc = { ref = "master", owner = "roadrunner-server", repository = "grpc" }
    gzip = { ref = "master", owner = "roadrunner-server", repository = "gzip" }
    headers = { ref = "master", owner = "roadrunner-server", repository = "headers" }
    http = { ref = "master", owner = "roadrunner-server", repository = "http" }
    jobs = { ref = "master", owner = "roadrunner-server", repository = "jobs" }
    memory = { ref = "master", owner = "roadrunner-server", repository = "memory" }
    nats = { ref = "master", owner = "roadrunner-server", repository = "nats" }
    new_relic = { ref = "master", owner = "roadrunner-server", repository = "new_relic" }
    prometheus = { ref = "master", owner = "roadrunner-server", repository = "prometheus" }
    redis = { ref = "master", owner = "roadrunner-server", repository = "redis" }
    sqs = { ref = "master", owner = "roadrunner-server", repository = "sqs" }
    static = { ref = "master", owner = "roadrunner-server", repository = "static" }
    status = { ref = "master", owner = "roadrunner-server", repository = "status" }
    kv = { ref = "master", owner = "roadrunner-server", repository = "kv" }
    memcached = { ref = "master", owner = "roadrunner-server", repository = "memcached" }
    tcp = { ref = "master", owner = "roadrunner-server", repository = "tcp" }

[gitlab]
    [gitlab.token]
    # api, read-api, read-repo
    token = "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 = "debug"
mode = "development"
  1. Usage:
vx build -c plugins.toml -o ~/Downloads

Where:

  • -c - path to the configuration
  • -o - path where to put the RR binary

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CodeHosting

type CodeHosting struct {
	BaseURL *Endpoint                `mapstructure:"endpoint"`
	Token   *Token                   `mapstructure:"token"`
	Plugins map[string]*PluginConfig `mapstructure:"plugins"`
}

type Config

type Config struct {
	Velox map[string][]string `mapstructure:"velox"`

	// Version
	Roadrunner map[string]string `mapstructure:"roadrunner"`

	// GitHub configuration
	GitHub *CodeHosting `mapstructure:"github"`

	// GitLab configuration
	GitLab *CodeHosting `mapstructure:"gitlab"`

	// Log contains log configuration
	Log map[string]string `mapstructure:"log"`
}

func (*Config) Validate

func (c *Config) Validate() error

type Endpoint

type Endpoint struct {
	BaseURL string `mapstructure:"endpoint"`
}

type PluginConfig

type PluginConfig struct {
	Ref        string   `mapstructure:"ref"`
	Owner      string   `mapstructure:"owner"`
	Repo       string   `mapstructure:"repository"`
	Replace    string   `mapstructure:"replace"`
	BuildFlags []string `mapstructure:"build-flags"`
}

type Token

type Token struct {
	Token string `mapstructure:"token"`
}

Directories

Path Synopsis
internal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL