)]}'
{
  "log": [
    {
      "commit": "36290208b31082b38cf1ca53ba66bfaa324406dc",
      "tree": "7d917f310b6219c4818babf7bd5d41c7bda40e6b",
      "parents": [
        "2c709f22100b002b472a2be1f26246ad2101f4c0"
      ],
      "author": {
        "name": "Dzmitry Stremkouski",
        "email": "dstremkouski@mirantis.com",
        "time": "Sun May 05 21:26:25 2019 +0200"
      },
      "committer": {
        "name": "Dzmitry Stremkouski",
        "email": "dstremkouski@mirantis.com",
        "time": "Mon May 06 09:15:20 2019 +0200"
      },
      "message": "[Tooling update] health_checks\n\n* Added:\n\n- Retrieve contrail vrouter agent status from analyticsdb\n- Retrieve filtered contrail vrouter agent info from analyticsdb\n- Remove unwanted debug print from entropy_check function\n\nRelated-Prod: PROD-29236\n\nChange-Id: I272a1fea3e39ec597647947cad798993f09e536a\n"
    },
    {
      "commit": "2c709f22100b002b472a2be1f26246ad2101f4c0",
      "tree": "464d7562e4c06585c059d5f00d3ffcc3b6e61066",
      "parents": [
        "4783b6cdb1dde7685ba519705a8975b1188eec66"
      ],
      "author": {
        "name": "Dzmitry Stremkouski",
        "email": "dstremkouski@mirantis.com",
        "time": "Mon Apr 22 02:27:54 2019 +0200"
      },
      "committer": {
        "name": "Dzmitry Stremkouski",
        "email": "dstremkouski@mirantis.com",
        "time": "Thu May 02 02:18:26 2019 +0200"
      },
      "message": "[Tooling update] health_checks\n\n* Added:\n\n- Execute zookeeper cmds via socket\n- Retrieve zookeeper stats\n- Retrieve zookeeper leader\n- Fetch contrail vrouter list from control node\n- Fetch contrail vrouter summary from control node\n- Fetch contrail vrouter agent connections from compute node\n- Fetch libvirt supported machine types for compute node\n- compund fix for contrail check\n- failed_minion output fix for netdev check\n\nRelated-Prod: PROD-29236\n\nChange-Id: I4ad5b053609bfbb1c072d9895d47117a62e18309\n"
    },
    {
      "commit": "4783b6cdb1dde7685ba519705a8975b1188eec66",
      "tree": "38976d95334f67d3ba95af94765cbd071262ab56",
      "parents": [
        "7cd10fc651ba1a50d60f73f9fd6110c63fe11723"
      ],
      "author": {
        "name": "Dzmitry Stremkouski",
        "email": "dstremkouski@mirantis.com",
        "time": "Wed Apr 17 16:16:23 2019 +0200"
      },
      "committer": {
        "name": "Dzmitry Stremkouski",
        "email": "dstremkouski@mirantis.com",
        "time": "Wed Apr 17 16:33:06 2019 +0200"
      },
      "message": "Adding dry_run flag for salt.control state\n\nIssue: on virtual environments where nested virtualization is not\n       possible, we cannot get config drive iso files\n\nSolution: generate config dirve isoes by running salt.control\n          state with dry_run\u003dTrue\n\nAs for comment in the code, I prefer to switch from start\u003dTrue to\ndry_run\u003dFalse and switch to it.\nThis is why I added new flag. Product team can switch on the fly\nand deprecate start\u003dTrue usage\n\nProd-Related: PROD-29586\n\nChange-Id: I2e5485e3e2a4fec06edc874de12fd50fb76d8264\n"
    },
    {
      "commit": "7cd10fc651ba1a50d60f73f9fd6110c63fe11723",
      "tree": "26b9c1b033ba41f28bb7ee45c533207268d628e0",
      "parents": [
        "507aa8720f6e4c54d37c82402ff554bc7a1267c4"
      ],
      "author": {
        "name": "Dzmitry Stremkouski",
        "email": "dstremkouski@mirantis.com",
        "time": "Wed Apr 17 11:51:59 2019 +0200"
      },
      "committer": {
        "name": "Dzmitry Stremkouski",
        "email": "dstremkouski@mirantis.com",
        "time": "Wed Apr 17 11:56:03 2019 +0200"
      },
      "message": "[Tooling update] health_checks\n\n* Added:\n\n- Retrieve docker containers list on target server\n- Retrieve entropy size for host\n- Check entropy size on all nodes\n\nRelated-Prod: PROD-29236\n\nChange-Id: I3c6aee4a6ff47f988baa3e1cc4aab09b80f112c4\n"
    },
    {
      "commit": "f1bcbb5a02af541a6379047ff2f27082e687b90f",
      "tree": "66cba97d1204311d46a9e348d56a7ad13b5992e8",
      "parents": [
        "555f0e99a484c41bbeec0f70b9387e83651e8643"
      ],
      "author": {
        "name": "Dzmitry Stremkouski",
        "email": "dstremkouski@mirantis.com",
        "time": "Thu Apr 11 15:48:24 2019 +0200"
      },
      "committer": {
        "name": "Dzmitry Stremkouski",
        "email": "dstremkouski@mirantis.com",
        "time": "Tue Apr 16 19:19:49 2019 +0200"
      },
      "message": "[Tooling update] health_checks\n\n* Added:\n\n- rabbitmq queue listing for a node\n- CEPH health status check\n- Ability to execute arbitrary ceph commands\n- Retrieve docker registry repos recursively\n- Retrieve GlusterFS pool list\n- Retrieve FlusterFS volumes status\n- Check GlusterFS pool health and size\n- Check GlusterFS volumes bricks health and size\n\nRelated-Prod: PROD-29236\n\nChange-Id: I1b12fe39d2d4f190db3cc68a6fe18f919f044eda\n"
    },
    {
      "commit": "b71ada9d0663c5675b1e2ddaaf5006bfbe274221",
      "tree": "92210e5ba590c82551a1d325e2583e2c207a3475",
      "parents": [
        "96b7f6faf141dfd28e1fc838ab4699c0f5cfc151"
      ],
      "author": {
        "name": "Dzmitry Stremkouski",
        "email": "dstremkouski@mirantis.com",
        "time": "Fri Apr 05 22:37:59 2019 +0200"
      },
      "committer": {
        "name": "Dzmitry Stremkouski",
        "email": "dstremkouski@mirantis.com",
        "time": "Sun Apr 07 11:36:13 2019 +0200"
      },
      "message": "Swiss army knife for verifying MCP cluster health\n\nFeatures:\n\n * Verify offline minions\n * Verify time diff on your minions\n * Produce JSON output for ntpq command\n * Verify NTP peers state on your minions\n * Verify contrail nodes contrail-status output\n * Verify galera cluster status\n * Verify rabbitmq cluster status\n * Produce JSON output for rabbitmqctl commands\n * Verify haproxy upstream status\n * Produce haproxy JSON stats output\n * Verify disk space usage\n * Verify disk inodes usage\n * Verify load average\n * Verify ifaces rx/tx drops on the interfaces\n * Verify memory usage\n\nRelated-Prod: PROD-29236\n\nChange-Id: Id7423665e8d45baee4b96751d9df29112dfa10e5\n"
    },
    {
      "commit": "e60e1ec6d93751a3b2539f9d32c44d6db9a2f1de",
      "tree": "322a8b1ff767712de16a5d752eedb51d2eb7ac7d",
      "parents": [
        "5dc4d83886b51df6866141188f96792514061adf"
      ],
      "author": {
        "name": "Oleksandr Shyshko",
        "email": "oshyshko@mirantis.com",
        "time": "Wed Jan 23 15:16:05 2019 +0000"
      },
      "committer": {
        "name": "oshyshko",
        "email": "oshyshko@mirantis.com",
        "time": "Mon Feb 04 18:15:32 2019 +0000"
      },
      "message": "Opportunity was added validate a versioned schemas.\n\n  * It is needed for data model validation of\n    openstack services which should be versioned.\n  * Some mistakes in commentaries were fixed.\n\nChange-Id: I4bd765255f8b327b6aa7167102fa7eceb1c8e02b\nRelated-PROD: PROD-26805\n"
    },
    {
      "commit": "9b3097a861863ca681b4893fc26090564115577c",
      "tree": "45fe45515cb748c5f351520781b2a2fe852934cb",
      "parents": [
        "6b67f5fb419127fe6e59481f20f17f604e2d13f2"
      ],
      "author": {
        "name": "Dmitry Teselkin",
        "email": "dteselkin@mirantis.com",
        "time": "Wed Nov 21 15:45:07 2018 +0300"
      },
      "committer": {
        "name": "Dmitry Teselkin",
        "email": "dteselkin@mirantis.com",
        "time": "Thu Dec 20 17:24:47 2018 +0000"
      },
      "message": "Shared lib of small but usefull functions and other\n\nThis commit adds \u0027sharedlib\u0027 loader that allows to organize\nfunctions into tree structure. Salt doesn\u0027t allow this as it\nonly imports top-level modules\n\nhttps://github.com/saltstack/salt/issues/37273\n\nSee README for more details.\n\nChange-Id: I7827c42f8f0d4caef56eff6352a49fe1a95a50cc\n"
    },
    {
      "commit": "996e2093248e00b05490555bfe62ba1f73b8bd13",
      "tree": "8f02dabb292bbd59eaeb5934ca45ad1608ebab85",
      "parents": [
        "9e4dd699e9974d1337680824b4bdb2a6b313f73b"
      ],
      "author": {
        "name": "Andrei Danin",
        "email": "gcon.monolake@gmail.com",
        "time": "Mon Sep 10 21:58:23 2018 -0700"
      },
      "committer": {
        "name": "Andrei Danin",
        "email": "gcon.monolake@gmail.com",
        "time": "Wed Sep 26 16:35:59 2018 -0700"
      },
      "message": "Refactor cloud-init support and VM Salt config seeding\n\nMissing package dependancies added.\n\nA missing \"config\" parameter for qemu-nbd based seeding\nmethod added.\n\nA new seeding method utilising Cloud-init added.\nThe qemu-nbd based method is still a default method\nfor backward compatibility.\n\nTo enable cloud-init, set the \"seed\" parameter on\na cluster or node level to \"cloud-init\".\nTo disable seeding, set this parameter to \"false\".\nSetting this parameter to \"true\" will default to\nthe \"qemu-nbd\" method.\n\nSalt Minion config file will be created automatically\nand may be overrided via cluster or node level\nmetadata:\n\n  salt:\n    control:\n      cluster:\n        mycluster:\n          seed: cloud-init\n          cloud_init:\n            user_data:\n              salt_minion:\n                conf:\n                  master: 10.1.1.1\n\nor for qemu-nbd case:\n\n  salt:\n    control:\n      cluster:\n        mycluster:\n          seed: true\n          config:\n            host: 10.1.1.1\n\nThat may be useful when Salt Master has two IPs in\ndifferent networks and one of the networks isn\u0027t accessible\nfrom a VM at the moment it\u0027s created. Setting a reachable\nSalt master IP from metadata helps avoid potential problems.\n\nAlso, a liitle optimization has been done to parse/dump\nan libvirt XML only once while modifying it.\n\nChange-Id: I091cf409cb43ba2d0a18eaf2a08c11e88d0334e2\nCloses-Bug: PROD-22191\n"
    },
    {
      "commit": "0d183cb7b5533548de438b4f37e5b8fd9d05f30c",
      "tree": "9440563fc24f2371db94201f13da3b36ea29d473",
      "parents": [
        "f03c4e822765712e8c64c9f176ba93ecce6f44fd"
      ],
      "author": {
        "name": "Martin Horak",
        "email": "horak.martin@gmail.com",
        "time": "Fri Sep 14 16:11:08 2018 +0200"
      },
      "committer": {
        "name": "Martin Horak",
        "email": "horak.martin@gmail.com",
        "time": "Fri Sep 14 16:11:08 2018 +0200"
      },
      "message": "Allow to enable_vnc for provisioned VMs.\n"
    },
    {
      "commit": "f03c4e822765712e8c64c9f176ba93ecce6f44fd",
      "tree": "f8ba06dc8d34b7068321b8fe6bb5ceb61434bbfb",
      "parents": [
        "91699ab6cf60d5d4bd2656cd491728e12de53eba"
      ],
      "author": {
        "name": "Pavel Cizinsky",
        "email": "pcizinsky@mirantis.com",
        "time": "Mon Sep 10 14:56:11 2018 +0200"
      },
      "committer": {
        "name": "Pavel Cizinsky",
        "email": "pcizinsky@mirantis.com",
        "time": "Tue Sep 11 14:38:45 2018 +0200"
      },
      "message": "add support for cpuset\n\nRelated PROD-23040 (PROD:23040)\n\nChange-Id: I6cf2cb5ff66dcffb1532343a58416fb242703322\n"
    },
    {
      "commit": "00f187a90ed0c02b72e09bfa61231ec3d7efe5fc",
      "tree": "0d8d9cdc555cc4d500b380035e80260977f0efc0",
      "parents": [
        "97927ee35ee87ea4f52fe93971413aa75da89ecd"
      ],
      "author": {
        "name": "Alexandru Avadanii",
        "email": "Alexandru.Avadanii@enea.com",
        "time": "Sun Jun 24 20:36:44 2018 +0200"
      },
      "committer": {
        "name": "Alexandru Avadanii",
        "email": "Alexandru.Avadanii@enea.com",
        "time": "Thu Aug 30 16:40:45 2018 +0200"
      },
      "message": "libvirt xml: pass loader, virt machine, cpu mode\n\nSpawning AArch64 VMs using salt.control.virt requires a few extra\ndomain configuration items to be configurable:\n- libvirt xml: pass loader param to vm\n  Based on upstream commit [1].\n- libvirt xml: pass virt machine type\n- libvirt xml: pass cpu mode to vm\n- virt module: Allow NVRAM unlinking on DOM undefine\n  UEFI-enabled VMs usually have pflash (NVRAM) devices attached,\n  which require one additional libvirt flag to be passed at \u0027undefine\u0027.\n  This is usually the case for AArch64 (arm64) VMs, where AAVMF (AA64\n  UEFI) is the only supported guest bootloader.\n\n[1] https://github.com/saltstack/salt/commit/9cace9adb\n\nSigned-off-by: Alexandru Avadanii \u003cAlexandru.Avadanii@enea.com\u003e\n"
    },
    {
      "commit": "97927ee35ee87ea4f52fe93971413aa75da89ecd",
      "tree": "6163117c23f9e34c099154cdcbe77f5599a9c782",
      "parents": [
        "262e8b0ba270baf46a3ad264a5acf3d6056b5cd3"
      ],
      "author": {
        "name": "Dzmitry Stremkouski",
        "email": "dstremkouski@mirantis.com",
        "time": "Thu Aug 23 23:20:38 2018 +0200"
      },
      "committer": {
        "name": "Dzmitry Stremkouski",
        "email": "dstremkouski@mirantis.com",
        "time": "Tue Aug 28 19:13:06 2018 +0200"
      },
      "message": "Adding ability to manualy configure network inside VM before boot.\n\nThis patchset obsoletes switching from \"dhcp\" to \"static\" during\ndeployment.\n\nExample pillars:\nsalt:\n  control:\n    enabled: true\n    virt_enabled: true\n    size:\n      small:\n        cpu: 1\n        ram: 1\n    cluster:\n      infra:\n        domain: example.com\n        engine: virt\n        config:\n          engine: salt\n          host: master.domain.com\n        cloud_init:\n          network_data:\n            links:\n            - id: ens2\n              name: ens2\n              type: phy\n          user_data:\n            disable_ec2_metadata: true\n            resize_rootfs: True\n            timezone: UTC\n            ssh_deletekeys: True\n            ssh_genkeytypes: [\u0027rsa\u0027, \u0027dsa\u0027, \u0027ecdsa\u0027]\n            ssh_svcname: ssh\n            locale: en_US.UTF-8\n            disable_root: true\n            apt_preserve_sources_list: false\n            apt:\n              sources_list: \"\"\n              sources:\n                ubuntu.list:\n                  source: ${linux:system:repo:ubuntu:source}\n                mcp_saltstack.list:\n                  source: ${linux:system:repo:mcp_saltstack:source}\n        node:\n          ctl01:\n            provider: kvm01.example.com\n            image: ubuntu-16.04.qcow2\n            size: small\n            cloud_init:\n              network_data:\n                networks:\n                - id: private-ipv4\n                  ip_address: 192.168.0.161\n                  link: ens2\n                  netmask: 255.255.255.0\n                  routes:\n                  - gateway: 192.168.0.1\n                    netmask: 0.0.0.0\n                    network: 0.0.0.0\n                  type: ipv4\n\nChange-Id: I087518404c61e0bab2303e40957bacca94692102\n"
    },
    {
      "commit": "b8acf1f9c891939e1555b838b78ea77fa3e19164",
      "tree": "06a2980cfd45c80e82d4f0eafa6a7f708edcd14a",
      "parents": [
        "ca6b91763415179a5be18106fb8bf815334fee6a"
      ],
      "author": {
        "name": "Dzmitry Stremkouski",
        "email": "dstremkouski@mirantis.com",
        "time": "Thu Jun 28 12:56:23 2018 +0200"
      },
      "committer": {
        "name": "Dzmitry Stremkouski",
        "email": "dstremkouski@mirantis.com",
        "time": "Thu Jun 28 12:59:56 2018 +0200"
      },
      "message": "Adding virtualport interface attribute for nic\n\nProd-Related: PROD-20747\n\nChange-Id: Id7822963ab45ff7db3252f5329a9376aa4bf10d6\n"
    },
    {
      "commit": "a4e802dc4ccaeb27063e13ec82288528936ec45e",
      "tree": "629ecd8bd24b6e0afabfed1df9a999290e9534f0",
      "parents": [
        "9dc3146477a393c423d0e64f8f41e024a4567e3d"
      ],
      "author": {
        "name": "azvyagintsev",
        "email": "azvyagintsev@mirantis.com",
        "time": "Fri May 04 20:16:02 2018 +0300"
      },
      "committer": {
        "name": "azvyagintsev",
        "email": "azvyagintsev@mirantis.com",
        "time": "Mon May 07 11:06:24 2018 +0300"
      },
      "message": "virtng: add random device by default\n\n  * Salt minion is unable unencrypt the messages from master during boot\n    because of lack of entropy, throwing the exception:\n\n    File \"/usr/lib/python2.7/dist-packages/salt/utils/rsax931.py\", line 146, in sign\n    raise SSLError(\u0027Unable to encrypt message\u0027)\n    SSLError: Unable to encrypt message:\n    error:80064191:lib(128):osrandom_init:getrandom() initialization failed with EAGAIN. Most likely Kernel CPRNG is not se\n    error:80065190:lib(128):osrandom_rand_bytes:getrandom() initialization failed.\n    error:04088003:rsa routines:RSA_setup_blinding:BN lib\n    error:04066044:rsa routines:RSA_EAY_PRIVATE_ENCRYPT:internal error\n\n    After node has been booted up, and /dev/random device collected some\n    extra entropy, salt-minion could start.\n\n    This patch configures libvirt vms to use /dev/urandom for faster\n    entropy regeneration\n\nChange-Id: I470166b4424752d24ac4bb2cb87d9f99cd14752e\nCo-Authored-By: Oleksandr Savatieiev \u003cosavatieiev@mirantis.com\u003e\nProd-Related: PROD-19711\n"
    },
    {
      "commit": "7ee2340ea88ec1085294a946e04824e83a8be6cb",
      "tree": "c2d14b3dfdfb5d16a0f8892d42bfa73b4211494c",
      "parents": [
        "9c6cc7bd627fbb8b736e7b24a7a81d041bae3f4b"
      ],
      "author": {
        "name": "Dzmitry Stremkouski",
        "email": "dstremkouski@mirantis.com",
        "time": "Tue Apr 10 00:43:48 2018 +0200"
      },
      "committer": {
        "name": "Dzmitry Stremkouski",
        "email": "dstremkouski@mirantis.com",
        "time": "Tue Apr 10 17:19:58 2018 +0200"
      },
      "message": "[Feature] libvirt xml: pass rng to vm\n[Fix] Doc\n\nIssue: - It is not possible to pass [R]andom [N]umber [G]enerator\n         device to libvirt guest xml in order to control entropy.\n\n       - Doc has no information on how to provision vms using salt\n\nSolution: - Pass rng parameters via kwargs from node: pillar\n            Attach rng xml object to generated xml.\n\n          - Provide with an example\n\nProd-Related: PROD-19214\nCustomer-Found\nChange-Id: Iea111f2d927edf46f06bb7ccfad06d37b752fba9\n"
    },
    {
      "commit": "3f3a63b76fd31774ef1d1cf091bab2f84068fddc",
      "tree": "ce132b04dc26aa1aa3b26862d7398ea457b5c117",
      "parents": [
        "c312a291d02e87fe128c2472a162aa7c00db1e0e"
      ],
      "author": {
        "name": "Ales Komarek",
        "email": "mail@newt.cz",
        "time": "Thu Feb 15 16:54:14 2018 +0100"
      },
      "committer": {
        "name": "Ales Komarek",
        "email": "mail@newt.cz",
        "time": "Thu Feb 15 16:54:14 2018 +0100"
      },
      "message": "Removed architect client from module\n\nChange-Id: I16a340051a2e1b2202b23f2fd3a6bab20b363ee8\n"
    },
    {
      "commit": "c312a291d02e87fe128c2472a162aa7c00db1e0e",
      "tree": "7bb1826554f3c31f5abdb63c279b1fb3fc0c955e",
      "parents": [
        "0cbc6790e48f95a8fa99374d799e51fd1bc27b50"
      ],
      "author": {
        "name": "Ales Komarek",
        "email": "mail@newt.cz",
        "time": "Thu Feb 15 11:01:04 2018 +0100"
      },
      "committer": {
        "name": "Ales Komarek",
        "email": "mail@newt.cz",
        "time": "Thu Feb 15 11:02:19 2018 +0100"
      },
      "message": "Updated Arch engine and modules\n\nChange-Id: I6f206ad2af8cc2664c1f1fa315833d9502c34851\n"
    },
    {
      "commit": "0cbc6790e48f95a8fa99374d799e51fd1bc27b50",
      "tree": "3a0fbc58f3372ed49bd07049c2ea6445ea92d54c",
      "parents": [
        "ef0eea36b1a5ffd09eadf7d7e675818124577d47"
      ],
      "author": {
        "name": "Ales Komarek",
        "email": "mail@newt.cz",
        "time": "Wed Feb 14 17:12:37 2018 +0100"
      },
      "committer": {
        "name": "Ales Komarek",
        "email": "mail@newt.cz",
        "time": "Wed Feb 14 17:12:37 2018 +0100"
      },
      "message": "Added lowstate to minion info collector\n\nChange-Id: Ia46969bab0bf7eec118d68f67a491de9cf726994\n"
    },
    {
      "commit": "ef0eea36b1a5ffd09eadf7d7e675818124577d47",
      "tree": "33820037cf6d0526a3f49d30221e94f04fbc36b8",
      "parents": [
        "56203b721b41c4fa18171fbb0bb117a52bdd251b"
      ],
      "author": {
        "name": "Ales Komarek",
        "email": "mail@newt.cz",
        "time": "Wed Feb 14 15:47:13 2018 +0100"
      },
      "committer": {
        "name": "Ales Komarek",
        "email": "mail@newt.cz",
        "time": "Wed Feb 14 15:47:13 2018 +0100"
      },
      "message": "Added Architect module and makefile rule for engines installation\n\nChange-Id: I462f47d01bd8d2b249ff059a0efd0271929691f7\n"
    },
    {
      "commit": "7c5dfd3616ca967d55c4172e69a14e1dec185cda",
      "tree": "d77ad25926d6e927a37ea855a491730b287f00a4",
      "parents": [
        "f575f6110e8b925d7dc651614606689f603e308d"
      ],
      "author": {
        "name": "Oleh Hryhorov",
        "email": "ohryhorov@mirantis.com",
        "time": "Fri Jan 19 15:43:44 2018 +0200"
      },
      "committer": {
        "name": "Oleh Hryhorov",
        "email": "ohryhorov@mirantis.com",
        "time": "Mon Jan 22 15:56:29 2018 +0200"
      },
      "message": "Deleting deprecated function and switch test to 2017.7\n\nThe patch deletes deprecated cmd.run function which actually\nwas defined in salt 2016 as alias for cmd.shell therefore this\nchange supports backward compatibility.\n\nChange-Id: I47eae0b8ee45ca1a1a9b3e8e544c893614573fda\nRelated-PROD: 17056\n"
    },
    {
      "commit": "b57aaa1709ecbef2be16fcc525d52563fbf0de0c",
      "tree": "2d4f57817181287919ef25bdb0b25f923670406c",
      "parents": [
        "4c7cd2d8c82793a23d56d7f97c1207208d1745f7"
      ],
      "author": {
        "name": "azvyagintsev",
        "email": "azvyagintsev@mirantis.com",
        "time": "Tue Dec 26 15:06:47 2017 +0200"
      },
      "committer": {
        "name": "azvyagintsev",
        "email": "azvyagintsev@mirantis.com",
        "time": "Fri Jan 12 15:28:41 2018 +0200"
      },
      "message": "modelschema - raise on SchemaError\n\n  * Extend some logs\n\nChange-Id: Ica9b2031f08b1e5492b375e7476d408ed48698fe\n"
    },
    {
      "commit": "4c7cd2d8c82793a23d56d7f97c1207208d1745f7",
      "tree": "f64c5b5292a04984bdf14f52e6ba286e936e074d",
      "parents": [
        "7db5a558358757e8107711e7be8273b3d9bea66e"
      ],
      "author": {
        "name": "Mateusz Los",
        "email": "mlos@mirantis.com",
        "time": "Tue Jan 09 11:46:07 2018 +0100"
      },
      "committer": {
        "name": "Mateusz Los",
        "email": "mlos@mirantis.com",
        "time": "Tue Jan 09 12:02:28 2018 +0100"
      },
      "message": "support for putting vm images in custom locations\n\nChange-Id: I685de4207f1f7f17264cc4ad2d81c3348ca20074\n"
    },
    {
      "commit": "380c6abcc6ee3e7272580f7124d9f63e0829b24d",
      "tree": "36483114395703c17b5a3a62a32b153c89f630ea",
      "parents": [
        "b347eaf066f161d1998752d1ea9accec4beaa638",
        "0d683713df8d941c775ed68bcd0e7084e1e4253c"
      ],
      "author": {
        "name": "mcp-jenkins",
        "email": "mcp-jenkins@mirantis.com",
        "time": "Mon Dec 18 14:23:51 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit2@e9aa877068d1",
        "time": "Mon Dec 18 14:23:51 2017 +0000"
      },
      "message": "Merge \"Fix modelschema.schema_list()\""
    },
    {
      "commit": "6bb146207dc4daf4922066aa31cdfc83f9fcfb09",
      "tree": "5ef8b1469740d84c2e8d42a7b7a324469e61a30e",
      "parents": [
        "6041b1b542b95c8766118d4400bcec7b6a8b5f08",
        "398e69fcf9df29b196dcc033eb30670765cc8c66"
      ],
      "author": {
        "name": "Petr Michalec",
        "email": "epcim@apealive.net",
        "time": "Thu Dec 14 09:08:39 2017 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Dec 14 09:08:39 2017 +0100"
      },
      "message": "Merge pull request #64 from alexandruavadanii/master\n\nseedng: module: Sync salt version"
    },
    {
      "commit": "0d683713df8d941c775ed68bcd0e7084e1e4253c",
      "tree": "8c65a45d629bdc21a018b9ddbf45342694c12fd4",
      "parents": [
        "6041b1b542b95c8766118d4400bcec7b6a8b5f08"
      ],
      "author": {
        "name": "azvyagintsev",
        "email": "azvyagintsev@mirantis.com",
        "time": "Mon Dec 11 22:13:55 2017 +0200"
      },
      "committer": {
        "name": "azvyagintsev",
        "email": "azvyagintsev@mirantis.com",
        "time": "Mon Dec 11 22:16:00 2017 +0200"
      },
      "message": "Fix modelschema.schema_list()\n\n  * Fix glob path, since :\n    ipdb\u003e print \u0027{}/*/*/schemas/*.yaml\u0027.format(_get_base_dir())\n    /usr/share/salt-formulas/env/*/*/schemas/*.yaml\n    Process empty list:\n    ipdb\u003e print schemas\n    []\n\nChange-Id: I6ad048cb601baea9282e3c2a30fb79fdddd1ee0b\n"
    },
    {
      "commit": "6041b1b542b95c8766118d4400bcec7b6a8b5f08",
      "tree": "543aa42b0fdb0001c2c9fc9f22c102abd0c22b7f",
      "parents": [
        "84d46739a7b7aed753c4bdc389a54349d2343f2c"
      ],
      "author": {
        "name": "Ales Komarek",
        "email": "mail@newt.cz",
        "time": "Wed Nov 22 15:26:27 2017 +0100"
      },
      "committer": {
        "name": "azvyagintsev",
        "email": "azvyagintsev@mirantis.com",
        "time": "Wed Dec 06 19:08:07 2017 +0200"
      },
      "message": "Added support modules for schema operations\n\n  * Added support for backup\n\nEME-13\n\nChange-Id: I11cabb77bb66f3e9f1e35c9a00c9c196ded0ceb3\n"
    },
    {
      "commit": "0b4cdf58ef301406e0f0bac5cc4e0cf655817038",
      "tree": "899bca7b5c514ea66a1ae3b9360b35969e351b01",
      "parents": [
        "32ab65e016daf48ea313a68a1e68e4387891932a",
        "8f8eee7680903551370ba269fdf72f8506adda85"
      ],
      "author": {
        "name": "mcp-jenkins",
        "email": "mcp-jenkins@mirantis.com",
        "time": "Thu Nov 02 14:11:30 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "gerrit2@a351f7b8d92b",
        "time": "Thu Nov 02 14:11:30 2017 +0000"
      },
      "message": "Merge \"Added support for salt engines, added support for requisite ordering\""
    },
    {
      "commit": "398e69fcf9df29b196dcc033eb30670765cc8c66",
      "tree": "0f5fe9a0dea500c25dbef17cb239a98da4d2c26f",
      "parents": [
        "32ab65e016daf48ea313a68a1e68e4387891932a"
      ],
      "author": {
        "name": "Alexandru Avadanii",
        "email": "Alexandru.Avadanii@enea.com",
        "time": "Mon Aug 21 02:03:01 2017 +0200"
      },
      "committer": {
        "name": "Alexandru Avadanii",
        "email": "Alexandru.Avadanii@enea.com",
        "time": "Fri Oct 27 19:53:19 2017 +0200"
      },
      "message": "seedng: module: Sync salt version\n\nsalt custom py module seedng.py should use the same Salt version\nwhen preinstalling minion for salt-controlled VMs via bootstrap\nscript.\n\nSigned-off-by: Alexandru Avadanii \u003cAlexandru.Avadanii@enea.com\u003e\n"
    },
    {
      "commit": "8f8eee7680903551370ba269fdf72f8506adda85",
      "tree": "546e6774195107af951cb69430898968624d55f5",
      "parents": [
        "b19dcd9e01172ecf893c6d8335b43d5e1959e830"
      ],
      "author": {
        "name": "Ales Komarek",
        "email": "ales.komarek@newt.cz",
        "time": "Fri Oct 27 08:56:52 2017 +0200"
      },
      "committer": {
        "name": "Ales Komarek",
        "email": "ales.komarek@newt.cz",
        "time": "Fri Oct 27 08:56:52 2017 +0200"
      },
      "message": "Added support for salt engines, added support for requisite ordering\n\nChange-Id: I772495c38ed5dc21ad833f3c0f351384942e2b23\n"
    },
    {
      "commit": "f5dba8c759345aabaad26cad4f378c657c2e93ff",
      "tree": "950365f744647178c233e83f9b1adcf3eb1b499c",
      "parents": [
        "b19dcd9e01172ecf893c6d8335b43d5e1959e830"
      ],
      "author": {
        "name": "Dennis Dmitriev",
        "email": "ddmitriev@mirantis.com",
        "time": "Tue Oct 10 19:05:20 2017 +0300"
      },
      "committer": {
        "name": "Dennis Dmitriev",
        "email": "ddmitriev@mirantis.com",
        "time": "Tue Oct 10 19:07:26 2017 +0300"
      },
      "message": "Fix VCP images creation\n\nDo not change VCP disk profile globally, it causes to re-use\nthe properties from one node in another.\n\nChange-Id: Iff98010c32c1060b50bc0ae040edb72108c57da1\n"
    },
    {
      "commit": "a57463cea774858b24bdd287dcecc19736dd0229",
      "tree": "74459a2d9051ddd93e4d670d0d3feeb0ede01649",
      "parents": [
        "1dc8e7887464d8166f2fde819b666dcc479ed002"
      ],
      "author": {
        "name": "Dennis Dmitriev",
        "email": "ddmitriev@mirantis.com",
        "time": "Fri Mar 24 17:05:22 2017 +0200"
      },
      "committer": {
        "name": "Denis Dmitriev",
        "email": "ddmitriev@mirantis.com",
        "time": "Thu Sep 14 19:59:00 2017 +0000"
      },
      "message": "Add possibility to specify multiple disks for salt.control formula\n\nExample:\n\nparameters:\n  salt:\n    control:\n      size: #RAM 4096,8192,16384,32768,65536\n        openstack.control:\n          cpu: 8\n          ram: 32768\n          disk_profile: small_two_disks\n          net_profile: default\n\n  virt:\n    disk:\n      small_two_disks:\n        - system:\n            size: 50000\n            image: http:/path/to/image.qcow2\n        - cinder-volume:\n            size: 50000\n\nChange-Id: Ie092b77627cb2b1d36ba4b7a2a7d749ad91881c8\n"
    },
    {
      "commit": "8455c2593323a8d007ba2cb79e6262cbab8cc962",
      "tree": "c33168946ea1e2ffc68912e222c07d113e663f0c",
      "parents": [
        "a3838398b41716dd81076e1c11ebb5a23ffed2d3"
      ],
      "author": {
        "name": "Adam Tengler",
        "email": "atengler@mirantis.com",
        "time": "Tue Sep 12 14:51:47 2017 +0000"
      },
      "committer": {
        "name": "Adam Tengler",
        "email": "atengler@mirantis.com",
        "time": "Tue Sep 12 14:57:33 2017 +0000"
      },
      "message": "Use normalized way to get config for custom module\n\nChange-Id: I8fe09f450695eaad1546262cef8df5bc4bb02308\n"
    },
    {
      "commit": "62188969ccdf03d965ffc80bc8b52243a8c59bc3",
      "tree": "e851c7c24cd63c2bbabc8cce9a2e1e6729f6359a",
      "parents": [
        "00c9ffd4feb9f2409b8ae5de702cfd6b189e92d4"
      ],
      "author": {
        "name": "Adam Tengler",
        "email": "atengler@mirantis.com",
        "time": "Mon Sep 04 13:34:44 2017 +0000"
      },
      "committer": {
        "name": "Adam Tengler",
        "email": "atengler@mirantis.com",
        "time": "Mon Sep 04 15:35:24 2017 +0000"
      },
      "message": "Salt reactor features refactoring\n\nChange-Id: Ifac3f5e03099e8190db0a3af62a7be1f762f87be\n"
    },
    {
      "commit": "b892d85c9b5585870ff217ae9bbac5eda91cf2a3",
      "tree": "e443086b41b03e993ae9457a78f37f44a570c8ea",
      "parents": [
        "f0178ad63a71ed2ce073e2366138932dd0fa1836"
      ],
      "author": {
        "name": "Adam Tengler",
        "email": "atengler@mirantis.com",
        "time": "Thu Aug 24 15:07:08 2017 +0000"
      },
      "committer": {
        "name": "Adam Tengler",
        "email": "atengler@mirantis.com",
        "time": "Thu Aug 24 15:07:37 2017 +0000"
      },
      "message": "saltkey custom module to handle Salt minion key generation and injection to target node\n\nChange-Id: Ic40eeb417175dff9f22fb4c34509b4c495cb5c36\n"
    },
    {
      "commit": "12b4bfcb31ed7050b173b2f9f149456e6ec1dfa4",
      "tree": "4da0537fc68ca333f0d4de0661da80dc5cdd720b",
      "parents": [
        "7f6bb1624dc8791c95bb515926e1d731c7551b00"
      ],
      "author": {
        "name": "Adam Tengler",
        "email": "atengler@mirantis.com",
        "time": "Fri Jun 02 19:01:18 2017 +0000"
      },
      "committer": {
        "name": "Adam Tengler",
        "email": "atengler@mirantis.com",
        "time": "Thu Jul 13 13:47:20 2017 +0200"
      },
      "message": "Salt PostgreSQL returner for obtaining visualization data and associated Salt module\n"
    },
    {
      "commit": "86bf61a9d7854d315f443d5e24c85647a7d7b858",
      "tree": "3ffd95ea7993794c5d15769ae18bbbcb65e3d43d",
      "parents": [
        "f2f9ace4c4e61e6b2ccf30bdf52225654a4372e4"
      ],
      "author": {
        "name": "Ondrej Smola",
        "email": "ondrej.smola@tcpcloud.eu",
        "time": "Mon Nov 28 10:20:16 2016 +0100"
      },
      "committer": {
        "name": "Ondrej Smola",
        "email": "ondrej.smola@tcpcloud.eu",
        "time": "Mon Nov 28 10:20:42 2016 +0100"
      },
      "message": "added seedng\n"
    },
    {
      "commit": "f81883307b611402c2842605273cb873e80b46f9",
      "tree": "7c9c989a5013d92aaec8a1da9188fea37210fc59",
      "parents": [
        "05e3c33bdf1a5e3408746df90b66154b13f3ff15"
      ],
      "author": {
        "name": "Ales Komarek",
        "email": "ales.komarek@tcpcloud.eu",
        "time": "Wed Mar 09 11:32:08 2016 +0100"
      },
      "committer": {
        "name": "Ales Komarek",
        "email": "ales.komarek@tcpcloud.eu",
        "time": "Wed Mar 09 11:32:08 2016 +0100"
      },
      "message": "Virtng module virtual function\n"
    },
    {
      "commit": "05e3c33bdf1a5e3408746df90b66154b13f3ff15",
      "tree": "8b5f8c9a13d742091c4aab59808755004d00d6d1",
      "parents": [
        "1fb381d2cd538ec3b05662748879ffb2755cc881"
      ],
      "author": {
        "name": "Ales Komarek",
        "email": "ales.komarek@tcpcloud.eu",
        "time": "Wed Mar 09 11:17:46 2016 +0100"
      },
      "committer": {
        "name": "Ales Komarek",
        "email": "ales.komarek@tcpcloud.eu",
        "time": "Wed Mar 09 11:17:46 2016 +0100"
      },
      "message": "Virtng module\n"
    },
    {
      "commit": "1fb381d2cd538ec3b05662748879ffb2755cc881",
      "tree": "62f45729e18c8cef8bcfbb27d01e3063d3501ae0",
      "parents": [
        "43303c554cc42a471bd5545c3cea8938a5742910"
      ],
      "author": {
        "name": "smolaon",
        "email": "ondrej.smola@tcpcloud.eu",
        "time": "Wed Mar 09 11:10:58 2016 +0100"
      },
      "committer": {
        "name": "smolaon",
        "email": "ondrej.smola@tcpcloud.eu",
        "time": "Wed Mar 09 11:10:58 2016 +0100"
      },
      "message": "add custom virt module\n"
    }
  ]
}
