bazel-build-optimization
Optimizar el Rendimiento de Compilación de Bazel
Également disponible depuis: wshobson
Las compilaciones de Bazel en monorepositorios grandes pueden ser lentas y complejas. Esta habilidad proporciona patrones probados para caché remoto, ejecución paralela y reglas personalizadas para reducir drásticamente los tiempos de compilación.
Télécharger le ZIP du skill
Importer dans Claude
Allez dans Paramètres → Capacités → Skills → Importer un skill
Activez et commencez à utiliser
Tester
Utilisation de "bazel-build-optimization". Ayúdame a configurar Bazel para un proyecto de Python con dependencias externas
Résultat attendu:
Aquí hay una configuración básica de WORKSPACE.bazel para Python:
```python
workspace(name = "myproject")
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "rules_python",
sha256 = "...",
strip_prefix = "rules_python-0.27.0",
url = "https://github.com/bazelbuild/rules_python/releases/download/0.27.0/rules_python-0.27.0.tar.gz",
)
load("@rules_python//python:repositories.bzl", "py_repositories")
py_repositories()
```
Luego crea un archivo BUILD.bazel con reglas py_library y py_test.
Utilisation de "bazel-build-optimization". ¿Cómo configuro la ejecución remota?
Résultat attendu:
Agrega esto a tu .bazelrc para ejecución remota:
```bash
build:remote-exec --remote_executor=grpcs://remote.example.com
build:remote-exec --remote_instance_name=projects/myproject/instances/default
build:remote-exec --jobs=500
```
Consejos de seguridad:
- Usa TLS para endpoints remotos
- Autentícate con OAuth o certificados
- Comienza con caché remoto de solo lectura antes de habilitar la ejecución
Audit de sécurité
SûrStatic analysis detected 36 potential issues (external_commands, network, filesystem patterns), but all are false positives. The skill contains documentation and templates for Bazel build optimization with example commands and configuration snippets - no actual executable code with security implications. URLs are legitimate documentation links, filesystem references are standard Bazel cache paths, and cryptographic mentions are SHA256 checksums for download verification.
Score de qualité
Ce que vous pouvez construire
Configurar caché remoto para pipelines de CI/CD
Configura Bazel con caché remoto para compartir artefactos de compilación entre ejecutores de CI y reducir los tiempos de compilación de horas a minutos.
Optimizar un monorepositorio grande de TypeScript
Aplica mejores prácticas para organizar archivos BUILD, habilitar ejecución paralela y configurar caché en disco.
Crear reglas personalizadas para Docker
Escribe una regla personalizada de Bazel para construir imágenes Docker como parte del grafo de compilación con seguimiento adecuado de dependencias.
Essayez ces prompts
Ayúdame a configurar Bazel para un nuevo monorepo. Necesito configurar WORKSPACE.bazel con reglas para JavaScript y Python. ¿Cuáles son las configuraciones esenciales?
Quiero configurar caché remoto para nuestras compilaciones de Bazel. Usamos Google Cloud. Muéstrame la configuración de .bazelrc necesaria y cualquier consideración de seguridad.
Crea una regla personalizada de Bazel que construya una imagen Docker. La regla debe aceptar un Dockerfile, imagen base y archivos de capa como entradas.
Nuestra compilación de Bazel toma 30 minutos. Ayúdame a perfilarla usando bazel build --profile e identificar las acciones más lentas. ¿Qué optimizaciones debería intentar primero?
Bonnes pratiques
- Usa objetivos granulares en lugar de patrones glob grandes para mejores compilaciones incrementales
- Habilita el caché remoto temprano - proporciona las mayores ganancias de rendimiento
- Fija versiones de dependencias en WORKSPACE para asegurar compilaciones reproducibles
Éviter
- Usar glob(['**/*.py']) para srcs - causa recompilaciones innecesarias
- Omitir la configuración de WORKSPACE - conduce a resolución inconsistente de dependencias
- Ignorar advertencias de compilación - los problemas pequeños se convierten en deuda técnica
Foire aux questions
¿Esta habilidad instala Bazel?
¿Puedo usar esto para sistemas de compilación que no sean Bazel?
¿Cuánto tiempo de compilación puedo ahorrar?
¿Es seguro el caché remoto?
¿Puede esto ayudar con la migración a Bazel?
¿Qué lenguajes están soportados?
Détails du développeur
Auteur
sickn33Licence
MIT
Dépôt
https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/bazel-build-optimizationRéf
main
Structure de fichiers
📄 SKILL.md