bazel

package
v0.17.4 Latest Latest
Warning

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

Go to latest
Published: Apr 12, 2019 License: Apache-2.0 Imports: 9 Imported by: 0

README

Golang Bazel helper package

This directory contains useful utilities for interacting with Bazel from Go.

Currently the bazel package supports:

  • Getting the path for a runfile in a test.

  • Finding and entering the location of the runfiles of a binary.

Documentation

Overview

Package bazel provides utilities for interacting with the surrounding Bazel environment.

Index

Constants

View Source
const (
	RUNFILES_MANIFEST_FILE = "RUNFILES_MANIFEST_FILE"
	RUNFILES_DIR           = "RUNFILES_DIR"
)
View Source
const TEST_SRCDIR = "TEST_SRCDIR"
View Source
const TEST_TMPDIR = "TEST_TMPDIR"
View Source
const TEST_WORKSPACE = "TEST_WORKSPACE"

Variables

This section is empty.

Functions

func EnterRunfiles added in v0.10.0

func EnterRunfiles(workspace string, pkg string, binary string, cookie string) error

EnterRunfiles locates the directory under which a built binary can find its data dependencies using relative paths, and enters that directory.

"workspace" indicates the name of the current project, "pkg" indicates the relative path to the build package that contains the binary target, "binary" indicates the basename of the binary searched for, and "cookie" indicates an arbitrary data file that we expect to find within the runfiles tree.

func FindBinary added in v0.10.0

func FindBinary(pkg string, binary string) (string, bool)

FindBinary locates the given executable within bazel-bin or the current directory.

"pkg" indicates the relative path to the build package that contains the binary target, and "binary" indicates the basename of the binary searched for.

func NewTmpDir

func NewTmpDir(prefix string) (string, error)

NewTmpDir creates a new temporary directory in TestTmpDir().

func Runfile

func Runfile(path string) (string, error)

Runfile returns an absolute path to the specified file in the runfiles directory of the running target. It searches the current working directory, the runfiles path, and the workspace subdirectory of runfiles. If a runfiles manifest is present, it will be used to resolve files not present in the working directory. Returns an error if the file could not be found, or if an error occurs trying to find the runfiles env.

func RunfilesPath

func RunfilesPath() (string, error)

RunfilesPath return the path to the run files tree for this test. It returns an error if TEST_SRCDIR does not exist.

func SetDefaultTestWorkspace

func SetDefaultTestWorkspace(w string)

SetDefaultTestWorkspace allows you to set a fake value for the environment variable TEST_WORKSPACE if it is not defined. This is useful when running tests on the command line and not through Bazel.

func TestTmpDir

func TestTmpDir() string

TestTmpDir returns the path the Bazel test temp directory. If TEST_TMPDIR is not defined, it returns the OS default temp dir.

func TestWorkspace

func TestWorkspace() (string, error)

TestWorkspace returns the name of the Bazel workspace for this test. If TEST_WORKSPACE is not defined, it returns an error.

Types

This section is empty.

Jump to

Keyboard shortcuts

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