I wanted to try to set up a multi-language monorepo using bazel for experimentation purposes. You can follow the journey on YouTube.
- Bazel Tutorial: (Part 1) Getting Started, Bazelisk & our First Build Targets
- Bazel overview.
- Installing & using bazelisk.
WORKSPACE.bazel
,BUILD.bazel
& creating our first build targets.
- Bazel Tutorial: Python targets with py_library, py_test, py_binary (internal & external deps)
- Enabline Visual Studio Code Extension.
- rules_python.
- Creating simple python library without any external dependencies.
py_library
target.py_test
target.
- Flask application.
py_binary
target.- Using third party dependencies.
- Using dependencies from the monorepo.
- Discuss python version, hermetic etc.
- GitHub Actions for Bazel Monorepo - Building & Testing (CI).
- Bazel & Go Tutorial: Targets with go_library, go_test & go_binary (internal & external deps).
- Bazel & NodeJS Tutorial: library, test & nodejs_binary (internal & external deps).
- bazelisk installed (
brew install bazelisk
on mac) - bazel launcher that also manages the bazel installation & version using the .bazelversion file.
bazel build //...
bazel test //...
bazel run //projects/python_web
- http://localhost:5000
bazel run //projects/go_web
- http://localhost:8000
bazel run //projects/node_web
- http://localhost:8080