build

package
v0.179.0 Latest Latest
Warning

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

Go to latest
Published: Sep 14, 2023 License: Apache-2.0 Imports: 24 Imported by: 0

README

Reusable Mage build tools

This package includes standard mage targets useful in the build.

See: https://magefile.org/magefiles/.

These targets can be used in your plugin project by creating Magefile.go in the root of your project like the following:

//+build mage

package main

import (
	// mage:import
	build "github.com/grafana/grafana-plugin-sdk-go/build"
)

// Default configures the default target.
var Default = build.BuildAll

https://magefile.org/importing/

Documentation

Overview

Package build includes standard mage targets useful when building plugins.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BuildAll

func BuildAll()

BuildAll builds production executables for all supported platforms.

func Clean

func Clean() error

Clean cleans build artifacts, by deleting the dist directory.

func Coverage

func Coverage() error

Coverage runs backend tests and makes a coverage report.

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 Format

func Format() error

Format formats the sources.

func Lint

func Lint() error

Lint audits the source style

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

func Test

func Test() error

Test runs backend tests.

func Watch

func Watch() error

Watch rebuilds the plugin backend when files change.

Types

type BeforeBuildCallback

type BeforeBuildCallback func(cfg Config) (Config, error)

BeforeBuildCallback hooks into the build process

type Build

type Build mg.Namespace

Build is a namespace.

func (Build) Backend

func (Build) Backend() error

Backend build a production build for the current platform

func (Build) Darwin

func (Build) Darwin() error

Darwin builds the back-end plugin for OSX.

func (Build) DarwinARM64

func (Build) DarwinARM64() error

DarwinARM64 builds the back-end plugin for OSX on ARM (M1).

func (Build) Debug

func (Build) Debug() error

Debug builds the debug version for the current platform

func (Build) GenerateManifestFile

func (Build) GenerateManifestFile() error

GenerateManifestFile generates a manifest file for plugin submissions

func (Build) Linux

func (Build) Linux() error

Linux builds the back-end plugin for Linux.

func (Build) LinuxARM

func (Build) LinuxARM() error

LinuxARM builds the back-end plugin for Linux on ARM.

func (Build) LinuxARM64

func (Build) LinuxARM64() error

LinuxARM64 builds the back-end plugin for Linux on ARM64.

func (Build) Windows

func (Build) Windows() error

Windows builds the back-end plugin for Windows.

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
}

Config holds the setup variables required for a build

type E2E

type E2E mg.Namespace

E2E is a namespace.

func (E2E) Append

func (E2E) Append() error

Append starts the E2E proxy in append mode.

func (E2E) Certificate

func (E2E) Certificate() error

Certificate prints the CA certificate to stdout.

func (E2E) Overwrite

func (E2E) Overwrite() error

Overwrite starts the E2E proxy in overwrite mode.

func (E2E) Replay

func (E2E) Replay() error

Replay starts the E2E proxy in replay mode.

type Info

type Info struct {
	Time    int64  `json:"time,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

func GetBuildInfo

func GetBuildInfo() (Info, error)

GetBuildInfo returns the build information that was compiled into the binary using: -X `github.com/ydb-platform/grafana-plugin-sdk-go/build.buildInfoJSON={...}`

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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