| commit | 2531e673d07e7e107711009bc61ba58964e6b292 | [log] [tgz] |
|---|---|---|
| author | Dillon Giacoppo <dillon@canva.com> | Fri Nov 08 16:57:50 2019 +1100 |
| committer | Dillon Giacoppo <dillon@canva.com> | Fri Nov 08 16:57:50 2019 +1100 |
| tree | 25945d3e9ff6df25c709521bcb5dd21c37c5fe1f | |
| parent | 2c6f266349b93e5a26cd3f757861d8fcc0e43c69 [diff] |
restrict generated globbing
Contains Bazel rules to fetch and install Python dependencies from a requirements.txt file.
In requirements.txt
cryptography==2.8 boto3==1.9.253
In WORKSPACE
rules_python_external_version = "37dad8910495ad71bae391db7a843a0f7a3ea902"
git_repository(
name = "rules_python_external",
commit = rules_python_external_version,
remote = "git@github.com:dillon-giacoppo/rules_python_external.git",
shallow_since = "1572846707 +1100",
)
load("@rules_python_external//:defs.bzl", "pip_repository")
pip_repository(
name = "py_deps",
requirements = "//:requirements.txt",
)
In BUILD
py_binary(
name = "main",
srcs = ["main.py"],
deps = [
"@py_deps//boto3",
],
)
N.B package names are sanitized to {package_name}.replace("-", "_").replace(".", "_").lower(). You can use the macro provided in load("@py_deps//:requirements.bzl", "requirement") to automatically transform the name.