bazel

package
v1.202541.2 Latest Latest
Warning

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

Go to latest
Published: Oct 7, 2025 License: Apache-2.0 Imports: 40 Imported by: 0

Documentation

Overview

Package core contains the core Bazelisk logic, as well as abstractions for Bazel repositories.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetAspectVersions

func GetAspectVersions() ([]string, error)

func GetBazelVersions

func GetBazelVersions(bazelFork string) ([]string, error)

func InitializeStartupFlags

func InitializeStartupFlags(args []string) ([]string, []string, error)

Initializes start-up flags from args and returns args without start-up flags

func SeparateBazelFlags

func SeparateBazelFlags(command string, args []string) ([]string, []string, error)

Separates bazel flags from a list of arguments for the given bazel command. Returns bazel flags and other arguments as separate lists.

Types

type Bazel

type Bazel interface {
	WithEnv(env []string) Bazel
	AQuery(expr string, bazelFlags []string) (*analysis.ActionGraphContainer, error)
	BazelDashDashVersion() (string, error)
	GetBazelInstallation() (*BazelInstallation, error)
	BazelFlagsAsProto() ([]byte, error)
	HandleReenteringAspect(streams ioutils.Streams, args []string, aspectLockVersion bool) (bool, error)
	RunCommand(streams ioutils.Streams, wd *string, command ...string) error
	InitializeBazelFlags() error
	IsBazelFlag(command string, flag string) (bool, error)
	Flags() (map[string]*flags.FlagInfo, error)
	AbsPathRelativeToWorkspace(relativePath string) (string, error)
	AddBazelFlags(cmd *cobra.Command) error
	WorkspaceRoot() string
	MakeBazelCommand(ctx context.Context, args []string, streams ioutils.Streams, env []string, wd *string) (*exec.Cmd, error)
}
var NoWorkspaceRoot Bazel = &bazel{}

This is a special case where we run Bazel without a workspace (e.g., version).

var WorkspaceFromWd Bazel = findWorkspace()

func New

func New(workspaceRoot string) Bazel

type BazelInstallation added in v1.202541.2

type BazelInstallation struct {
	Version string
	Path    string
}

BazelInstallation provides a summary of a single install of `bazel`

type Bazelisk

type Bazelisk struct {

	// Set to true in getBazelVersionAndUrl() if this aspect binary is not the user's configured
	// version and should re-enter another aspect binary of a different version
	AspectShouldReenter bool
	// contains filtered or unexported fields
}

func NewBazelisk

func NewBazelisk(workspaceRoot string, allowReenter bool) *Bazelisk

func (*Bazelisk) GetBazelInstallation added in v1.202541.2

func (bazelisk *Bazelisk) GetBazelInstallation(repos *core.Repositories, config config.Config) (*BazelInstallation, error)

GetBazelInstallation provides a mechanism to find the `bazel` binary to execute, as well as its version

func (*Bazelisk) GetBazelVersion added in v1.202541.2

func (bazelisk *Bazelisk) GetBazelVersion(config config.Config) (string, error)

GetBazelVersion returns the Bazel version that should be used. MODIFIED: to use *Bazelisk instance

func (*Bazelisk) Run

func (bazelisk *Bazelisk) Run(args []string, repos *core.Repositories, streams ioutils.Streams, env []string, config bazeliskConfig.Config, wd *string) error

Run runs the main Bazelisk logic for the given arguments and Bazel repositories.

type Output

type Output struct {
	Label    string
	Mnemonic string
	Path     string
}

func ParseOutputs

func ParseOutputs(agc *analysis.ActionGraphContainer) []Output

ParseOutputs reads the proto result of AQuery and extracts the output file paths with their generator mnemonics.

Directories

Path Synopsis
Package mock contains generated files.
Package mock contains generated files.
mock
Package mock contains generated files.
Package mock contains generated files.

Jump to

Keyboard shortcuts

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