)]}'
{
  "log": [
    {
      "commit": "fbda89eeab18b56d0d9908829532e8c86c5e9e6b",
      "tree": "df7d6823c4315c4d69b21def8f7ad5cbe5b10d55",
      "parents": [
        "00cf57dd411af5f5c9aa21ced2a2d6c67729297c"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Mon Apr 24 17:43:58 2023 +0200"
      },
      "committer": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Tue Apr 25 11:56:50 2023 +0000"
      },
      "message": "cloud: enable prometheus server\n\nThis makes cloud components start a Prometheus server on a separate port\n(:4243 by default) using either gRPC TLS credentials or plain HTTP.\n\nThe Prometheus server currently only export the standard Go/Process\nmetrics that the default Prometheus library exports.\n\nChange-Id: I9f2ae20c34446c0e10a946d4a93251764f5d2fce\nReviewed-on: https://review.monogon.dev/c/monogon/+/1599\nReviewed-by: Leopold Schabel \u003cleo@monogon.tech\u003e\nTested-by: Jenkins CI\n"
    },
    {
      "commit": "9a627617dbcfdd5d998a68bfd8d38597c694af0a",
      "tree": "c0ae1abfed99611bb0f633e63bac05dca47dd8a9",
      "parents": [
        "26c1817e12e9c55f7ab12b7741b16508a004e079"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Mon Apr 24 17:40:18 2023 +0200"
      },
      "committer": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Tue Apr 25 09:45:20 2023 +0000"
      },
      "message": "cloud/lib/component: fix gRPC client cert verification\n\nChange-Id: I5eda3e9e898c25a804ed8570150b6b05777b41e2\nReviewed-on: https://review.monogon.dev/c/monogon/+/1596\nTested-by: Jenkins CI\nReviewed-by: Lorenz Brun \u003clorenz@monogon.tech\u003e\n"
    },
    {
      "commit": "26c1817e12e9c55f7ab12b7741b16508a004e079",
      "tree": "f07ee5eb0ce7aaa3050590ffbc95be9a02b723a4",
      "parents": [
        "9fbe838dd02f301106d7cfcbbfd2a8ef9e458775"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Mon Apr 24 17:40:48 2023 +0200"
      },
      "committer": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Tue Apr 25 09:45:15 2023 +0000"
      },
      "message": "cloud/lib/component: make component devcerts client/server\n\nChange-Id: Ib2329e7788440222e1e5362e0f821ec431479025\nReviewed-on: https://review.monogon.dev/c/monogon/+/1597\nTested-by: Jenkins CI\nReviewed-by: Lorenz Brun \u003clorenz@monogon.tech\u003e\n"
    },
    {
      "commit": "3ea40da4d6642593f7535dc71084b3367c6eb35e",
      "tree": "93e73362243369578733bd3755a8d059dadd7ae3",
      "parents": [
        "20312b40ed4644c64581b4cc8d93a0fc0035fc71"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Wed Apr 19 14:32:37 2023 +0200"
      },
      "committer": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Wed Apr 19 15:42:44 2023 +0000"
      },
      "message": "cloud/bmaas: test and document upgrades across migrations\n\nChange-Id: I1c405b0f2ecc10331b79d02deb8a63f3b148f502\nReviewed-on: https://review.monogon.dev/c/monogon/+/1566\nReviewed-by: Tim Windelschmidt \u003ctim@monogon.tech\u003e\nTested-by: Jenkins CI\n"
    },
    {
      "commit": "2fd37ea54317f23add3b8baa37ce3eaf33253479",
      "tree": "71087f9d9690bc8e47a31edd2688053b87eb2c53",
      "parents": [
        "739f1d2cad73be305c54366a1f593a81c900120e"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Thu Apr 06 14:48:53 2023 +0200"
      },
      "committer": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Thu Apr 06 12:53:31 2023 +0000"
      },
      "message": "cloud/lib/component: don\u0027t fail when there\u0027s no migrations to run\n\nCurrently we always migrate the database schema up on every startup.\nHowever, the go-migrate API returns an error if Up() is called when\neverything is up to date.\n\nChange-Id: I245d3985719c5baee7d483c0cd9dc21c142b49af\nReviewed-on: https://review.monogon.dev/c/monogon/+/1502\nTested-by: Jenkins CI\nReviewed-by: Tim Windelschmidt \u003ctim@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": "e643fd65d3ad308054f064bf0df7f95fc21af4d9",
      "tree": "ac00c6230b05da3f6df1c6d38c52ec6a7e6e5826",
      "parents": [
        "1cf17953163089f6b90d0922bff0994e06c95e29"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Tue Feb 14 00:01:38 2023 +0100"
      },
      "committer": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Thu Feb 16 12:09:02 2023 +0000"
      },
      "message": "c/l/sinbin: init\n\nThis adds a sinbin library, useful for temporarily timing out some\nprocessed elements in-memory. We\u0027ll use this in the Equinix Shepherd\nprovisioner loop to keep note of bad hardware reservations.\n\nChange-Id: If68b2c0856364cde70cee68729cfc0203c5a8446\nReviewed-on: https://review.monogon.dev/c/monogon/+/1127\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": "a5baa87a6ca09502afb077b5fd74f0b374fecaf4",
      "tree": "fbad865ebf68d5244fd5573f573248ab5143b5c1",
      "parents": [
        "9cdec58c06b7eb5b8b532ccf5e6babb060992276"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Thu Sep 15 18:49:35 2022 +0200"
      },
      "committer": {
        "name": "Sergiusz Bazanski",
        "email": "serge@monogon.tech",
        "time": "Fri Sep 16 11:30:15 2022 +0000"
      },
      "message": "cloud/{apigw,lib/component}: add cockroachdb client, sample schema\n\nThis sets up some boilerplate to connect to CockroachDB servers,\nincluding test in-memory servers.\n\nWe also add a first pass apigw user table schema, as the first user of\nthis new functionality. We exercise that, in turn, in a test.\n\nWe also rename component.Configuration to component.ComponentConfig.\nThere\u0027s a stutter in there, but it makes sense with\ncomponent.CockroachConfig alongside.\n\nChange-Id: I76691146b87ce135d60db179b3f51eee16525df7\nReviewed-on: https://review.monogon.dev/c/monogon/+/912\nReviewed-by: Leopold Schabel \u003cleo@monogon.tech\u003e\nVouch-Run-CI: Leopold Schabel \u003cleo@monogon.tech\u003e\nTested-by: Jenkins CI\n"
    },
    {
      "commit": "bee272f2240dd33f9ec74666205349ced91d3f0a",
      "tree": "afffbe99f7d0407ed37cd9c710d1622573b58746",
      "parents": [
        "a9590fe2dcde11eed3b6e8cf1f7ac42a85c9854e"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@monogon.tech",
        "time": "Tue Sep 13 13:52:42 2022 +0200"
      },
      "committer": {
        "name": "Sergiusz Bazanski",
        "email": "serge@monogon.tech",
        "time": "Wed Sep 14 11:45:15 2022 +0000"
      },
      "message": "cloud: init with apigw\n\nThis adds a first component to the cloud project, the apigw (API\nGateway), which listens on a public gRPC-Web socket.\n\nIt\u0027s not truly a gateway - it will actually contain most of the\nIAM/Project logic for the cloud system. A better name should be picked\nlater.\n\nWe implement a minimum internal/public gRPC(-Web) listener and some\nboilerplate for the parts that are gonna pop up again. Notably, we add\nsome automation around generating developer TLS certificates for the\ninternal gRPC listener.\n\nCurrently the apigw serves a single, demo RPC which returns\n\u0027unimplemented\u0027.\n\nChange-Id: I9164ddbd9a20172154ae5a3ffad676de5fe4927d\nReviewed-on: https://review.monogon.dev/c/monogon/+/906\nReviewed-by: Leopold Schabel \u003cleo@monogon.tech\u003e\nTested-by: Jenkins CI\n"
    }
  ]
}
