)]}'
{
  "log": [
    {
      "commit": "3cdee59de09438ef564aec0eb4975b51bedc24b0",
      "tree": "25bba11f220a1b87aab5dc6c02fe6d3f33f22fa9",
      "parents": [
        "3af43943f99b7a05b1c597c99aa0a3a999e839ec"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v0.dodo.cloud",
        "time": "Wed Apr 17 10:15:56 2024 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Fri Apr 19 19:36:07 2024 +0400"
      },
      "message": "Installer: Separate infrastructure and environment apps.\n\nHave two separate application managers, one for installing apps on the\ndodo infra, and nother installing on individual environments.\n\nChange-Id: I1b24f008e30c5533c48c22ea92328bc4bb7abc54\n"
    },
    {
      "commit": "3af43943f99b7a05b1c597c99aa0a3a999e839ec",
      "tree": "21e8559e36b37f92760eaf13b1a430010e605d2b",
      "parents": [
        "ef01fbb46843e198939f9d844110f7fb6c250015"
      ],
      "author": {
        "name": "gio",
        "email": "gio@v0.dodo.cloud",
        "time": "Tue Apr 16 08:13:50 2024 +0400"
      },
      "committer": {
        "name": "gio",
        "email": "gio@v1.dodo.cloud",
        "time": "Thu Apr 18 17:52:43 2024 +0400"
      },
      "message": "Installer: Clean up RepoIO interface\n\nChange-Id: If80d7be1460c725b7df9d1d27c9354cb9141acfe\n"
    },
    {
      "commit": "d542b734b96290e10786e3936af01b7e379b3814",
      "tree": "7bcd7b68cff4005bcf29d795ebe3bab8502cf82d",
      "parents": [
        "942c76164eae4f82ea9cfcbe363fa57966c56331"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "giolekva@gmail.com",
        "time": "Mon Mar 25 18:17:39 2024 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Mar 25 18:17:39 2024 +0400"
      },
      "message": "welcome: init group memberships for first create (#115)\n\n* rename createAdminAccount to createAccount\r\n\r\n* welcome: call memberships init on first user\r\n\r\n* auth: add http endpoints to allowed return addresses\r\n\r\n* memberships: make init user member of groups as well\r\n\r\n---------\r\n\r\nCo-authored-by: Giorgi Lekveishvili \u003clekva@gl-mbp-m1-max.local\u003e"
    },
    {
      "commit": "0c6b324af80de6ccca61675e2fbfff304f26767b",
      "tree": "f9680131f783932af086629c0816bd045ff2ec18",
      "parents": [
        "024757cc787b7d33ff039d42599810a64b7dc365"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "giolekva@gmail.com",
        "time": "Thu Mar 14 15:31:08 2024 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Mar 14 15:31:08 2024 +0400"
      },
      "message": "oauth2-client: migrate apps to use oauth2-client helm chart (#90)\n\n* headscale: use oauth2-client helm chart\r\n\r\n* pihole: use oauth2-client helm chart\r\n\r\n* matrix: use oauth2-client helm chart\r\n\r\n* oauth2: pass issuer address to pihole, headscale and matrix apps\r\n\r\n* pihole: fix secret name\r\n\r\n* matrix: fix version to v1.98.0\r\n\r\n* headscale: make oauth2-client depend on auth release\r\n\r\n---------\r\n\r\nCo-authored-by: Giorgi Lekveishvili \u003clekva@gl-mbp-m1-max.local\u003e"
    },
    {
      "commit": "83b7219dc678a0e40751caf594f652f73a888266",
      "tree": "cfedee7894e996172df23f789feb60b6151ee7a1",
      "parents": [
        "3183056f2cb91eca8d0b182fc56169af0033c750"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "giolekva@gmail.com",
        "time": "Mon Mar 11 18:36:14 2024 +0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Mar 11 18:36:14 2024 +0400"
      },
      "message": "welcome: successful registration page (#82)\n\n"
    },
    {
      "commit": "08af67aef1c07d1f0ff4f8d93a77237263db737e",
      "tree": "8c438f7f33bd1f540b4d4baaf5ca15204b3bf7ba",
      "parents": [
        "ef21c1313e8bc150ff4b571dab4cbee50fbe0029"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Thu Jan 18 08:53:05 2024 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Thu Jan 18 08:53:05 2024 +0400"
      },
      "message": "installer: refactor App interface\n"
    },
    {
      "commit": "e009a5dd3fbd34d4586d2f2f9d08347b0f31ad6b",
      "tree": "9d7550cc19de32cc82e05a631c6da62b8bfc7979",
      "parents": [
        "b00a1db3769c05f06d10aca90acec784b9e4c2ee"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri Jan 05 14:10:11 2024 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Wed Jan 17 12:39:32 2024 +0400"
      },
      "message": "installer: migrate apps to cuelang\n"
    },
    {
      "commit": "7c427602668a33eaec70a1a678a5884a555c284b",
      "tree": "07ce64790f298e73a2699ca60ff70020877ef959",
      "parents": [
        "d76414ebcf4a079b003f1edd67edbee330408c94"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Thu Jan 04 00:13:55 2024 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Thu Jan 04 00:13:55 2024 +0400"
      },
      "message": "appmanager: refactor schema into interface, introduce cuelang\n"
    },
    {
      "commit": "c89b900f8c8f0bc1d9ed13dbfe1abf1a86559fb1",
      "tree": "1ba2b3a64fd3e0f22703070bdfdf31d74fc4f6b6",
      "parents": [
        "fedd00675f604327578d433cea4831f116262460"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Thu Dec 21 13:09:26 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Thu Dec 21 13:09:26 2023 +0400"
      },
      "message": "welcome: call api to create account\n"
    },
    {
      "commit": "d2f3dca1a79cafbcf9a52be44d2a3ae16db6f8fd",
      "tree": "ca3c98d991c4cec0884071ea6b309b29443bcae7",
      "parents": [
        "3fd5e4c5a9377f023ceb8e5dd6a3113484fe46ef"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Wed Dec 20 09:31:30 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Wed Dec 20 09:31:30 2023 +0400"
      },
      "message": "installer: call reconciler on app install/update/remove\n"
    },
    {
      "commit": "cd9e42c008f77aee31c05e9d5f236472eb65fdd2",
      "tree": "16035a45080eda26b3f94f156af144fd4a911b40",
      "parents": [
        "efce51ff114b84d036aed12e8fc8b15e4286a5da"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Wed Dec 13 09:49:44 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Wed Dec 13 09:49:44 2023 +0400"
      },
      "message": "installer-env: render dns records to publish\n"
    },
    {
      "commit": "724885f1f6e7cc78bc0b00612579221687f76a09",
      "tree": "74a5cfb8f716bb1d42eff37cdc1d1ac4de519f8a",
      "parents": [
        "aa0b179309782f8746f75e9ad7166776e429d6ae"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Wed Nov 29 16:18:42 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Wed Nov 29 16:18:42 2023 +0400"
      },
      "message": "installer: create individual soft-serve instances for each env\n"
    },
    {
      "commit": "743fb432c977f4b7a98d37407cccdbe8605dd9cf",
      "tree": "0f487c2274b46553425202ed67e5ebb66451be78",
      "parents": [
        "e1c6a2c6fecae7b8fd6663ff3ee0c26e04a2c169"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Wed Nov 08 17:19:40 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Wed Nov 08 17:19:40 2023 +0400"
      },
      "message": "appmanager: fetch app configs from app-repository\n"
    },
    {
      "commit": "081f18fb45eb1e29fe91ca4d296724ebc20bb981",
      "tree": "7ea817b724319d3ea6f692c7a4272e50c33090e5",
      "parents": [
        "a2122f19506cda38a3528834de4acd060c4f085b"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Tue Nov 07 14:58:10 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Tue Nov 07 14:58:39 2023 +0400"
      },
      "message": "installer: generate and use invitations\n"
    },
    {
      "commit": "a1e7790c41fbccde0c4796c2606cf7b1734fb950",
      "tree": "6dba18f5e5987fcd0295b42e7488c13196c5f42d",
      "parents": [
        "29c95caac0f7f792bc6d3b145c7d6b075ef6612c"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Mon Nov 06 14:48:27 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Mon Nov 06 14:48:27 2023 +0400"
      },
      "message": "installer: use soft-serve keygen lib\n"
    },
    {
      "commit": "57dffb3c7752c6506439ee56f0f747cd552201e7",
      "tree": "bd1e8cc5d0856e4063cc705f7cc0cc7dba0e8558",
      "parents": [
        "196b6f4082507a86382d0fc6f3b0284d946e7d46"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Mon Aug 07 15:45:43 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Mon Aug 07 15:45:43 2023 +0400"
      },
      "message": "installer: use main config when creating new env\n"
    },
    {
      "commit": "94cda9d032659b5745ed20ae57f67a04cae52052",
      "tree": "86563aa1c8fe04e621766cdf57d9233913b68162",
      "parents": [
        "2d843c340aa4b7e31651da43e135b530e7722872"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Thu Jul 20 10:16:09 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Thu Jul 20 10:16:09 2023 +0400"
      },
      "message": "installer: orginize bootstrapper, improve service IP handling\n"
    },
    {
      "commit": "25c705bdced6d462d564c9b69e1f0699bc5c347d",
      "tree": "4c4258ae82cebb53ce85f38f86cf6eb2ed86cb2d",
      "parents": [
        "672af5d8ee15a53eb178439badbaa72228ddd920"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Wed Jul 12 11:58:31 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Wed Jul 12 11:58:31 2023 +0400"
      },
      "message": "installer: soft-serve version\n"
    },
    {
      "commit": "402fff9531b2dc90ba04d4f89a79533b69359c0e",
      "tree": "0379202c9c1f48ff4b5c4ccb9e9761fbee2a53f5",
      "parents": [
        "a2f4bb2284b2f5771341cc6d6e7e08a8ba44cd05"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Sun Jul 09 19:38:24 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Sun Jul 09 19:38:57 2023 +0400"
      },
      "message": "bootstrap: use retry to wait for soft serve to come up\n"
    },
    {
      "commit": "4257b905211f530f42934956ad9fd935cf501bff",
      "tree": "57bf9364f91b25d98bb2e05bec4edfb811e27099",
      "parents": [
        "af940c87b4c70277b5abfdfe2c54d90b174edaa9"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri Jul 07 17:08:42 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri Jul 07 17:08:42 2023 +0400"
      },
      "message": "appmanager: replace svelte implementation with go based one\n"
    },
    {
      "commit": "7695148eba5571cd3141d3f2e034b510c9dd7d1a",
      "tree": "712d7c1ee9d0ecf1f6329616ca0a22cbc37ae62d",
      "parents": [
        "6e8131879a23be055b1230c7eef2caf025d4e64f"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri Jun 30 23:25:09 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri Jun 30 23:25:09 2023 +0400"
      },
      "message": "appmanager: list and update app instances\n"
    },
    {
      "commit": "6e8131879a23be055b1230c7eef2caf025d4e64f",
      "tree": "62059ba557143d6b29211018520c15703b541bce",
      "parents": [
        "54902260b50b429b8d730860d7f81a89ecaaf46d"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri Jun 30 13:45:30 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri Jun 30 13:45:30 2023 +0400"
      },
      "message": "installer: separate suffix and prefix generation.\n\nReuse suffix for app dir name.\n"
    },
    {
      "commit": "27b2b576fcc9f20ea6f11a7013e81c34fb43bffe",
      "tree": "1d9961b80b21992958874e1a61ce86c2e9d87041",
      "parents": [
        "15335c2376eb091c0753021b75711ffb51bc48a6"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri Jun 30 10:44:45 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri Jun 30 10:44:45 2023 +0400"
      },
      "message": "installer: separate infra and repo apps. make network configurable\n"
    },
    {
      "commit": "7fb28bf283eeb8ab765e7c405932c11498122696",
      "tree": "de8868c1ac163fad35b45acf5de41b5825ba2d2f",
      "parents": [
        "8fe056ba344b3ba6d11f154b3614a09af5e705a2"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Sat Jun 24 19:51:16 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Sat Jun 24 19:51:16 2023 +0400"
      },
      "message": "installer: create namespaces with kube client\n"
    },
    {
      "commit": "8fe056ba344b3ba6d11f154b3614a09af5e705a2",
      "tree": "e79095927fcd34477c95abe054f4a99c39205c63",
      "parents": [
        "b4a9c98b5f86cda0b936b03fda27db0f1b25ace0"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri Jun 23 12:01:43 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri Jun 23 12:26:08 2023 +0400"
      },
      "message": "installer: remove install cmd\n"
    },
    {
      "commit": "b4a9c98b5f86cda0b936b03fda27db0f1b25ace0",
      "tree": "c9d0851e212cf99307e33500670d6f2aaca91442",
      "parents": [
        "6b887bedae2e4df46dea4aa98cc681f3087e5002"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Thu Jun 22 15:17:02 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Thu Jun 22 15:17:16 2023 +0400"
      },
      "message": "installer: env form\n"
    },
    {
      "commit": "12850ee12b7f4b0a60ae0f13757a875b29d84e89",
      "tree": "3cac4fb0cdf3ae81c032154580a07b4d1b4de8ed",
      "parents": [
        "63c0f91be02b4d6d9b52f344b0c6dfd4941c5f45"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Thu Jun 22 13:11:17 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Thu Jun 22 13:11:17 2023 +0400"
      },
      "message": "installer: welcome\n"
    },
    {
      "commit": "0ccd1481dbc083b60a7cb8ac33ad99bef2c1eb02",
      "tree": "aa576e26ad40f83f2ad893f54fd6b0376e64faa6",
      "parents": [
        "44f9d599f546f4aaf9d42dc1db74f4989ac29513"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Wed Jun 21 15:02:24 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Wed Jun 21 15:02:24 2023 +0400"
      },
      "message": "installer: fully automate initial bootstrap and env creation\n"
    },
    {
      "commit": "ad59bfbf10bef9067ffead4f603753ecd38c1f8f",
      "tree": "de87480f7ec92d3f540522761a2b6ece8ffffd59",
      "parents": [
        "87be4ae37c810f0f294c3c3dbff4a83cf8ad9c5a"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Mon Jun 12 00:04:17 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Mon Jun 12 00:04:17 2023 +0400"
      },
      "message": "installer: create namespace with kustomization\n"
    },
    {
      "commit": "87be4ae37c810f0f294c3c3dbff4a83cf8ad9c5a",
      "tree": "fb80a2a4dfce913ae403c562fdf0ee7dc0e47e48",
      "parents": [
        "3550b4302ac99b271dd8d323b6537b66a7ec7238"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Sun Jun 11 23:41:09 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Sun Jun 11 23:41:09 2023 +0400"
      },
      "message": "installer: env uses repoio\n"
    },
    {
      "commit": "3550b4302ac99b271dd8d323b6537b66a7ec7238",
      "tree": "76bde1f80b4ac22da878a27ab0ad90f485e39e41",
      "parents": [
        "7659fc3da39e3814828f672e5f69fb6b59e9d480"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri Jun 09 19:37:51 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri Jun 09 19:37:51 2023 +0400"
      },
      "message": "installer: configure pcloud repo during bootstrap\n"
    },
    {
      "commit": "d6e80cc2659bd65d496e2e2ab29859b6051e97bf",
      "tree": "686bd481afd0e3aa9f46154cc2f6ff50398e3639",
      "parents": [
        "938b073ad13e3d1530af000cbe61907da4b33241"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri Jun 09 17:38:49 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri Jun 09 17:38:49 2023 +0400"
      },
      "message": "installer: bootstrap installs smb driver\n"
    },
    {
      "commit": "03ee585dc6756729e4543b1cefcc8c6057a800cd",
      "tree": "bc1281a71886ce2c61ca7207a249a3595d41fa57",
      "parents": [
        "7efe22f412bb249bd1f41bdcc758edbd749198c8"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Tue May 30 13:20:10 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Tue May 30 13:20:10 2023 +0400"
      },
      "message": "installer-api: include config in app\n"
    },
    {
      "commit": "7efe22f412bb249bd1f41bdcc758edbd749198c8",
      "tree": "93e0846c9814426677787f9d49b7066ab8852ee0",
      "parents": [
        "bd6be7f5122b7158121e9cf79215b78eeaefff17"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Tue May 30 13:01:53 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Tue May 30 13:01:53 2023 +0400"
      },
      "message": "appmanager-api: render, install\n"
    },
    {
      "commit": "bd6be7f5122b7158121e9cf79215b78eeaefff17",
      "tree": "98c48eccf343193176fe53dec0ec334d338073d8",
      "parents": [
        "677b457f1a09389e54ae3f8ec48ef661cbe07fc4"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri May 26 15:51:28 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri May 26 15:51:28 2023 +0400"
      },
      "message": "installer: appmanager cmd\n"
    },
    {
      "commit": "677b457f1a09389e54ae3f8ec48ef661cbe07fc4",
      "tree": "4f37c48b55b892d0f662fecbc2c47eda0b544b90",
      "parents": [
        "46c627e07ada6d7f4427c160af0632729e935eb9"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri May 26 15:02:37 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri May 26 15:02:37 2023 +0400"
      },
      "message": "fix bootstrap\n"
    },
    {
      "commit": "23ef7f8e2581fd0a6d7e9278691f1a4d865d813f",
      "tree": "99366cfed41973c7d8f6e60aac9423565c6c9b3f",
      "parents": [
        "620caa83cc92b2c9522c4c24167771be7dbbe4e5"
      ],
      "author": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri May 26 11:57:48 2023 +0400"
      },
      "committer": {
        "name": "Giorgi Lekveishvili",
        "email": "lekva@gl-mbp-m1-max.local",
        "time": "Fri May 26 11:57:48 2023 +0400"
      },
      "message": "installer: env and app manager\n"
    },
    {
      "commit": "8aa73e80a629d5047730ff43a204811856f6e33e",
      "tree": "78d6755819f5c490d52991a3a5da9eb733d09d21",
      "parents": [
        "b696f19cfb56615cca89bdcf7c97b27e66bb99f5"
      ],
      "author": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sat Jul 09 11:34:39 2022 +0400"
      },
      "committer": {
        "name": "giolekva",
        "email": "giolekva@gmail.com",
        "time": "Sat Jul 09 11:34:39 2022 +0400"
      },
      "message": "installer: clean up codebase\n\n* introduce helper soft package to work with SoftServe\n* move commands to cmd/\n"
    }
  ]
}
