maybe
maybe(repo_rule, name, kwargs)
Utility function for only adding a repository if it’s not already present.
This is to implement safe repositories.bzl macro documented in https://docs.bazel.build/versions/master/skylark/deploying.html#dependencies.
Parameters
repo_rule |
required.
repository rule function. |
name |
required.
name of the repository to create. |
kwargs |
optional.
remaining arguments that are passed to the repo_rule function. |
patch
patch(ctx)
Implementation of patching an already extracted repository.
This rule is inteded to be used in the implementation function of a
repository rule. It assuumes that the parameters patches, patch_tool,
patch_args, patch_cmds and patch_cmds_win are present in ctx.attr.
Parameters
ctx |
required.
The repository context of the repository rule calling this utility function. |
read_netrc
read_netrc(ctx, filename)
Utility function to parse at least a basic .netrc file.
Parameters
ctx |
required.
The repository context of the repository rule calling this utility function. |
filename |
required.
the name of the .netrc file to read |
update_attrs
update_attrs(orig, keys, override)
Utility function for altering and adding the specified attributes to a particular repository rule invocation.
This is used to make a rule reproducible.
Parameters
orig |
required.
dict of actually set attributes (either explicitly or implicitly) by a particular rule invocation |
keys |
required.
complete set of attributes defined on this rule |
override |
required.
dict of attributes to override or add to orig |
use_netrc
use_netrc(netrc, urls)
compute an auth dict from a parsed netrc file and a list of URLs
Parameters
netrc |
required.
a netrc file already parsed to a dict, e.g., as obtained from read_netrc |
urls |
required.
a list of URLs. |
workspace_and_buildfile
workspace_and_buildfile(ctx)
Utility function for writing WORKSPACE and, if requested, a BUILD file.
This rule is inteded to be used in the implementation function of a
repository rule.
It assumes the parameters name, build_file, build_file_contents,
workspace_file, and workspace_file_content to be
present in ctx.attr, the latter four possibly with value None.
Parameters
ctx |
required.
The repository context of the repository rule calling this utility function. |