)]}'
{
  "log": [
    {
      "commit": "b33b2a93a0a2e51d94ebc844b81686e8ab2e3c64",
      "tree": "f7e3a9e47a8ece4356502a1775b6ec1e922fe36b",
      "parents": [
        "7f293f399a6b0e4310b3a0cd229cfaaa355bc3d1"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Fri Jun 13 18:42:45 2025 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Tue Jun 24 12:10:27 2025 +0400"
      },
      "message": "AppRunner: Include ssh client and keygen tools\n\nChange-Id: I4ef99076df3dbf7bfeb62b60c1980c308f925e11\n"
    },
    {
      "commit": "e65d9a934c8d6bab4d16358132f73f8396041e97",
      "tree": "3e220983f618fd40162f0b6ec7db964951b065ee",
      "parents": [
        "9b7421ac7ad75ad949e32d1606afcd685443ef8c"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu Jun 19 09:02:32 2025 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Fri Jun 20 07:21:12 2025 +0400"
      },
      "message": "dodo: Support Sketch agent\n\nChange-Id: I4dcd6aab7d7a2c2e86aaf1ad8d36d30a649ab31d\n"
    },
    {
      "commit": "4bfed00a3f4078c8d85eab8fe9d956cef6a58503",
      "tree": "49aa035fa615bc5c53c1d168bd3829480c8d9777",
      "parents": [
        "918780d890086f65cf6a2c6bded71a26ce76cf96"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu May 22 13:23:22 2025 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu May 22 13:23:41 2025 +0400"
      },
      "message": "AppRunner: Log actions\n\nChange-Id: I085f760bc81e610ac0d94d6764403e27a21ada00\n"
    },
    {
      "commit": "9635ccbce34ce2e5a83168e8e0e0e77e4d79089a",
      "tree": "99ab8a17bad61956b76ec2a042a5003205517011",
      "parents": [
        "16bb63869b3221add2afcc9a124b16170b82a837"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu May 22 08:33:38 2025 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu May 22 08:33:38 2025 +0400"
      },
      "message": "AppRunner: Include commit message in the status\n\nChange-Id: I1c9101df71e004888b0fc38cbc351d77fbcc70bd\n"
    },
    {
      "commit": "5155c1a018373a76319f1a15f5fb18232b6c9ca6",
      "tree": "a0b68d445bbdc9054361e3a557d17592f348f108",
      "parents": [
        "a1efbadf3c50d5d1e6615cf018e57d48c0e01d2b"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Wed May 21 15:36:21 2025 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Wed May 21 15:36:21 2025 +0400"
      },
      "message": "AppRunner: Reports detailed status\n\nStatus includes: commit hash, running commands and logs\n\nChange-Id: I5f28f69710b30508bb3296a22fc97b9ad7553844\n"
    },
    {
      "commit": "ec744fab02aea72142ad3f17b38c68957039e437",
      "tree": "532df83dcbb820050067488a71c58f17e5a3a9c6",
      "parents": [
        "a3cc4bf0cf6547328774cda51a81dfb5e23d13ce"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Tue May 20 12:47:03 2025 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Tue May 20 12:47:27 2025 +0400"
      },
      "message": "AppRunner: Support Nodejs 24.0.2\n\nChange-Id: I37659d91d8211d5cfb4240a885da5a51ef43774a\n"
    },
    {
      "commit": "451d40de49ab60f492e797d835934541f6fcba86",
      "tree": "2b44dad25461114f6849067cd64257641d89008a",
      "parents": [
        "bd37a2ba4b803524f80e07394666c046f86a8cd4"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu May 15 13:13:41 2025 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu May 15 13:28:11 2025 +0400"
      },
      "message": "DodoApp: Merge dev enabled/disabled images and charts\n\nChange-Id: Idf5b10640e32848fa31ce726dd8e0cf7bed033be\n"
    },
    {
      "commit": "b1d3bd7a965316f19df79af9abc6f09c0a5cf682",
      "tree": "2533c13270c441bd6e6f018db58fdd5f75e38ff4",
      "parents": [
        "3ed59599dde16dd593805dd41192efb7e9591d36"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu May 15 07:20:06 2025 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu May 15 09:20:19 2025 +0400"
      },
      "message": "DodoApp: VM optionally takes ssh key as an input\n\nChange-Id: I1557dff32a622762c42fa7947723caa5d810d1ed\n"
    },
    {
      "commit": "b87415ce8478284b94e9dbe501b3b8d6fd2c9932",
      "tree": "8beb95686a122de5cdcf51eb72a1d93082e44bfa",
      "parents": [
        "7d81370d1949b9ffaf0b868c9c7a5b149e3f1436"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu May 08 22:32:11 2025 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Sat May 10 11:36:41 2025 +0400"
      },
      "message": "AppRunner: Ping manager periodically\n\nChange-Id: I58d79400acae5fdcd2c0a2bdae234c6303770cbc\n"
    },
    {
      "commit": "bcd25e9ea44bd300e36f7fd6ed1b52ce0a46380d",
      "tree": "7cc8d741a23205fc7ee2fdbe35befcffa5c847b5",
      "parents": [
        "d2d2df05c004c448ff62021ad2ea184b4987c871"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Sat May 03 19:14:10 2025 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Sat May 03 20:06:29 2025 +0400"
      },
      "message": "DodoApp: Run commands using `/bin/sh -c ...`\n\nChange-Id: I58b4943c7819649f7589dfc7f9488e6abaf6f65c\n"
    },
    {
      "commit": "cbbcf05490a30ad6ba46b5026a1a0891eca7fc4f",
      "tree": "3bb9bbbd23100131e2e57bdf5796de5745a40902",
      "parents": [
        "a421b06990b7c323b4ef5fe84f7415a4fab820de"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Tue Apr 22 16:49:44 2025 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Tue Apr 22 16:49:44 2025 +0400"
      },
      "message": "DodoApp: Add Deno 2.2.0 support\n\nChange-Id: I3e683cda2dd18e9a3dce87b8eb1f65ea11dd5f14\n"
    },
    {
      "commit": "a421b06990b7c323b4ef5fe84f7415a4fab820de",
      "tree": "097fc6c5fe420a2a0c0d48c9d9e341a4d1cdde69",
      "parents": [
        "24128f3c1fe47c5892f9e74fabd8ef1816c03f5c"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Mon Apr 21 09:45:04 2025 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Mon Apr 21 09:59:29 2025 +0400"
      },
      "message": "AppManager: Unify regular and dodo app installation logic\n\nChange-Id: I4c18bbebc6499e8dfe38eb8ac18536bc6017f673\n"
    },
    {
      "commit": "c555e0a1dfc50d079e8dc128a1804289c779563c",
      "tree": "8a1ab0e0acf7f8f637df389cf438ae660c1dfaa2",
      "parents": [
        "be9ce3f10a66c70ffbe8156e69efb1a8e5edca00"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu Apr 17 11:03:45 2025 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu Apr 17 16:44:05 2025 +0400"
      },
      "message": "DodoApp: Deprecate managerAddr and appId optional\n\nFix dev VM ingress.\n\nChange-Id: If1242eca53dd5919c632a543434b7e329f2e0409\n"
    },
    {
      "commit": "2446de060590098b8e00a49d758553a7433d065b",
      "tree": "91d6d16adc3c92ad49e5c0fa99fe62f4c63552ba",
      "parents": [
        "d78896a1f93805c7f699d2f0cfaae68e6abeb6c0"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Fri Apr 11 11:20:39 2025 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Fri Apr 11 12:58:40 2025 +0400"
      },
      "message": "Build: Fix multi-arch docker builds\n\nChange-Id: I3968065215b696256ee819e2062ab1d3cadfcbcf\n"
    },
    {
      "commit": "fc441e3383e3c6cf323c4646d2ca7eabff73ac03",
      "tree": "913b6683a6e3e6bde590d5ce75669a9c33479a3f",
      "parents": [
        "5f2f100451baee800b04a0871f6c268ed0dc7daa"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Mon Nov 11 16:26:14 2024 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Wed Apr 02 15:26:40 2025 +0400"
      },
      "message": "AppManager: Add API endpoint to install dodo app\n\nRefactors cue definitions.\n\nNext steps:\n* Needs some cleanup, namespace is hard coded ...\n* Maybe merge with regular install API\n* Support exposing ports across clusters\n\nChange-Id: Ibfc3c3f742b61f2c5874012fe6c77b958eae81d9\n"
    },
    {
      "commit": "138a06e6e599483af7a50dcc653f57187e716872",
      "tree": "83ce61f82543cce56bb948fe407e21fb8b714d8d",
      "parents": [
        "8fae028921963255ee7b7132256b035ba2767217"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Fri Nov 01 17:03:10 2024 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Fri Nov 01 17:03:10 2024 +0400"
      },
      "message": "DodoApp: Support NodeJS backend\n\nChange-Id: Ia8d407d009e4d690febfbf4f1270f3baa2d3e781\n"
    },
    {
      "commit": "45c31828e2655b6bb8f2c7fcca87f61437a1c913",
      "tree": "ed2eb8021c0adf99fffc6c281582f696ee3e66a6",
      "parents": [
        "2b1157aedb2cbd8c20304af7e175f3e2b321680e"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu Oct 24 10:58:02 2024 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu Oct 24 10:59:37 2024 +0400"
      },
      "message": "AppRunner: Build next version in the background to reduce downtime\n\nNext step would be to make this point of transition configurable.\n\nChange-Id: Ibf6504a02b2d1c376e70e944e1aaada0f2dea589\n"
    },
    {
      "commit": "2b1157aedb2cbd8c20304af7e175f3e2b321680e",
      "tree": "4f27fd45cc06ed6ceb3059a02df815b6915117ee",
      "parents": [
        "51abcffce3f4ef6a18ad6a16a60acd634354b526"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu Oct 24 08:45:07 2024 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu Oct 24 08:45:07 2024 +0400"
      },
      "message": "AppRunner: Clone specific branch instead of always running master\n\nChange-Id: I262d232f5fa1648474eb8bb55ce13f986507b0d4\n"
    },
    {
      "commit": "51abcffce3f4ef6a18ad6a16a60acd634354b526",
      "tree": "96f6d41f99a8890003d3e868965adbb34f875ee3",
      "parents": [
        "6e1f4571b795d600d6202fe38a20a014b34a87a8"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu Oct 24 08:37:25 2024 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu Oct 24 08:37:25 2024 +0400"
      },
      "message": "AppRunner: Fix process restart\n\nWait will always return an error as we just killed the process\n\nChange-Id: I329b25811a3c7502d7e3ebe964acbe14ae14d1dc\n"
    },
    {
      "commit": "ff0ee0f02dfac596bbcdbe734605fa4f34f31a76",
      "tree": "0fa6f0a7a81ba33f066041a9c162ea0604c5f313",
      "parents": [
        "ad9e7151cc7a50467ab8e62387c5e8119dd266c9"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Tue Oct 15 23:11:54 2024 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Wed Oct 16 07:36:54 2024 +0400"
      },
      "message": "AppRunner: Kill all subprocesses when reloading new version\n\nChange-Id: Ie708f64a0c564b35b189d16823fedb0669506da4\n"
    },
    {
      "commit": "5e4d1a7338df6d6442872a7750ba77228d77ae33",
      "tree": "5194942c8130f3915cf1b148c9ee1a2020dd6926",
      "parents": [
        "599462867d6911b6c444ada907df578757317d96"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Wed Oct 09 15:25:29 2024 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Wed Oct 09 15:25:29 2024 +0400"
      },
      "message": "DodoApp: Add Nextjs with Deno2 support\n\nChange-Id: Ia8e029c626e2a58c3e1b2836497c4f17eaf0f352\n"
    },
    {
      "commit": "7fbd4ad2920fa3ac2923bffb3f30c2bd2dd1a846",
      "tree": "14fb607a7a45e142ea90e58751c4b7825e2a7e59",
      "parents": [
        "dd32bbcf11ff3be729efe7bcc9902761858e2b00"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Tue Aug 27 10:06:39 2024 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Wed Sep 04 13:50:35 2024 +0400"
      },
      "message": "DodoApp: Support dev virtual machines\n\nChange-Id: Ib7641adb5be477bdde7cd9a06df4b45aa65a1c01\n"
    },
    {
      "commit": "183e8345c36c345ec65872050015265f9fe6d117",
      "tree": "000ef7f39ac0a6c55f8e2df25c35820992327d17",
      "parents": [
        "71ffe88416b8c7a97d9b8efb80e3e0ee1c4977e6"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Tue Aug 20 06:01:24 2024 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Tue Aug 20 14:43:18 2024 +0400"
      },
      "message": "DodoApp: Logs\n\nChange-Id: Idb429c417b639b53352642d1d59a6b29622d499f\n"
    },
    {
      "commit": "b54db2456380b3f4070d789a8bf1cb82b226dad9",
      "tree": "64c7f31d0c1b31c92d81e0523355598a8d1714f4",
      "parents": [
        "7841f4fa84099fef36e426842a2239d72c74ba53"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Tue Jul 30 18:49:33 2024 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Wed Jul 31 11:36:39 2024 +0400"
      },
      "message": "DodoApp: Support PHP 8.2\n\nChange-Id: I7cfe082c66a0efe0b3b9c85433a96623466ced5c\n"
    },
    {
      "commit": "d8ab4f504f65006c97e09f8b7c0b32cfd19c6b2c",
      "tree": "edea5228351c894dfd96319c461a28ab087ebf39",
      "parents": [
        "8fae3afa076d215d919cfa825098c2945f999261"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Fri Jul 26 16:58:34 2024 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Fri Jul 26 19:13:07 2024 +0400"
      },
      "message": "DodoApp: Use one network per external customer\n\nChange-Id: I09864ad24a223b451c5877ad08bbc8960c80d41c\n"
    },
    {
      "commit": "a60f0decc365f877d7b88d099a65e0b686db78e9",
      "tree": "fc62da0f29749454569cc49710cd809724581bc6",
      "parents": [
        "71eecceeec941c4d1efe46c446139fa1b3eaa479"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Mon Jul 08 10:49:48 2024 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Wed Jul 10 09:23:39 2024 +0400"
      },
      "message": "DodoApp: Status page\n\nImplements basic status page, listing all apps and their commit\nstatuses. Separates web and api endpoints. Unifies API addresses a bit.\n\nChange-Id: I98f9f949a49b60e80e188f7b51ec0e967666e65b\n"
    },
    {
      "commit": "266c04fe17fb79285f09777b268310b039343a69",
      "tree": "26e19ff36f6d55ced011b57c5e06439ba07b0758",
      "parents": [
        "1364e437bf921780052f27d49f51682ffd1811f0"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Wed Jul 03 14:18:45 2024 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu Jul 04 18:18:53 2024 +0400"
      },
      "message": "DodoApp: Prepare dodo-app to support multiple app repositories\n\nPreviously Git repository storing configuration for PCloud\nenvironment, linked dodo-app repositories directly. After this change,\ndodo-app will first create config repository which will link\nindividual application repositories. And PCloud env will link to the\nconfig repo. That way dodo-app manger will be able to create multiple\napp repositories per installation.\n\nChange-Id: I647cacda7a9a4f241d2acc28ae5d8bbd8c6424d6\n"
    },
    {
      "commit": "1364e437bf921780052f27d49f51682ffd1811f0",
      "tree": "18d96f57728f02d66f5edae29d4d1a32996cd5df",
      "parents": [
        "01cf5cbd1b3e86d325d3a487f2e45862ba04b167"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Sat Jun 29 11:39:18 2024 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Tue Jul 02 13:40:18 2024 +0400"
      },
      "message": "DodoApp: Support volume requests\n\nUsers can define volumes section under app, and for each volume\ncorresponding env variable will be passed down to the application.\n\nChange-Id: I8da9d5e1ca652cdb2f0196fcba1b6242064d057f\n"
    },
    {
      "commit": "f5ffedb5f8b7d2039ded283c700edf39b13d94b9",
      "tree": "0d535630140821afe63a0491f7055e04c5b437ae",
      "parents": [
        "d538576ca8e62e123e6b1949d93b0cc96742670d"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Wed Jun 19 14:14:43 2024 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Wed Jun 19 15:03:29 2024 +0400"
      },
      "message": "DodoApp: clone with submodules\n\nChange-Id: I82d53cb91e9629cc7735f92608d9b0ddaef9b913\n"
    },
    {
      "commit": "03fd0c77f1e52b38f42f4fbe2ad33fbb92d71485",
      "tree": "fc855f7e155d9751a4f2d786ef62c567db70ff48",
      "parents": [
        "73fea41e3b45eb6a72c1d29098c854319e923424"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Tue Jun 18 12:31:42 2024 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Tue Jun 18 12:31:42 2024 +0400"
      },
      "message": "DodoApp: support Hugo static websites\n\nChange-Id: Ie01f12443e81f3bfc9f7500d443a0399a1fe01ef\n"
    },
    {
      "commit": "0eaf271490f399be8591a522ebfceee80d41003f",
      "tree": "c1688dbde8537313a845ce8f8533e12474ed2067",
      "parents": [
        "d9c398e445a5eff15e89929dbb111b64eaf8244b"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v0.dodo.cloud",
        "time": "Sun Apr 14 13:08:46 2024 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu Jun 06 13:59:18 2024 +0400"
      },
      "message": "Dodo APP: infrastructure to deploy app by pusing to Git repo\n\nChange-Id: I4034c6893255581b014ddb207c844261cb34202b\n"
    }
  ]
}
