يمكن أن تكون عمليات بناء Bazel في مستودعات الأحجام الكبيرة (monorepos) بطيئة ومعقدة. توفر هذه المهارة أنماطاً مجربة للذاكرة المؤقتة عن بُعد، والتنفيذ المتوازي، وقواعد مخصصة لتقليل أوقات البناء بشكل كبير.
下載技能 ZIP
在 Claude 中上傳
前往 設定 → 功能 → 技能 → 上傳技能
開啟並開始使用
測試它
正在使用「bazel-build-optimization」。 ساعدني في إعداد Bazel لمشروع Python مع تبعيات خارجية
預期結果:
إليك تكوين WORKSPACE.bazel أساسي لـ 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()
```
ثم أنشئ ملف BUILD.bazel مع قواعد py_library و py_test.
正在使用「bazel-build-optimization」。 كيف أقوم بتكوين التنفيذ عن بُعد؟
預期結果:
أضف هذا إلى ملف .bazelrc الخاص بك للتنفيذ عن بُعد:
```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
```
نصائح أمنية:
- استخدم TLS لنقاط النهاية عن بُعد
- المصادقة باستخدام OAuth أو الشهادات
- ابدأ بالذاكرة المؤقتة عن بُعد للقراءة فقط قبل تمكين التنفيذ
安全審計
安全Static 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.
品質評分
你能建構什麼
إعداد الذاكرة المؤقتة عن بُعد لأنابيب CI/CD
تكوين Bazel مع الذاكرة المؤقتة عن بُعد لمشاركة عناصر البناء عبر مشغلي CI وتقليل أوقات البناء من ساعات إلى دقائق.
تحسين مستودع أحجام كبير لـ TypeScript
تطبيق أفضل الممارسات لتنظيم ملفات BUILD، وتمكين التنفيذ المتوازي، وتكوين الذاكرة المؤقتة على القرص.
إنشاء قواعد بناء مخصصة لـ Docker
كتابة قاعدة Bazel مخصصة لبناء صور Docker كجزء من رسم البناء مع تتبع مناسب للتبعيات.
試試這些提示
ساعدني في إعداد Bazel لمستودع أحجام كبير جديد. أحتاج إلى تكوين WORKSPACE.bazel مع قواعد لـ JavaScript و Python. ما هي التكوينات الأساسية؟
أريد إعداد ذاكرة مؤقتة عن بُعد لعمليات بناء Bazel الخاصة بنا. نستخدم Google Cloud. أرني تكوين .bazelrc المطلوب وأي اعتبارات أمنية.
أنشئ قاعدة Bazel مخصصة تبني صورة Docker. يجب أن تقبل القاعدة Dockerfile، وصورة أساسية، وملفات طبقات كمدخلات.
بناء Bazel الخاص بنا يستغرق 30 دقيقة. ساعدني في تنميقه باستخدام bazel build --profile وتحديد الإجراءات الأبطأ. ما التحسينات التي يجب تجربتها أولاً؟
最佳實務
- استخدم أهدافاً دقيقة بدلاً من أنماط glob الكبيرة لبناءات تزايديّة أفضل
- فعّل الذاكرة المؤقتة عن بُعد مبكراً - فهي توفر أكبر مكاسب في الأداء
- ثبّت إصدارات التبعيات في WORKSPACE لضمان بناءات قابلة للتكرار
避免
- استخدام glob(['**/*.py']) لـ srcs - يسبب إعادة بناء غير ضرورية
- تخطي إعداد WORKSPACE - يؤدي إلى حل غير متسق للتبعيات
- تجاهل تحذيرات البناء - المشاكل الصغيرة تصبح دَيناً تقنياً