)]}'
{
  "commit": "b565cc679cd5af598dc863890a3e1cce98eb1c57",
  "tree": "eddf2b4b5636b0c5086cf8fb874927cdc73659c1",
  "parents": [
    "9104e381ab7a2c90087843de00204eed9ed7cf99"
  ],
  "author": {
    "name": "Serge Bazanski",
    "email": "serge@monogon.tech",
    "time": "Thu Mar 30 18:43:51 2023 +0200"
  },
  "committer": {
    "name": "Serge Bazanski",
    "email": "serge@monogon.tech",
    "time": "Thu Apr 06 14:19:17 2023 +0000"
  },
  "message": "m/n/core/clusternet: grab external IP address prefix from network service\n\nThis moves the logic for merging the node IP and node prefixes from the\nsubmitter of the prefixes into the clusternet logic itself.\n\nThis means clusternet now has two independent sources of prefix data:\nthe network service\u0027s external IP address, and the kubelet\u0027s node\nprefixes.\n\nThis simplifies use in a worker/controller split, where a controller\nnode normally doesn\u0027t submit any prefixes as it\u0027s not running a kubelet\nor kubelet-adjacent prefixes - but we still want it to submit its\nexternal IP address.\n\nChange-Id: I46c9430228ce966426d3a8d33a765ecfdfca0d29\nReviewed-on: https://review.monogon.dev/c/monogon/+/1479\nTested-by: Jenkins CI\nReviewed-by: Lorenz Brun \u003clorenz@monogon.tech\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c577d960a8aae48510d9c58e2d1083447e927ed9",
      "old_mode": 33188,
      "old_path": "metropolis/node/core/clusternet/BUILD.bazel",
      "new_id": "35e69032cbee3ad422910ea602ef115fdf077697",
      "new_mode": 33188,
      "new_path": "metropolis/node/core/clusternet/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "c4b4a8e1a372c4242582ec19d00e5e9e3845adfd",
      "old_mode": 33188,
      "old_path": "metropolis/node/core/clusternet/clusternet.go",
      "new_id": "dc2de00e8a3a2351df260fe75077309fac383724",
      "new_mode": 33188,
      "new_path": "metropolis/node/core/clusternet/clusternet.go"
    },
    {
      "type": "modify",
      "old_id": "0c7050761b0a4636b7db4248513652a98781c78b",
      "old_mode": 33188,
      "old_path": "metropolis/node/core/clusternet/clusternet_test.go",
      "new_id": "509678bcc5eec56b8a160781a453bb10e94f4591",
      "new_mode": 33188,
      "new_path": "metropolis/node/core/clusternet/clusternet_test.go"
    },
    {
      "type": "modify",
      "old_id": "9cd1052a1303ab91c9f6c3ddd300e95a5149f95c",
      "old_mode": 33188,
      "old_path": "metropolis/node/core/clusternet/types.go",
      "new_id": "80adec98479a27ef47a3d5f386b508a2f1df0ce0",
      "new_mode": 33188,
      "new_path": "metropolis/node/core/clusternet/types.go"
    },
    {
      "type": "modify",
      "old_id": "a6650441f4e90f439be6a38e1e0a21ea33a72711",
      "old_mode": 33188,
      "old_path": "metropolis/node/core/roleserve/roleserve.go",
      "new_id": "d2e5bf08024ccf7ba7350c5f77fc6341c337d485",
      "new_mode": 33188,
      "new_path": "metropolis/node/core/roleserve/roleserve.go"
    },
    {
      "type": "modify",
      "old_id": "d80dea1953c95f44f3142a31558857fa665785aa",
      "old_mode": 33188,
      "old_path": "metropolis/node/core/roleserve/worker_clusternet.go",
      "new_id": "7dfeba6b74c02370d9c2f8fbb74bed274044fd58",
      "new_mode": 33188,
      "new_path": "metropolis/node/core/roleserve/worker_clusternet.go"
    },
    {
      "type": "modify",
      "old_id": "f4974eb9719f58b51fba7edddddebf169e61771a",
      "old_mode": 33188,
      "old_path": "metropolis/node/kubernetes/clusternet/clusternet.go",
      "new_id": "7b51c304fb064fe8826ec868820223acf7594c8d",
      "new_mode": 33188,
      "new_path": "metropolis/node/kubernetes/clusternet/clusternet.go"
    },
    {
      "type": "modify",
      "old_id": "5ddc32d2bb1a90bac355aa808b0a3c90cfa65265",
      "old_mode": 33188,
      "old_path": "metropolis/node/kubernetes/service_worker.go",
      "new_id": "2e6e1908a86dafcaa0180417aa2cab207a9c0e59",
      "new_mode": 33188,
      "new_path": "metropolis/node/kubernetes/service_worker.go"
    }
  ]
}
