El ecosistema de Bazel tiene un conjunto de reglas en constante crecimiento y evolución para admitir lenguajes y paquetes populares. Gran parte de la potencia de Bazel proviene de la capacidad de definir reglas nuevas que pueden usar otros.
En esta página, se describen las reglas de Bazel recomendadas, nativas y no nativas.
Reglas recomendadas
A continuación, se incluye una selección de reglas recomendadas:
- Android
- C / C++
- Docker/OCI
- Go
- Haskell
- Java
- JavaScript / NodeJS
- Administración de dependencias de Maven
- Objective‑C
- Compilación de paquetes
- Búferes de protocolo
- Python
- Rust
- Scala
- Shell
- Webtesting (Webdriver)
El repositorio Skylib contiene funciones adicionales que pueden ser útiles cuando se escriben reglas y macros nuevas.
Las reglas anteriores se revisaron y cumplen con nuestros requisitos para las reglas recomendadas. Comunícate con los encargados de mantener los respectivos conjuntos de reglas para informar problemas y solicitar funciones.
Para encontrar más reglas de Bazel, usa un motor de búsqueda, consulta awesomebazel.com o busca en GitHub.
Reglas nativas que no se aplican a un lenguaje de programación específico
Las reglas nativas se incluyen en el binario de Bazel y siempre están disponibles en los archivos BUILD sin una instrucción load
.
- Acciones adicionales
- General
- Plataforma
- Workspace
Reglas no nativas incorporadas
Bazel también incorpora reglas adicionales escritas en Starlark. Se pueden cargar desde el repositorio externo integrado de @bazel_tools
.
- Reglas del repositorio