Plugins: Add ability to run backend plugins in containers (#110534)
* add client cfg for containers * remove unused code * add field for skip host env for proto client * add docker to Swagger ignore * add to enterprise swagger gen * undo go.mod changes * pass container image * propagate container image field
This commit is contained in:
@@ -4,7 +4,7 @@ import (
|
||||
"context"
|
||||
"errors"
|
||||
|
||||
trace "go.opentelemetry.io/otel/trace"
|
||||
"go.opentelemetry.io/otel/trace"
|
||||
"google.golang.org/grpc"
|
||||
|
||||
"github.com/grafana/grafana-plugin-sdk-go/genproto/pluginv2"
|
||||
@@ -44,12 +44,19 @@ type protoClient struct {
|
||||
}
|
||||
|
||||
type ProtoClientOpts struct {
|
||||
PluginJSON plugins.JSONData
|
||||
ExecutablePath string
|
||||
ExecutableArgs []string
|
||||
Env []string
|
||||
Logger log.Logger
|
||||
Tracer trace.Tracer
|
||||
PluginJSON plugins.JSONData
|
||||
ExecutablePath string
|
||||
ExecutableArgs []string
|
||||
Env []string
|
||||
ContainerMode ContainerModeOpts
|
||||
SkipHostEnvVars bool
|
||||
Logger log.Logger
|
||||
Tracer trace.Tracer
|
||||
}
|
||||
|
||||
type ContainerModeOpts struct {
|
||||
Enabled bool
|
||||
Image string
|
||||
}
|
||||
|
||||
func NewProtoClient(opts ProtoClientOpts) (ProtoClient, error) {
|
||||
@@ -60,6 +67,11 @@ func NewProtoClient(opts ProtoClientOpts) (ProtoClient, error) {
|
||||
executablePath: opts.ExecutablePath,
|
||||
executableArgs: opts.ExecutableArgs,
|
||||
versionedPlugins: pluginSet,
|
||||
containerMode: containerModeOpts{
|
||||
enabled: opts.ContainerMode.Enabled,
|
||||
image: opts.ContainerMode.Image,
|
||||
},
|
||||
skipHostEnvVars: opts.SkipHostEnvVars,
|
||||
},
|
||||
opts.Logger,
|
||||
opts.Tracer,
|
||||
|
||||
Reference in New Issue
Block a user