Bazel
Fundamentals & Build Optimization
1.
Introduction to Bazel in Enterprise Environments
• Why Bazel for
large-scale C++ monorepos
• Comparison with Make, CMake, and Conan
• Hermetic builds and reproducibility
• Installation and environment setup (Linux & Windows)
2. Core
Concepts of Bazel
• Bazel build
graph and dependency resolution
• BUILD files, targets, and rules
• Overview of C++ rules:
• cc_library
• cc_binary
• cc_test
• Workspace configuration
• External dependency management
• Integrating Conan packages (OSS approach)
Hands-on Lab
4. Build
Execution & Optimization
• bazel build
and bazel test workflows
• Target selection strategies in monorepos
• Incremental builds and dependency tracking
• Parallel execution
• Build profiling and performance analysis
• Optimizing large-scale C++ repositories
5. Remote
Caching & Execution (Conceptual + Demo)
• Remote
caching architecture
• Integration approach with artifact repositories (demo setup)
• Remote execution overview
• Scalability considerations
• Enterprise adoption best practices
6. Hands-on
Lab
Bazel
Integration into Automated CI/CD Workflows
7. CI/CD
Foundations for Bazel
• Role of Bazel
in modern CI/CD architectures
• Challenges of traditional build systems in CI
• Designing hermetic CI pipelines
• Aligning Bazel with Git-based development workflows
8. Bazel
Integration into CI/CD Pipelines
• Integrating
Bazel build and test commands into CI systems
• Managing incremental builds in CI environments
• Configuring remote cache for CI agents
• Handling pull request validations and branch builds
• Artifact generation and release pipeline integration
• Containerized CI build environments
• Multi-platform build considerations
9. Advanced
CI/CD Considerations
• Scaling
builds across distributed environments (conceptual)
• Observability and build metrics
• Dependency governance in CI
• Secure build pipelines and environment isolation
• Troubleshooting CI build failures
10. Best
Practices & Troubleshooting
• Structuring
monorepos for CI efficiency
• Debugging BUILD file issues
• Resolving sandbox and compilation errors
• Versioning and dependency governance strategies
9. Hands-on
Lab
10. ProgNXT
Certificate of Attendance