)]}'
{
  "log": [
    {
      "commit": "7a1b10c4eb2a01084298537fae46f60ecf97cb6c",
      "tree": "f65eea8dbd90529aaf9e99e41b7a3517f391849f",
      "parents": [
        "ab0cc82b343ad93736ea4094844839a717190fd8"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@nexantic.com",
        "time": "Tue Feb 11 10:02:21 2020 +0100"
      },
      "committer": {
        "name": "Serge Bazanski",
        "email": "serge@nexantic.com",
        "time": "Tue Feb 11 10:02:21 2020 +0100"
      },
      "message": "Explicitly provide Python toolchain, provide `python` in build container\n\nThis fixes being able to run py_binary targets within the build\ncontainer.\n\nEach py_binary creates a stub that always has the #!/usr/bin/env python\nshebang, and as such we need to have `python` available in the build\ncontainer. The stub then dispatches into the right Python interpreter,\nwhich we now configure explicitely via rules_python\u0027s py_runtime_pair.\n\nTest Plan: nothing breaks, future uses of py_binary (eg D389) will make actual use of this\n\nX-Origin-Diff: phab/D390\nGitOrigin-RevId: 78b6c51f09c720a46fbe2e6cbadb2a97d1161f7b\n"
    },
    {
      "commit": "822341ae63f435519b5329db3a9fe671fc48684c",
      "tree": "9a00fa6f64850c8607975bd8e7279d257c3c6ac6",
      "parents": [
        "731d00ae802712305d2a01ea4a7bbc74227b2f0d"
      ],
      "author": {
        "name": "Leopold Schabel",
        "email": "leo@nexantic.com",
        "time": "Mon Feb 03 21:51:47 2020 +0100"
      },
      "committer": {
        "name": "Leopold Schabel",
        "email": "leo@nexantic.com",
        "time": "Mon Feb 03 21:51:47 2020 +0100"
      },
      "message": "Manually invalidate image cache in CI\n\nOur objective is to ensure that the build always uses the latest\nDockerfile for a given build, while minimizing rebuilds.\n\nA counter is explicit and can be used to intentionally invalidate\nthe image cache, even if the the file\u0027s content did not change.\n\nThe caching performed by `podman build` is not very clever -\nit\u0027s not shared between repositories, and is easily invalidated\nby successive builds with different versions of the Dockerfile.\n\nGarbage collection is not trivial, since there may be multiple\nin-flight revisions with different counters.\n\nRef T506\n\nFixes T616\n\nTest Plan: CI ;)\n\nBug: T616, T506\n\nX-Origin-Diff: phab/D373\nGitOrigin-RevId: 5bfb8cd8b98175d645c904aee8e45402d0c049c7\n"
    },
    {
      "commit": "dcb3a56fe915f2359a5832c685aa2789027ee5fb",
      "tree": "acaa864bedaa306005830dc7d5aa1e3b0562139d",
      "parents": [
        "f8323f1010f4d1714570197f438888d081056846"
      ],
      "author": {
        "name": "Serge Bazanski",
        "email": "serge@nexantic.com",
        "time": "Mon Feb 03 13:44:44 2020 +0100"
      },
      "committer": {
        "name": "Serge Bazanski",
        "email": "serge@nexantic.com",
        "time": "Mon Feb 03 13:44:44 2020 +0100"
      },
      "message": "Remove spurious \u0027@//\u0027 root workspace references\n\nTest Plan: covered by tests\n\nX-Origin-Diff: phab/D364\nGitOrigin-RevId: 4425fa5756468685dfafaf87186bf12f7da455e8\n"
    },
    {
      "commit": "f1d34d328eaf66f8ede61a0ffe30519f43aa73d9",
      "tree": "aa50b5494e92180403e8397087885ef4eeac0ce5",
      "parents": [
        "db6283e3d6425eea168e8dfc56c4f19f358ab64f"
      ],
      "author": {
        "name": "Leopold Schabel",
        "email": "leo@nexantic.com",
        "time": "Tue Jan 07 14:15:44 2020 +0100"
      },
      "committer": {
        "name": "Leopold Schabel",
        "email": "leo@nexantic.com",
        "time": "Tue Jan 07 14:15:44 2020 +0100"
      },
      "message": "Update Bazel, rules_go, gazelle, linux_kernel, musl, and k8s\n\nrules_go updates Go to 1.13.5.\n\nEFI boot patch had to be rebased since a bunch of ifdefs got cleaned up in 5.x\n\nhttps://github.com/torvalds/linux/commit/ac09c5f43cf613939850cc38d7a34ae6556016ba\n\nhttps://github.com/torvalds/linux/commit/82f9ed3a93307089242ff8a5c694e82c8c93f522)\n\nTest Plan: CI\n\nX-Origin-Diff: phab/D304\nGitOrigin-RevId: 8d7711dd2038e76e091a22a1aab865c3593e3889\n"
    },
    {
      "commit": "a4516f9887e43b774e49c22db93cdf289dc9cfb1",
      "tree": "8a0761a3480074b01d5584a1cd5c111a69f76594",
      "parents": [
        "6e8f69c53a2c82f5a760ab2e8152218cc86f3430"
      ],
      "author": {
        "name": "Leopold Schabel",
        "email": "leo@nexantic.com",
        "time": "Wed Dec 04 20:27:05 2019 +0000"
      },
      "committer": {
        "name": "Leopold Schabel",
        "email": "leo@nexantic.com",
        "time": "Wed Dec 04 20:27:05 2019 +0000"
      },
      "message": "Add minimal functionality test for k8s control plane\n\nBasic functionality test that sends the bootstrap RPC call,\nwaits for the k8s control plane to come up and runs a simple\nkubectl command (that is expected to fail).\n\nAdds reflection to the server to make grpc_cli easier to use.\n\nTest Plan:\nRan `:launch` (because we modified its config) and `:test_boot`,\nsaw a nicely booted k8s cluster:\n\n{P90}\n\nX-Origin-Diff: phab/D275\nGitOrigin-RevId: fe01e3f3ed09877aa76c15946664c9d9bdc4751b\n"
    },
    {
      "commit": "383d4bb84b7b5062b859f81db10e3f16bd427739",
      "tree": "9430d87be1ea0716b4075d5d19a358c2e3630383",
      "parents": [
        "68c58755e0a56e1b1c565d80f99056ec4948fbec"
      ],
      "author": {
        "name": "Leopold Schabel",
        "email": "leo@nexantic.com",
        "time": "Thu Nov 14 22:53:58 2019 +0100"
      },
      "committer": {
        "name": "Leopold Schabel",
        "email": "leo@nexantic.com",
        "time": "Thu Nov 14 22:53:58 2019 +0100"
      },
      "message": "Run \"bazel test //...\" in CI\n\nThis will build all buildable targets and test all testable targets.\n\nThe hardcoded Harbormaster rules have been removed in Phabricator.\n\nAdds a simple test for booting Smalltown.\n\nBUILD files that are injected into repositories have been renamed to\nBUILD.repo to ensure that Bazel does not recognize them as local BUILD\nfiles and attempt to build them.\n\nTest Plan: Covered by CI :)\n\nBug: T483\n\nX-Origin-Diff: phab/D262\nGitOrigin-RevId: 3512a5e13430001f4e6f91d21ac503564c8fb085\n"
    },
    {
      "commit": "4b0e5c075a81a7ea251c5c85af1d15c5ab54e962",
      "tree": "e060fc053d6057b2488644aa36b75843fde62280",
      "parents": [
        "a4ea9d03f1fb4248739392615967eaf07842e74b"
      ],
      "author": {
        "name": "Hendrik Hofstadt",
        "email": "hendrik@certus.one",
        "time": "Thu Nov 07 20:21:24 2019 +0100"
      },
      "committer": {
        "name": "Hendrik Hofstadt",
        "email": "hendrik@certus.one",
        "time": "Thu Nov 07 20:21:24 2019 +0100"
      },
      "message": "Add bindata rule\n\nTest Plan: Created a sample rule and packaged files to a go binary\n\nX-Origin-Diff: phab/D252\nGitOrigin-RevId: f80c25518008fded7104fa6945d077a52d928d85\n"
    },
    {
      "commit": "3e6018fcf0645da7876eec06d1604438bea0550e",
      "tree": "6bb2fa6081152d2dc32530a8eaaf0a58c31dc35e",
      "parents": [
        "0d7c91e331022831a974c2e34d32bb5b89ddc89c"
      ],
      "author": {
        "name": "Hendrik Hofstadt",
        "email": "hendrik@certus.one",
        "time": "Mon Oct 28 21:29:42 2019 +0100"
      },
      "committer": {
        "name": "Hendrik Hofstadt",
        "email": "hendrik@certus.one",
        "time": "Mon Oct 28 21:29:42 2019 +0100"
      },
      "message": "Add sqlboiler bazel rules\n\nThis implements a bazel rule to build sqlboiler models from sql migration stacks. It also launches a cockroachdb container in `create_container` and puts it in one pod with the nexantic-dev container.\n\nCurrently gazelle overwrites the `go_library` rule. I still need to find a way to properly exclude it.\n\nTest Plan: Built a sample set of sql models\n\nX-Origin-Diff: phab/D226\nGitOrigin-RevId: ff24f07bb0b3da9994c52a74f48b54e1e2bea726\n"
    },
    {
      "commit": "0d7c91e331022831a974c2e34d32bb5b89ddc89c",
      "tree": "5b822873c015053f4b697d60c33fa3b1ef9a3a4b",
      "parents": [
        "043daa57020dd36e074488dcb432114a548a3d2a"
      ],
      "author": {
        "name": "Hendrik Hofstadt",
        "email": "hendrik@certus.one",
        "time": "Wed Oct 23 21:44:47 2019 +0200"
      },
      "committer": {
        "name": "Hendrik Hofstadt",
        "email": "hendrik@certus.one",
        "time": "Wed Oct 23 21:44:47 2019 +0200"
      },
      "message": "Implement monorepo layout\n\nImplemented the nexantic monorepo.\n\nSmalltown code was moved to `core`. From now on all code will live in top level directories named after the projects with the exception for general purpose libraries which should go to `\u003clang\u003elibs`.\n\nGeneral build and utility folders are underscore prefixed.\n\nThe repo name will from now on be rNXT (nexantic). I think this change makes sense since components in this repo will not all be part of Smalltown, the Smalltown brand has been claimed by Signon GmbH so we need to change it anyway and the longer we wait the harder it will be to change/move it.\n\nTest Plan: Launched Smalltown using `./scripts/bin/bazel run //core/scripts:launch`\n\nX-Origin-Diff: phab/D210\nGitOrigin-RevId: fa5a7f08143d2ead2cb7206b4c63ab641794162c\n"
    },
    {
      "commit": "043daa57020dd36e074488dcb432114a548a3d2a",
      "tree": "2975b607028ca0c085df182afd809d1d322be2b7",
      "parents": [
        "23be9215aae77d2171c31f767c37cf69050fb748"
      ],
      "author": {
        "name": "Leopold Schabel",
        "email": "leo@nexantic.com",
        "time": "Mon Oct 28 11:48:45 2019 +0000"
      },
      "committer": {
        "name": "Leopold Schabel",
        "email": "leo@nexantic.com",
        "time": "Mon Oct 28 11:48:45 2019 +0000"
      },
      "message": "Fix caching and set home to /user\n\nTest Plan: Ran build\n\nX-Origin-Diff: phab/D220\nGitOrigin-RevId: d93c13b9a74c45d717e92151cdb10f0f3484a78b\n"
    },
    {
      "commit": "544440b6c8603ddaa548add84a657c999feeec49",
      "tree": "89eb7ab3920a5b90aab2623cfdd992850dff669b",
      "parents": [
        "2a2081cc8bdb0a04a1c5e4509ce5cb569f3ef110"
      ],
      "author": {
        "name": "Leopold Schabel",
        "email": "leo@nexantic.com",
        "time": "Wed Oct 23 15:47:50 2019 +0200"
      },
      "committer": {
        "name": "Leopold Schabel",
        "email": "leo@nexantic.com",
        "time": "Wed Oct 23 15:47:50 2019 +0200"
      },
      "message": "Fix sandbox build by setting /tmp --syslibdir during musl build\n\nTest Plan: Ran a clean `scripts:launch` build, no longer failed.\n\nX-Origin-Diff: phab/D205\nGitOrigin-RevId: 6edd31d46816414c6b4c51664f23ce9d7c6d603d\n"
    },
    {
      "commit": "5c80acaec733e0b7c43cb0584cdeb7cebc826aa9",
      "tree": "f7db6de47e4ef38599da89dd4f1082c65569ca03",
      "parents": [
        "a71b5a4c36d5cae089666eaad57514c64baf6f24"
      ],
      "author": {
        "name": "Leopold Schabel",
        "email": "leo@nexantic.com",
        "time": "Tue Oct 22 15:48:58 2019 +0200"
      },
      "committer": {
        "name": "Leopold Schabel",
        "email": "leo@nexantic.com",
        "time": "Tue Oct 22 15:48:58 2019 +0200"
      },
      "message": "Replace build system with a Bazel-based one\n\nThis pins our external dependencies and introduces a mostly-hermetic build where all dependencies are explicitly declared and rebuilt if needed.\n\nNecessary prerequite for a proper CI workflow. Since Bazel can cache build artifacts, we can remove the hardcoded binary artifacts from the repo.\n\nAs suggested in our discussions, the genrule that builds mkfs.xfs is basically doing the same as the previous build_artifacts.sh script (see source code comments for rationale).\n\nThe main issue at this point is that the `build/linux_kernel:image` target rebuilds the kernel each time any of its inputs (like cmd/init)\nchange. This is very hard to fix without compromising on hermeticity, porting kbuild to Bazel (no thanks) or injecting the initramfs into the\nkernel image in a separate rule (might just work, but the kernel build rule would either have custom code, or a massive set of outputs).\n\nPerhaps we could use a separate initramfs for development? Or deliberately poke holes into Bazel\u0027s sandbox to reuse kernel build?\n\nTest Plan:\nRun this in a fresh container with empty Bazel cache:\n\n    bazelisk run scripts:launch\n\n... and watch as Bazel rebuilds the world.\n\nX-Origin-Diff: phab/D197\nGitOrigin-RevId: 21eea0e213a50e1c4ad25b2ac2bb87c53e36ea6d\n"
    }
  ]
}
