Documentation ¶
Overview ¶
Package build includes standard mage targets useful when building plugins.
Index ¶
- Variables
- func BuildAll()
- func Clean() error
- func Coverage() error
- func Debugger() error
- func Format() error
- func Lint() error
- func ReloadPlugin() error
- func SetBeforeBuildCallback(cb BeforeBuildCallback) error
- func Test() error
- func Watch() error
- type BeforeBuildCallback
- type Build
- type Config
- type E2E
- type Info
- type InfoGetter
- type InfoGetterFunc
Constants ¶
This section is empty.
Variables ¶
var GetBuildInfo = InfoGetterFunc(func() (Info, error) { v := Info{} if buildInfoJSON == "" { return v, fmt.Errorf("build info was now set when this was compiled") } err := json.Unmarshal([]byte(buildInfoJSON), &v) return v, err })
GetBuildInfo is the default InfoGetter that returns the build information that was compiled into the binary using: -X `github.com/khulnasoft/kengine-plugin-sdk-go/build.buildInfoJSON={...}`
Functions ¶
func Debugger ¶
func Debugger() error
Debugger makes a new debug build, re-launches the plugin and attaches the Delve debugger, in headless mode listening on port 3222.
The plugin process is killed after re-building, in order to make Grafana launch the new version. Once the new version is up, we attach to it with Delve.
func ReloadPlugin ¶
func ReloadPlugin() error
ReloadPlugin - kills any running instances and waits for grafana to reload the plugin
func SetBeforeBuildCallback ¶
func SetBeforeBuildCallback(cb BeforeBuildCallback) error
SetBeforeBuildCallback configures a custom callback
Types ¶
type BeforeBuildCallback ¶
BeforeBuildCallback hooks into the build process
type Build ¶
Build is a namespace.
func (Build) DarwinARM64 ¶
DarwinARM64 builds the back-end plugin for OSX on ARM (M1).
func (Build) GenerateManifestFile ¶
GenerateManifestFile generates a manifest file for plugin submissions
func (Build) LinuxARM64 ¶
LinuxARM64 builds the back-end plugin for Linux on ARM64.
type Config ¶
type Config struct { OS string // GOOS Arch string // GOOS EnableDebug bool CustomVars map[string]string Env map[string]string EnableCGo bool RootPackagePath string OutputBinaryPath string PluginJSONPath string }
Config holds the setup variables required for a build
type E2E ¶
E2E is a namespace.
func (E2E) Certificate ¶
Certificate prints the CA certificate to stdout.
type Info ¶
type Info struct { Time int64 `json:"time,omitempty"` PluginID string `json:"pluginID,omitempty"` Version string `json:"version,omitempty"` Repo string `json:"repo,omitempty"` Branch string `json:"branch,omitempty"` Hash string `json:"hash,omitempty"` Build int64 `json:"build,omitempty"` PR int64 `json:"pr,omitempty"` }
Info See also PluginBuildInfo in https://github.com/grafana/grafana/blob/master/pkg/plugins/models.go
type InfoGetter ¶
InfoGetter is an interface with a method for returning the build info.
type InfoGetterFunc ¶
InfoGetterFunc can be used to adapt ordinary functions into types satisfying the InfoGetter interface .
func (InfoGetterFunc) GetInfo ¶
func (f InfoGetterFunc) GetInfo() (Info, error)