t/go: add netlink patch for permanent HW address

This adds a patch to the netlink dependency which adds a field
containing the permanent hardware address to the Link struct which
can be used to reliably identify interface hardware addresses even
if they have been changed for operational reasons.

The patch has already been sent upstream at
https://github.com/vishvananda/netlink/pull/850 but has not been
reviewed or accepted.

Change-Id: I9562d32643f5b3a5dcf9f1930b951b75ccc30da1
Reviewed-on: https://review.monogon.dev/c/monogon/+/1228
Tested-by: Leopold Schabel <leo@monogon.tech>
Reviewed-by: Serge Bazanski <serge@monogon.tech>
2 files changed
tree: 98c8dc9875488ba03314ef660406ae70909501c8
  1. .github/
  2. build/
  3. cloud/
  4. go/
  5. intellij/
  6. metropolis/
  7. third_party/
  8. tools/
  9. .bazelignore
  10. .bazelproject
  11. .bazelrc
  12. .bazelrc.sandboxroot
  13. .bazelversion
  14. .git-ignore-revs
  15. .gitignore
  16. BUILD
  17. CODING_STANDARDS.md
  18. go.mod
  19. go.sum
  20. LICENSE
  21. README.md
  22. SETUP.md
  23. 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 //...