| |
| |
| <!-- |
| Documentation generated by Skydoc |
| --> |
| <!DOCTYPE html> |
| <html> |
| <head> |
| <meta charset="utf-8"> |
| <meta name="viewport" content="width=device-width initial-scale=1" /> |
| <meta http-equiv="X-UA-Compatible" content="IE=edge"> |
| |
| <title>Import pip requirements into Bazel.</title> |
| |
| <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,500,600,700" type="text/css"> |
| <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons"> |
| <link rel="stylesheet" href="https://code.getmdl.io/1.1.1/material.green-light_blue.min.css"> |
| <script defer src="https://code.getmdl.io/1.1.1/material.min.js"></script> |
| <link rel="stylesheet" href="./main.css"> |
| </head> |
| <body> |
| <div class="mdl-layout mdl-js-layout mdl-layout--fixed-drawer |
| mdl-layout--fixed-header"> |
| <header class="mdl-layout__header"> |
| <div class="mdl-layout__header-row"> |
| <span class="mdl-layout-title">Import pip requirements into Bazel.</span> |
| </div> |
| </header> |
| <div class="mdl-layout__drawer"> |
| <span class="mdl-layout-title">Bazel</span> |
| <nav class="drawer-nav"> |
| <ul class="drawer-nav"> |
| |
| <li><a href="./index.html">Overview</a></li> |
| <li> |
| <a href="./python/python.html">python Rules</a> |
| <ul> |
| </ul> |
| </li> |
| <li><a href="./index.html">Overview</a></li> |
| <li> |
| <a href="./python/pip.html">Import pip requirements into Bazel.</a> |
| <ul> |
| </ul> |
| </li> |
| <li><a href="./index.html">Overview</a></li> |
| <li> |
| <a href="./python/whl.html">Import .whl files into Bazel.</a> |
| <ul> |
| </ul> |
| </li> |
| |
| </ul> |
| </nav> |
| </div> |
| |
| <main class="mdl-layout__content"> |
| <div class="page-content"> |
| <h1>Import pip requirements into Bazel.</h1> |
| |
| <nav class="toc"> |
| <h2>Repository Rules</h2> |
| <ul> |
| <li><a href="#pip_import">pip_import</a></li> |
| </ul> |
| <h2>Macros</h2> |
| <ul> |
| <li><a href="#pip_repositories">pip_repositories</a></li> |
| </ul> |
| </nav> |
| <hr> |
| |
| <h2 id="pip_repositories">pip_repositories</h2> |
| |
| <pre>pip_repositories()</pre> |
| |
| <p>Pull in dependencies needed for pulling in pip dependencies.</p> |
| <p>A placeholder method that will eventually pull in any dependencies |
| needed to install pip dependencies.</p> |
| |
| |
| <hr> |
| |
| <h2 id="pip_import">pip_import</h2> |
| |
| <pre>pip_import(<a href="#pip_import.name">name</a>, <a href="#pip_import.requirements">requirements</a>)</pre> |
| |
| <p>A rule for importing <code>requirements.txt</code> dependencies into Bazel.</p> |
| <p>This rule imports a <code>requirements.txt</code> file and generates a new |
| <code>requirements.bzl</code> file. This is used via the <code>WORKSPACE</code> |
| pattern:</p> |
| <pre><code>pip_import( |
| name = "foo", |
| requirements = ":requirements.txt", |
| ) |
| load("@foo//:requirements.bzl", "pip_install") |
| pip_install() |
| </code></pre><p>You can then reference imported dependencies from your <code>BUILD</code> |
| file with:</p> |
| <pre><code>load("@foo//:requirements.bzl", "package") |
| py_library( |
| name = "bar", |
| ... |
| deps = [ |
| "//my/other:dep", |
| package("futures"), |
| package("mock"), |
| ], |
| ) |
| </code></pre><p>Or alternatively:</p> |
| <pre><code>load("@foo//:requirements.bzl", "all_packages") |
| py_binary( |
| name = "baz", |
| ... |
| deps = [ |
| ":foo", |
| ] + all_packages, |
| ) |
| </code></pre> |
| |
| <h3 id="pip_import_args">Attributes</h3> |
| |
| <table class="params-table"> |
| <colgroup> |
| <col class="col-param" /> |
| <col class="col-description" /> |
| </colgroup> |
| <tbody> |
| <tr id="pip_import.name"> |
| <td><code>name</code></td> |
| <td> |
| <p><code><a href="https://bazel.build/docs/build-ref.html#name">Name</a>; Required</code></p> |
| <p>A unique name for this rule.</p> |
| </td> |
| </tr> |
| <tr id="pip_import.requirements"> |
| <td><code>requirements</code></td> |
| <td> |
| <p><code><a href="https://bazel.build/docs/build-ref.html#labels">Label</a>; Required</code></p> |
| <p>The label of a requirements.txt file.</p> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| |
| |
| </div> |
| |
| <footer class="mdl-mini-footer"> |
| <div class="mdl-mini-footer__left-section"> |
| <div class="mdl-logo">Bazel</div> |
| <ul class="mdl-mini-footer__link-list"> |
| <li><a href="http://bazel.io">Home</a></li> |
| <li><a href="https://github.com/bazelbuild">GitHub</a></li> |
| </ul> |
| </div> |
| </footer> |
| </main> |
| </div> |
| </body> |
| </html> |