)]}'
{
  "log": [
    {
      "commit": "ae00468363b0006ecf1ae90ed3833bbe54820df5",
      "tree": "3dff4cdf264bed17e66f7aed2c8085b67738104d",
      "parents": [
        "86a714d6e81bb524dc59fda7baa63b45e7180489"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Tue Apr 18 13:28:48 2023 +0200"
      },
      "committer": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Wed Apr 19 13:55:01 2023 +0000"
      },
      "message": "cloud/shepherd/equinix: implement recoverer\n\nThis implements basic recovery functionality for \u0027stuck\u0027 agents. The\nshepherd will notice machines with a agent that either never sent a\nheartbeat, or stopped sending heartbeats, and will remove their agent\nstarted tags and reboot the machine. Then, the main agent start logic\nshould kick in again.\n\nMore complex recovery flows can be implemented later, this will do for\nnow.\n\nChange-Id: I2c1b0d0465e4e302cdecce950a041581c2dc8548\nReviewed-on: https://review.monogon.dev/c/monogon/+/1560\nTested-by: Jenkins CI\nReviewed-by: Tim Windelschmidt \u003ctim@monogon.tech\u003e\n"
    },
    {
      "commit": "86a714d6e81bb524dc59fda7baa63b45e7180489",
      "tree": "1d1cadea7a23d82d40144e3d9988d31fbe26270f",
      "parents": [
        "42f13465aa2a2b57c2971d20219f15aeb2a21f3e"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Mon Apr 17 15:54:21 2023 +0200"
      },
      "committer": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Wed Apr 19 13:55:01 2023 +0000"
      },
      "message": "cloud/shepherd/equinix: split out control loop logic\n\nThis is in preparation for implementing the recoverer/rebooter inside\nthe shepherd.\n\nIn the future this will likely be split away from from the shepherd and\nend up as a generic bmdb library. But let\u0027s first wait for concrete\nusages outside of the shepherd component.\n\nChange-Id: I69b9a2e913dcefa2c6558e271b6853285c6120b3\nReviewed-on: https://review.monogon.dev/c/monogon/+/1559\nTested-by: Jenkins CI\nReviewed-by: Tim Windelschmidt \u003ctim@monogon.tech\u003e\n"
    },
    {
      "commit": "10b2154450b4e43d2b959137f47bceeaf9c9f1f3",
      "tree": "610ba665e92e7763bf191fcbf7e04eddcfd85d86",
      "parents": [
        "1a38b8accc638a56704899e6e21238379511c5da"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Thu Apr 13 12:12:05 2023 +0200"
      },
      "committer": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Mon Apr 17 09:14:47 2023 +0000"
      },
      "message": "cloud/bmaa/reflection: render known protos as prototext\n\nThis extends the type and value structures of the reflection code to\nsupport arbitrary Protobuf serialized messages. We currently identify\nwhat message type is contained in a column by a hardcoded lookup table.\n\nChange-Id: I31a260b7ed5582678803d27bf6ba30028cbea266\nReviewed-on: https://review.monogon.dev/c/monogon/+/1539\nReviewed-by: Leopold Schabel \u003cleo@monogon.tech\u003e\nTested-by: Jenkins CI\n"
    },
    {
      "commit": "1038313b7a4f929dcd942a3ac24d371877ee8ce7",
      "tree": "7d0233b57288509591d1df4f4d5d3ab3e3ac595e",
      "parents": [
        "48e9bab7237448c7fabfef1721f2ac48e6b77822"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Mon Feb 20 15:39:45 2023 +0100"
      },
      "committer": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Tue Feb 21 09:15:20 2023 +0000"
      },
      "message": "cloud: rename ShepherdInstall to ShepherdAccess and clean up other \u0027installation\u0027 references\n\nShepherdInstall should\u0027ve been called ShepherdAgentStart from the\nbeginning, but got named incorrectly because of a momentary lapse of\nreason.\n\nInstead of doing a rename, we widen that Process to anything that\ninvolved the Shepherds directly accessing the underlying provider\nmachines, be it starting the agent, trying to fix the machine, or\nrebooting a machine. This wide meaning makes sure no two shepherds work\non the same machine ever, regardless of the actual workflow each one is\nperforming.\n\nChange-Id: Ic247919d1bcf1c5ec9fcf7125f17b90413068ed5\nReviewed-on: https://review.monogon.dev/c/monogon/+/1138\nTested-by: Jenkins CI\nReviewed-by: Lorenz Brun \u003clorenz@monogon.tech\u003e\n"
    },
    {
      "commit": "48e9bab7237448c7fabfef1721f2ac48e6b77822",
      "tree": "165b4e9b78acdbbd4ac0521721acfed1f1dad578",
      "parents": [
        "c8fc902aab9fb7a00a4241ebd31df31b00d9a1d1"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Mon Feb 20 15:28:59 2023 +0100"
      },
      "committer": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Tue Feb 21 09:15:14 2023 +0000"
      },
      "message": "cloud/bmdb: add up/down migration test\n\nThis isn\u0027t very exhaustive, but it\u0027s enough to catch migration issues\nwhich we already had.\n\nChange-Id: Ie26b7646bb8b051a613e75cb69a1708f9288a0cc\nReviewed-on: https://review.monogon.dev/c/monogon/+/1137\nTested-by: Jenkins CI\nReviewed-by: Leopold Schabel \u003cleo@monogon.tech\u003e\n"
    },
    {
      "commit": "7762831b4c4d68f77bdc9fbf1f812390d970a4b3",
      "tree": "bc89893327ed28301aaf53cfb31560ba56e39db7",
      "parents": [
        "9e7875c98f78c2ee0419c043211785159e1539de"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Wed Feb 15 23:33:22 2023 +0100"
      },
      "committer": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Mon Feb 20 14:45:38 2023 +0000"
      },
      "message": "cloud/bmaas: implement webug\n\nWebug (pronounced: /wɛbʌɡ/, not /wiːbʌɡ/) is a web debug interface for\nBMDB, inspired by the great web debug interfaces of old.\n\nIt uses the new BMDB reflection API to access most\nmachine/tag/work/backoff information, plus sqlc queries to access\nsession information.\n\nChange-Id: If0e65b6fc33ad92baef9c6d98333f90a02efa1b3\nReviewed-on: https://review.monogon.dev/c/monogon/+/1132\nReviewed-by: Lorenz Brun \u003clorenz@monogon.tech\u003e\nTested-by: Jenkins CI\n"
    },
    {
      "commit": "caa1208a769351f70e55369e908fa3e823f72090",
      "tree": "47f3c8bd9174b3b610e07f0e3b0cd2a62151e1a8",
      "parents": [
        "6a058e7e0c84306cb0470f2641102a284f98fc0b"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Thu Feb 16 14:54:04 2023 +0100"
      },
      "committer": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Mon Feb 20 12:12:19 2023 +0000"
      },
      "message": "cloud/shepherd/equinix/manager: init\n\nThis adds implementation managing Equinix Metal server lifecycle as\npart of the BMaaS project.\n\nCo-authored-by: Mateusz Zalega \u003cmateusz@monogon.tech\u003e\nSupersedes: https://review.monogon.dev/c/monogon/+/990\nChange-Id: I5537b2d07763985ad27aecac544ed19f933d6727\nReviewed-on: https://review.monogon.dev/c/monogon/+/1129\nReviewed-by: Leopold Schabel \u003cleo@monogon.tech\u003e\nReviewed-by: Mateusz Zalega \u003cmateusz@monogon.tech\u003e\nTested-by: Jenkins CI\n"
    },
    {
      "commit": "a9580a7970010d14ccbfe86c22483eeae9b7c05c",
      "tree": "237a68cba739f4cc29b97bacd602412336a2372c",
      "parents": [
        "60a00a9b08b416be8a29a5d2a19f44e3ab3192d5"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Thu Jan 12 14:44:35 2023 +0100"
      },
      "committer": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Mon Jan 23 09:53:32 2023 +0000"
      },
      "message": "c/bmaas/bmdb: implement backoff and history\n\nThis augments the existing Work mechanism with a Fail outcome/method\nwhich allows insertion of a machine \u0026 process backoff until a deadline\nexpires.\n\nWe also add a history/audit table which contains information about the\nwork history of a machine - when some work started, finished, failed or\ngot cancelled.\n\nChange-Id: If890a412977c1d3c7ff3baa69987fb74932818a0\nReviewed-on: https://review.monogon.dev/c/monogon/+/1086\nTested-by: Jenkins CI\nReviewed-by: Leopold Schabel \u003cleo@monogon.tech\u003e\n"
    },
    {
      "commit": "60a00a9b08b416be8a29a5d2a19f44e3ab3192d5",
      "tree": "82c4213a532cd68c6939ebe2b469d0e331443a67",
      "parents": [
        "2aa8b184fcbc713d99bb7c3d868d1ab9df6f5b71"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Tue Jan 03 13:45:20 2023 +0100"
      },
      "committer": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Mon Jan 23 09:53:32 2023 +0000"
      },
      "message": "c/bmaas/bmdb/model: split query files\n\nThis was starting to become slightly unwieldy.\n\nChange-Id: I8f9d63ff6f844f1452fca2a98d253a9582a3ee8d\nReviewed-on: https://review.monogon.dev/c/monogon/+/1085\nTested-by: Jenkins CI\nReviewed-by: Leopold Schabel \u003cleo@monogon.tech\u003e\n"
    },
    {
      "commit": "6c9535b36d033ac647b1cf4fca2a29e8c260a79f",
      "tree": "1ede72b62493211ebda15975d29edcfea83af3f1",
      "parents": [
        "be326c24068009a0f8aa039f1fb5a004fbacae6a"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Tue Jan 03 13:17:42 2023 +0100"
      },
      "committer": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Wed Jan 18 10:09:29 2023 +0000"
      },
      "message": "c/bmaas/bmdb: implement OS installation flow\n\nThis adds two new tags: OSInstallationRequest and\nOSInstallationResponse. It also implements interacting with these tags\nfrom the agent side.\n\nThis doesn\u0027t yet implement any admin/user-facing API to actually request\nOS installation, for now we just exercise this in tests.\n\nChange-Id: I2e31a8369a3a8670bb92bcacfb8231a0d5e1b9fd\nReviewed-on: https://review.monogon.dev/c/monogon/+/1011\nReviewed-by: Lorenz Brun \u003clorenz@monogon.tech\u003e\nTested-by: Jenkins CI\n"
    },
    {
      "commit": "4abeb13b0c1f26148daf14f430de17cd5eacf351",
      "tree": "1e27894c1fa0b93a9345800df370c8e5e2156c17",
      "parents": [
        "f9c65e9e588c44e019d6b8836275493abe298a2e"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Tue Oct 11 11:32:19 2022 +0200"
      },
      "committer": {
        "name": "Sergiusz Bazanski",
        "email": "serge@monogon.tech",
        "time": "Tue Dec 20 11:28:11 2022 +0000"
      },
      "message": "cloud/bmaas/server: init\n\nThis adds the BMaaS server alongside its first functionality: serving an\nAgent heartbeat API.\n\nThis allows (untrusted) Agents to communicate with the rest of the\nsystem by submitting heartbeats which may include a hardware report.\n\nThe BMaaS server will likely grow to implement further functionality as\ndescribed in its README.\n\nChange-Id: I1ede02121b3700079cbb11295525f4c167ee1e7d\nReviewed-on: https://review.monogon.dev/c/monogon/+/988\nReviewed-by: Lorenz Brun \u003clorenz@monogon.tech\u003e\nTested-by: Jenkins CI\n"
    },
    {
      "commit": "68ca370db4bb8314ac7598ce3b9c90194bde47a8",
      "tree": "57cc8b6ad0a1b1a781acb89484ce1f4bb9ab34a4",
      "parents": [
        "0123a1c948100c040c1924e50dc1e05a9cd523a7"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Wed Nov 02 17:30:44 2022 +0100"
      },
      "committer": {
        "name": "Sergiusz Bazanski",
        "email": "serge@monogon.tech",
        "time": "Tue Nov 08 12:59:27 2022 +0000"
      },
      "message": "c/bmaas/bmdb: add Agent{Started,Heartbeat} tags and queries\n\nThis should be the required tags and queries for the first interactions\nwith the Shepherd subsystem.\n\nChange-Id: I8c663803cfd936b11c59bce7db5abc94b99dd1db\nReviewed-on: https://review.monogon.dev/c/monogon/+/962\nTested-by: Jenkins CI\nReviewed-by: Mateusz Zalega \u003cmateusz@monogon.tech\u003e\n"
    },
    {
      "commit": "35e8d79e695b290d371d82dbcc5b15cea429d424",
      "tree": "7bd2a6707cb34b0ae20742f5182df88f1cb2e226",
      "parents": [
        "ee17d8303258980270587755f75dc4b6412e3a31"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Tue Oct 11 11:32:30 2022 +0200"
      },
      "committer": {
        "name": "Sergiusz Bazanski",
        "email": "serge@monogon.tech",
        "time": "Tue Oct 25 13:16:12 2022 +0000"
      },
      "message": "cloud/bmaas/bmdb: init\n\nThis adds the initial Bare Metal Database structure. This change focuses\non a session/work mechanism which is the foundation on which we will\nbuild worker components. It allows lease-like mechanics on machines,\nletting us not have to use \u0027standard\u0027 work queues in the BMaaS project.\n\nChange-Id: I42c3f4384c64fd90dbeab8ff9652a6f611be81d4\nReviewed-on: https://review.monogon.dev/c/monogon/+/953\nTested-by: Jenkins CI\nReviewed-by: Lorenz Brun \u003clorenz@monogon.tech\u003e\n"
    }
  ]
}
