)]}'
{
  "commit": "cc078df2124306799c66786833746999259ea792",
  "tree": "43807fcfec2196430b4bd4def124dad2231451db",
  "parents": [
    "8c2c771a750f30b3edf240fc8352e777795e989b"
  ],
  "author": {
    "name": "Lorenz Brun",
    "email": "lorenz@monogon.tech",
    "time": "Thu Dec 23 11:51:55 2021 +0100"
  },
  "committer": {
    "name": "Lorenz Brun",
    "email": "lorenz@monogon.tech",
    "time": "Wed Feb 02 14:07:37 2022 +0000"
  },
  "message": "m/n/kubernetes: implement Metropolis authenticating proxy\n\nThis implements an authenticating proxy for K8s which can authenticate\nMetropolis credentials and passes the extracted identity information\nback to the Kubernetes API server. It currently only handles user\nauthentication, machine-to-machine authentication is still done by the\nAPI server itself. It also adds a role binding to allow full access\nto the owner as we do not have an identity system yet.\n\nChange-Id: I02043924bb7ce7a1acdb826dad2d27a4c2008136\nReviewed-on: https://review.monogon.dev/c/monogon/+/509\nReviewed-by: Sergiusz Bazanski \u003cserge@monogon.tech\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a162bccd4b13d19b236254c8a117277c81433cb1",
      "old_mode": 33188,
      "old_path": "metropolis/node/kubernetes/BUILD.bazel",
      "new_id": "2a35c4bb138d7568f2c5f8f0d9e052b917348e8a",
      "new_mode": 33188,
      "new_path": "metropolis/node/kubernetes/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "39105b296b5aeba10625b651f3a5f5d3b655e326",
      "old_mode": 33188,
      "old_path": "metropolis/node/kubernetes/apiserver.go",
      "new_id": "cd4ff60a6666efd3a7b26bfd46db28650fe26b00",
      "new_mode": 33188,
      "new_path": "metropolis/node/kubernetes/apiserver.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "965e8adfa76971b97a0408af07e1d1446943a0a3",
      "new_mode": 33188,
      "new_path": "metropolis/node/kubernetes/authproxy/BUILD.bazel"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "0477b88858aea634f5bbc1c37641ce98d7909ca6",
      "new_mode": 33188,
      "new_path": "metropolis/node/kubernetes/authproxy/authproxy.go"
    },
    {
      "type": "modify",
      "old_id": "0c795f22732676da3fda1081f7ca4fb9a85b9291",
      "old_mode": 33188,
      "old_path": "metropolis/node/kubernetes/pki/kubernetes.go",
      "new_id": "542c614c9161e4a22d227eb590f4977b8e797e45",
      "new_mode": 33188,
      "new_path": "metropolis/node/kubernetes/pki/kubernetes.go"
    },
    {
      "type": "modify",
      "old_id": "15386a6e90bf3ed405bdccc13705a8e45f0d9f20",
      "old_mode": 33188,
      "old_path": "metropolis/node/kubernetes/reconciler/resources_rbac.go",
      "new_id": "0976ba55a67b00986fc5abd3e11e75b1565ff9d8",
      "new_mode": 33188,
      "new_path": "metropolis/node/kubernetes/reconciler/resources_rbac.go"
    },
    {
      "type": "modify",
      "old_id": "1af760755cf03ed0cf9e2370d322652bc27db266",
      "old_mode": 33188,
      "old_path": "metropolis/node/kubernetes/service.go",
      "new_id": "03be33cb26769deee699d5cbca97571b951920db",
      "new_mode": 33188,
      "new_path": "metropolis/node/kubernetes/service.go"
    },
    {
      "type": "modify",
      "old_id": "e7adfb7265deb90a977abaf81d5d6a4126b61e97",
      "old_mode": 33188,
      "old_path": "metropolis/node/ports.go",
      "new_id": "c90e7dc61db31667dbd0bd5882175c7669b2252d",
      "new_mode": 33188,
      "new_path": "metropolis/node/ports.go"
    },
    {
      "type": "modify",
      "old_id": "7f8571f293abfb51a5765eb85d5421227956afe3",
      "old_mode": 33188,
      "old_path": "metropolis/test/e2e/BUILD.bazel",
      "new_id": "6630db80f308857698bd3c9c9369066104c2ae06",
      "new_mode": 33188,
      "new_path": "metropolis/test/e2e/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "46b99b4c4c265006f59474caf52a543f729fc2b9",
      "old_mode": 33188,
      "old_path": "metropolis/test/e2e/k8s_cts/main.go",
      "new_id": "15be332e700325decc039f5973d63ec7d948be6f",
      "new_mode": 33188,
      "new_path": "metropolis/test/e2e/k8s_cts/main.go"
    },
    {
      "type": "modify",
      "old_id": "3c1f95a15e35120217d26320ab3ed7278ce856a8",
      "old_mode": 33188,
      "old_path": "metropolis/test/e2e/kubernetes_helpers.go",
      "new_id": "ec12ca0d1dd644129d71657eeebfe5a8557a0a73",
      "new_mode": 33188,
      "new_path": "metropolis/test/e2e/kubernetes_helpers.go"
    },
    {
      "type": "modify",
      "old_id": "72fa619ee3335c233955b574c6e208150949ed07",
      "old_mode": 33188,
      "old_path": "metropolis/test/e2e/main_test.go",
      "new_id": "201ba92ad18529e9b3a5bb7a5f154b5a13fffb45",
      "new_mode": 33188,
      "new_path": "metropolis/test/e2e/main_test.go"
    },
    {
      "type": "modify",
      "old_id": "5b1f3dc1ec309b0c95c476fd8a6586eb07cb2f89",
      "old_mode": 33188,
      "old_path": "metropolis/test/launch/cluster/cluster.go",
      "new_id": "9b32f977908dd8f9ea65630256a82fd6d16c2281",
      "new_mode": 33188,
      "new_path": "metropolis/test/launch/cluster/cluster.go"
    },
    {
      "type": "modify",
      "old_id": "6d0b6bb2e6be9e03ec87eb0da71a98dab5c779f0",
      "old_mode": 33188,
      "old_path": "metropolis/test/nanoswitch/nanoswitch.go",
      "new_id": "de04a42b77b1f4bc163c7e7c16367b19c8c709e7",
      "new_mode": 33188,
      "new_path": "metropolis/test/nanoswitch/nanoswitch.go"
    }
  ]
}
