builder

package
v0.8.1 Latest Latest
Warning

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

Go to latest
Published: May 13, 2024 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Overview

Package builder implements launchr functionality to build itself.

Package builder implements a plugin to build launchr with plugins.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Execute

func Execute(ctx context.Context, flags *builderInput) error

Execute runs launchr and executes build of launchr.

Types

type BuildOptions

type BuildOptions struct {
	LaunchrVersion *launchr.AppVersion
	Version        string
	CorePkg        UsePluginInfo
	PkgName        string
	ModReplace     map[string]string
	Plugins        []UsePluginInfo
	BuildOutput    string
	Debug          bool
}

BuildOptions stores launchr build parameters.

func (*BuildOptions) Validate

func (opts *BuildOptions) Validate() error

Validate verifies build options.

type Builder

type Builder struct {
	*BuildOptions
	// contains filtered or unexported fields
}

Builder is the orchestrator to fetch dependencies and build launchr.

func NewBuilder

func NewBuilder(opts *BuildOptions) (*Builder, error)

NewBuilder creates build environment.

func (*Builder) Build

func (b *Builder) Build(ctx context.Context) error

Build prepares build environment, generates go files and build the binary.

func (*Builder) Close

func (b *Builder) Close() error

Close does cleanup after build.

type Plugin

type Plugin struct{}

Plugin is a plugin to build launchr application.

func (*Plugin) CobraAddCommands

func (p *Plugin) CobraAddCommands(rootCmd *cobra.Command) error

CobraAddCommands implements launchr.CobraPlugin interface to provide build functionality.

func (*Plugin) PluginInfo

func (p *Plugin) PluginInfo() launchr.PluginInfo

PluginInfo implements launchr.Plugin interface.

type UsePluginInfo

type UsePluginInfo struct {
	Path    string
	Version string
}

UsePluginInfo stores plugin info.

func UsePluginInfoFromString

func UsePluginInfoFromString(s string) UsePluginInfo

UsePluginInfoFromString constructs mod plugin info.

func (UsePluginInfo) String

func (p UsePluginInfo) String() string

Jump to

Keyboard shortcuts

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