Skip to content

CodeGushers/nix-bazel-monorepo

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bazel & Nix & Dhall Monorepo example

  • nix for reproducibility and isolated environment
  • bazel for fast incremental rebuilds and module query system
  • dhall for converting and spread configuration to targets, like nix, bazel.

Features & Integration

  • ide integration - bazel does not work pretty well with ide's - there is custom pom generation based on bazel-tools/pom.bzl which generate local deps as well, so from ide perspective all are treated as maven dependencies

Assumptions

  • each module can carry some binary
  • each module can produce docker
  • modules can be referenced locally and autocompletion works from ide perspective
  • fast incremental reproducible & remote builds

Stack

Related articles

Caveats / Limitations

TODO

  • create custom nix script as a dependency of binary file for module (done) with buildInputs (? - has to be defined manually)
  • shell - run bazel -> generate poms (bazel build + symlink)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 61.9%
  • Nix 31.7%
  • Java 2.7%
  • Dhall 2.1%
  • Shell 1.3%
  • Makefile 0.3%