*: use a vishvananda/netlink fork by Monogon

This switches Metropolis over to a Monogon-maintained fork of
vishvananda/netlink.

The package was modified to support the 'sample' action in packet
filters. This is required for the upcoming change enabling network
analytics through local packet capture.

Metropolis' dhcp4c had to be modified to match the vishvananda/netlink
version referenced by this change.

Change-Id: I2dd0799a009618f8543904252b85ff63ddd560c7
Reviewed-on: https://review.monogon.dev/c/monogon/+/1109
Tested-by: Jenkins CI
Reviewed-by: Lorenz Brun <lorenz@monogon.tech>
4 files changed
tree: 21a7b7915b25f2ee619de0973720068da9f72072
  1. .github/
  2. build/
  3. cloud/
  4. intellij/
  5. metropolis/
  6. third_party/
  7. tools/
  8. .bazelignore
  9. .bazelproject
  10. .bazelrc
  11. .bazelrc.sandboxroot
  12. .bazelversion
  13. .git-ignore-revs
  14. .gitignore
  15. BUILD
  16. CODING_STANDARDS.md
  17. go.mod
  18. go.sum
  19. LICENSE
  20. README.md
  21. SETUP.md
  22. WORKSPACE
README.md

Monogon Monorepo

This is the main repository containing the source code for the Monogon Platform.

This is pre-release software - take a look, and check back later!

Environment

Our build environment is self-contained and requires only minimal host dependencies:

  • A Linux machine or VM.
  • Bazelisk >= v1.15.0
  • A reasonably recent kernel with user namespaces enabled.
  • Working KVM with access to /dev/kvm (if you want to run tests).

Our docs assume that Bazelisk is available as bazel on your PATH.

Refer to SETUP.md for detailed instructions.

Monogon OS

Run a single node demo cluster

Build CLI and node image:

bazel build //metropolis/cli/dbg //:launch -c dbg

Launch an ephemeral test node:

bazel test //:launch -c dbg --test_output=streamed

Run a kubectl command while the test is running:

bazel-bin/metropolis/cli/dbg/dbg_/dbg kubectl describe node

Test suite

Run full test suite:

bazel test -c dbg //...