)]}'
{
  "log": [
    {
      "commit": "168ca7f0a474f1207ee01dab0ca2e70f34783e9c",
      "tree": "7ddf64ff526663d53483b8baa3f7ca859d7f6a36",
      "parents": [
        "6926ed8ac5f04baabf0bef16e2b30f41747b8cf9"
      ],
      "author": {
        "name": "Stephen Finucane",
        "email": "sfinucan@redhat.com",
        "time": "Mon Aug 26 10:11:03 2019 +0100"
      },
      "committer": {
        "name": "Stephen Finucane",
        "email": "sfinucan@redhat.com",
        "time": "Mon Aug 26 10:16:06 2019 +0100"
      },
      "message": "Remove deprecated PostgreSQL database driver\n\nThis was deprecated for removal in Pike. It\u0027s probably time to drop it.\nNote that the \u0027postgresql-devel\u0027/\u0027postgresql-server-dev-all\u0027 packages\nare retained since some packages still include \u0027psycopg2\u0027 in their\ngeneral requirements.\n\nChange-Id: I51e8354e99972757253ce259e6c03c91da24398c\nSigned-off-by: Stephen Finucane \u003csfinucan@redhat.com\u003e\n"
    },
    {
      "commit": "2468ceaa724aa5c8c44fb87ae223eb6687ff85f2",
      "tree": "e578f15e7736239c698cdf549d2f4459d3625a35",
      "parents": [
        "4106e46b2ed042ebeec533ac9022baa5d623ae06"
      ],
      "author": {
        "name": "Eric Fried",
        "email": "openstack@fried.cc",
        "time": "Thu Jul 25 13:18:58 2019 -0500"
      },
      "committer": {
        "name": "Eric Fried",
        "email": "openstack@fried.cc",
        "time": "Thu Aug 22 13:34:17 2019 +0000"
      },
      "message": "Merge (don\u0027t overwrite) $NOVA_CPU_CONF\n\nPer the referenced bug, $NOVA_CPU_CONF was previously being initialized\nby copying $NOVA_CONF, thereby trashing any values already configured in\n$NOVA_CPU_CONF.\n\nWith this commit, we merge the values from $NOVA_CPU_CONF in after the\ncopy.\n\nNote that this makes use of the merge_config_file function, which is\ndefined in inc/meta-config, which wasn\u0027t being sourced from every code\npath that hit start_nova_compute; so this commit also moves that import\nfrom stack.sh to functions (next to the other imports from inc/, which\nmakes sense anyway).\n\nChange-Id: Id3e2baa2221e13f512f8dcf1248e1e15b6a7597f\nCloses-Bug: #1802143\n"
    },
    {
      "commit": "4b8cba77fe3444c925b5e4fe39743d54b0243eef",
      "tree": "e4ccc899ff3f9d0fb5f676c09ce12482c7fd183e",
      "parents": [
        "984c3ae33b6a55f04a2d64ea9ffbe47e37e89953"
      ],
      "author": {
        "name": "Stephen Finucane",
        "email": "sfinucan@redhat.com",
        "time": "Tue May 21 14:17:11 2019 +0100"
      },
      "committer": {
        "name": "Stephen Finucane",
        "email": "sfinucan@redhat.com",
        "time": "Fri May 31 15:10:05 2019 +0100"
      },
      "message": "Remove n-cells, n-net and n-cauth\n\nRemove nova cells v1 support, which also allows/necessitates removing\nsupport for nova networks (which was only supported with cells v1) and\nnova-consoleauth (which was required by cells v1 but is unnecessary\notherwise).\n\nThe Depends-On isn\u0027t really necessary, but it\u0027s here to make sure this\ndoesn\u0027t merge until we _really_ have killed cells v1.\n\nI honestly expected this patch would be bigger.\n\nChange-Id: I90316208d1af42c1659d3bee386f95e38aaf2c56\nSigned-off-by: Stephen Finucane \u003csfinucan@redhat.com\u003e\nDepends-On: Ib0e0b708c46e4330e51f8f8fdfbb02d45aaf0f44\n"
    },
    {
      "commit": "5d7d891380f569deaf403aae46a9354eb0243999",
      "tree": "bb83790118b69e69c6ee9a9292822f775ec76cfb",
      "parents": [
        "9689083d74dcab67aeb34113096d4d94f749af39"
      ],
      "author": {
        "name": "Lee Yarwood",
        "email": "lyarwood@redhat.com",
        "time": "Mon Dec 03 14:21:06 2018 +0000"
      },
      "committer": {
        "name": "Lee Yarwood",
        "email": "lyarwood@redhat.com",
        "time": "Fri Jan 04 20:53:29 2019 +0000"
      },
      "message": "Drop the deprecated and now removed barrier XFS mount options\n\nBoth barrier and nobarrier were deprecated with the 4.10 kernel [1] and\nthen removed [2] with the 4.19 kernel as now used by Fedora \u003e\u003d 28. Both\nshould be safe to drop at this point.\n\n[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id\u003d4cf4573\n[2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id\u003d1c02d50\n\nChange-Id: I6871a7765e3e04122d8d546f43d36bb8415383fc\n"
    },
    {
      "commit": "c3a33fb6911a5618eb1dc2e7448652ab844a191a",
      "tree": "a7a1379a7598aacd7b25281bd01d7daa9206cec9",
      "parents": [
        "afbfbe4b820d03648020a30717c6305acca35a11"
      ],
      "author": {
        "name": "Maxim Nestratov",
        "email": "mnestratov@virtuozzo.com",
        "time": "Wed Jul 04 22:07:20 2018 +0300"
      },
      "committer": {
        "name": "Maxim Nestratov",
        "email": "mnestratov@virtuozzo.com",
        "time": "Wed Jul 04 22:07:20 2018 +0300"
      },
      "message": "Fix Virtuozzo CI\n\nDon\u0027t specify hypervisor_type\u003dvz property for hds images as nova\nnow reports only really connected hypervisors and not all supported\nby a compute host\n\nChange-Id: Ibec0856519ffe593d44d123f3b401eae19f7d95a\n"
    },
    {
      "commit": "6f38cf4ad846f394489334caae7a38b8e49b646c",
      "tree": "60ad37cfa19601c1725f65ecb49cb83b0aef0b65",
      "parents": [
        "5ebfe6dcb045355661cb2bc3d0e753c6c8444b16"
      ],
      "author": {
        "name": "Prabhat Ranjan",
        "email": "pranjank@in.ibm.com",
        "time": "Fri Mar 16 16:33:46 2018 +0530"
      },
      "committer": {
        "name": "Prabhat Ranjan",
        "email": "pranjank@in.ibm.com",
        "time": "Mon Jul 02 05:49:52 2018 +0000"
      },
      "message": "Fix wait_for_compute to work for modified compute host name\n\nWhen we change the name of compute host then devstack is breaking\nbecause it is using default host name from host.\n\nHow to change compute host name in local.conf\n[[post-config|$NOVA_CONF]]\n[DEFAULT]\nhost \u003d foo\n\nChange-Id: I4d4392f1f58f0431b10764610668565af88d392f\nSigned-off-by: Prabhat Ranjan \u003cpranjank@in.ibm.com\u003e\n"
    },
    {
      "commit": "6bab8321b44db260f9e001d8276a660d1ff56ed4",
      "tree": "c743a499d473b0a0b000757149f1d8c65f7ae9c6",
      "parents": [
        "af43b825029c2288a76734f7a08be9e16196eb45"
      ],
      "author": {
        "name": "Dirk Mueller",
        "email": "dirk@dmllr.de",
        "time": "Fri Mar 02 21:13:12 2018 +0100"
      },
      "committer": {
        "name": "Dirk Mueller",
        "email": "dirk@dmllr.de",
        "time": "Fri Mar 02 21:15:04 2018 +0100"
      },
      "message": "Remove references to hardcoded file writing in /tmp\n\n/tmp is a world writeable directory, so using hardcoded filenames\nin there is just a bad coding style (susceptible to symlink attacks).\nAvoid using it to not give a bad precedent.\n\nChange-Id: Ia66763a0e4714f2226e98dbd85600b2035bd5088\n"
    },
    {
      "commit": "a30f89b4173adf042d54fef7533d5d41ffe5282b",
      "tree": "a64b9baf46114a6ea3c399c1af9eb6777c364186",
      "parents": [
        "8408edbdfd0924634a741a1f9f03f80e11e2a970",
        "38a23d901aa1fd55dbe0d57718124c00d4f658cb"
      ],
      "author": {
        "name": "Zuul",
        "email": "zuul@review.openstack.org",
        "time": "Tue Feb 27 09:16:25 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Feb 27 09:16:25 2018 +0000"
      },
      "message": "Merge \"ceph plugin installation: umount correct device if it existed.\""
    },
    {
      "commit": "ac475bbb2a906f481b953494ba28690a716a3554",
      "tree": "c4c21326216c3ffdd30c4e6bb66ba58eaf8ab306",
      "parents": [
        "fbdefacc1d7be98d9b34a2fb7f35aada33611604"
      ],
      "author": {
        "name": "Chris Dent",
        "email": "cdent@anticdent.org",
        "time": "Wed Feb 07 18:35:40 2018 +0000"
      },
      "committer": {
        "name": "Chris Dent",
        "email": "cdent@anticdent.org",
        "time": "Wed Feb 07 19:06:36 2018 +0000"
      },
      "message": "Correct configuration setting using NUMBER_FAKE_NOVA_COMPUTE\n\nIn Change-Id Ia3843818014f7c6c7526ef3aa9676bbddb8a85ca the \u0027host\u0027\nsetting used for each of the fake compute hosts was accidentally named\n\u0027nhost\u0027 (\u0027\\nhost\u0027 was edited poorly), so the setting doesn\u0027t actually do\nanything: you create multiple nova-compute processes they think they are\nall on the same host and only one hypervisor and resource provider is\ncreated.\n\nWith the correction in place, the wait_for_compute function needs to be\nupdated to be aware of the fact that the hostnames on the compute\nservices will have a numeric prefix when the fake virt driver is used.\n\nChange-Id: I5e8430d170c0b1c4f195ebe510aff8be59e4a3bc\n"
    },
    {
      "commit": "842d54a2997adaf65369e56942e1d4f2b27aeb77",
      "tree": "ceab115e553ac6546fba14bb103e49a80c68f6ed",
      "parents": [
        "614cab33c40159f0bc10d92c9f8dc3f9783708d9"
      ],
      "author": {
        "name": "Ryota MIBU",
        "email": "r-mibu@cq.jp.nec.com",
        "time": "Mon Dec 25 16:28:50 2017 +0900"
      },
      "committer": {
        "name": "Ryota MIBU",
        "email": "r-mibu@cq.jp.nec.com",
        "time": "Wed Jan 24 23:52:56 2018 +0900"
      },
      "message": "use openstack command instead of nova command\n\nIn function \u0027get_instance_ip\u0027, \u0027nova\u0027 client command is used to get\ninstance information in order to retrive IP address of the instance.\n\nThere is no need to use the nova command, since \u0027openstack\u0027 client\nalready supports such basic operation.\n\nMoreover, \u0027openstack\u0027 client has an option to get value of specified\ncolumn. That brings more accurate way of retriving IP address.\n\nThis patch replaces nova command in \u0027get_instance_ip\u0027 by \u0027openstack\u0027\ncommand. Note, this nova command is the only one in devstack tree.\n\nChange-Id: Iee0b81a994a4da5b3f4572c2e8eb30514cd43f89\nSigned-off-by: Ryota MIBU \u003cr-mibu@cq.jp.nec.com\u003e\n"
    },
    {
      "commit": "38a23d901aa1fd55dbe0d57718124c00d4f658cb",
      "tree": "9414b327e3fa6d95a6b475ca189c2d09393e17a3",
      "parents": [
        "924b1149c8138bf1401aaef709e00f680509c33f"
      ],
      "author": {
        "name": "liumk",
        "email": "liumk@rc.inesa.com",
        "time": "Wed Dec 13 15:09:02 2017 +0800"
      },
      "committer": {
        "name": "liumk",
        "email": "liumk@rc.inesa.com",
        "time": "Wed Dec 13 15:53:08 2017 +0800"
      },
      "message": "ceph plugin installation: umount correct device if it existed.\n\nThe loopback device is created for ceph osd. If the directory\n${storage_data_dir} has been mounted when create disk, we should\numount ${storage_data_dir} instead of ${storage_data_dir}/drives/sdb1.\n\nChange-Id: Ie9fe81c820c485dab9f049cf5a81c02424925728\nCloses-Bug: #1689089\n"
    },
    {
      "commit": "7b8f1e7964cec6ec9b69c7a40136aedcb888ebc2",
      "tree": "0e50f0e21cf09fc7f95ea394be7bd920c37a18a2",
      "parents": [
        "9640d3bfbf55e74560677f9a13c241303666543a"
      ],
      "author": {
        "name": "Rafael Folco",
        "email": "rfolco@br.ibm.com",
        "time": "Mon Oct 16 19:10:09 2017 +0000"
      },
      "committer": {
        "name": "Rafael Folco",
        "email": "rfolco@br.ibm.com",
        "time": "Tue Oct 17 17:57:37 2017 +0000"
      },
      "message": "Set default disk driver to virtio-blk on Power\n\nReason is to be identical to the upstream KVM CI. Some Tempest\ntests rely on vdX virtio-blk device naming. Others simply create\ntheir own with a brand new image. Also, the scsi support on the\nCirrOS image is limited, tests booting from volume fail.\n\nChange-Id: I389147a58042aa6098a695e6dd32f3e697fbbbab\n"
    },
    {
      "commit": "c652a498fb6ae1cdd7480b590be0f1e843768666",
      "tree": "697fd5ebb664ec30d3a3338fba3c0cf87e819759",
      "parents": [
        "f56a0ae2eca9c5d77799d85b57ea7dbb7cf601dc"
      ],
      "author": {
        "name": "yuanke wei",
        "email": "weiyuanke123@gmail.com",
        "time": "Sun Sep 17 22:18:07 2017 +0800"
      },
      "committer": {
        "name": "yuanke wei",
        "email": "weiyuanke123@gmail.com",
        "time": "Fri Sep 22 19:44:43 2017 +0800"
      },
      "message": "Fix partial download problem\n\n(1) when checksum fails, better delete the broken files and try the second time;\n(2) amazon s3 is not good in mainland China, better try one more time with wget\n\nChange-Id: I24ee73f216b78bd80564863cd335e5d5a9b56360\n"
    },
    {
      "commit": "87943ab88e760598710952598424e7feded88f5c",
      "tree": "02783ac2301add71a01a72db0bba3b5fa4e39f83",
      "parents": [
        "5b42dcef5d4df2324bf50a7667b4c2f817555238",
        "d8bb220606737719bcdf7c5b4f54906f2974c71c"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Sun Sep 10 17:13:15 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Sun Sep 10 17:13:15 2017 +0000"
      },
      "message": "Merge \"Make list_images.sh emit the etcd3 tarball\""
    },
    {
      "commit": "d8bb220606737719bcdf7c5b4f54906f2974c71c",
      "tree": "58cb1f0b4714d77c1d781b78d7e15ff2a8bf2bd0",
      "parents": [
        "7e9ec03af4a94b25f0058c48c0ae7c8da504e62f"
      ],
      "author": {
        "name": "Monty Taylor",
        "email": "mordred@inaugust.com",
        "time": "Sun Sep 03 12:13:59 2017 -0500"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Tue Sep 05 09:40:40 2017 +1000"
      },
      "message": "Make list_images.sh emit the etcd3 tarball\n\nWe need this for every devstack run now, so downloading it from github\nevery time isn\u0027t the most awesome thing in the world.\n\nAdd an extra variable EXTRA_CACHE_URLS which will be appended to the\noutput of tools/image_list.sh.  This way, these files will be\ndownloaded during the daily nodepool build, but they will not be in\nthe IMAGE_LIST and hence be considered as images to upload.\n\nAdd a function get_extra_file which echos the path to a file given the\nURL.  It will first check the cache at $FILES, and if not present\ndownload it.\n\nUpdate the documentation in image_list.sh to reflect what\u0027s happening.\n\nMove the defaults for etcd variables into stackrc, since it is a base\nservice now.\n\nChange-Id: I86104824a29d973a6288df1f24b7891feb86267c\n"
    },
    {
      "commit": "c2fe916fc7c6c00cdfa0085e198eaf2ad4d915d1",
      "tree": "69a15ff7d699b2d4525746d2c6ad764f17a8435d",
      "parents": [
        "f7c250128bbff29402230a573be1339e7a713e0c"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Fri Jul 28 11:29:18 2017 +0000"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Aug 02 09:40:25 2017 -0400"
      },
      "message": "Wait for compute service to check in\n\nWith cell v2, on initial bring up, discover hosts can\u0027t run unless all\nthe compute nodes have checked in. The documentation says that you\nshould run ``nova service-list --binary nova-compute`` and see all\nyour hosts before running discover hosts. This isn\u0027t really viable in\na multinode devstack because of how things are brought up in parts.\n\nWe can however know that stack.sh will not complete before the compute\nnode is up by waiting for the compute node to check in before\ncompleting. This happens quite late in the stack.sh run, so shouldn\u0027t\nadd any extra time in most runs.\n\nCells v1 and Xenserver don\u0027t use real hostnames in the service table\n(they encode complex data that is hostname like to provide more\ntopology information than just hostnames). They are exempted from this\ncheck.\n\nRelated-Bug: #1708039\n\nChange-Id: I32eb59b9d6c225a3e93992be3a3b9f4b251d7189\n"
    },
    {
      "commit": "01c0cc6d37ccca13e0e7e48a58dcc7ba98967f1c",
      "tree": "e09d82040275bb8936f488ecfb377050e78feac3",
      "parents": [
        "dcdf8c8e60a9db0adb4ee5cae98ed7cc511ecf83"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Jul 27 20:53:57 2017 +0000"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Jul 27 20:53:57 2017 +0000"
      },
      "message": "Revert \"Wait for compute service to check in\"\n\nThis reverts commit dcdf8c8e60a9db0adb4ee5cae98ed7cc511ecf83.\n\nChange-Id: Ib14016a3bc6f2714758ad0291396233218c593c6\n"
    },
    {
      "commit": "dcdf8c8e60a9db0adb4ee5cae98ed7cc511ecf83",
      "tree": "ee3f4c5619f885d97e7e57f6b9b2b82b6ae6de4f",
      "parents": [
        "331b3de88e02d6cc480b386766f47b7a2d943125"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Tue Jul 25 19:51:08 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Jul 26 07:26:50 2017 -0400"
      },
      "message": "Wait for compute service to check in\n\nWith cell v2, on initial bring up, discover hosts can\u0027t run unless all\nthe compute nodes have checked in. The documentation says that you\nshould run ``nova service-list --binary nova-compute`` and see all\nyour hosts before running discover hosts. This isn\u0027t really viable in\na multinode devstack because of how things are brought up in parts.\n\nWe can however know that stack.sh will not complete before the compute\nnode is up by waiting for the compute node to check in before moving\nforward. This puts a few more seconds into the run, but ensures\neverything is solid in multinode environments.\n\nChange-Id: I667e6a9be3fee8bb5bfd73426eef567489e3d88d\n"
    },
    {
      "commit": "07cbc4494255efa2c394b4b60e5beaa3d10f244e",
      "tree": "ec5a8fad64755ba2e2968f1fe587d41b43f7eaa9",
      "parents": [
        "3415521d5659b2268b8984bf89ede8e34f1b76f7"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Fri Jun 30 12:29:19 2017 +1000"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Mon Jul 03 11:56:16 2017 +1000"
      },
      "message": "Put devstack-version info into separate file\n\nAs a follow on to I4c269a7f3d63ee9a976e7c3636fc3e5e8dab9ae3; the\nquoting gets tricky when putting arbitrary command-substitution\nstrings into saved echo-able strings.  As they say, \"the only winning\nmove is not to play\" :)\n\nAn alternative proposal is to not write this into a script but just\ndump info into a file.  To my mind, this has several advantages --\navoid getting involved in quoting, not dropping a script into the\nglobal environment -- it\u0027s just as easy to \"cat\" -- and the plain-text\nfile can be collected as an artifact during log collection (also moved\ngit commit line to separate line for easier parsing during log search,\netc).\n\nChange-Id: Ic7391dd087657c0daf74046e4a052c53f4eb6e1a\n"
    },
    {
      "commit": "3415521d5659b2268b8984bf89ede8e34f1b76f7",
      "tree": "6251357d7057cad26381d2981f1f3cdd433cb227",
      "parents": [
        "248d54b51b049355b22cf17a1473415ad7661f56"
      ],
      "author": {
        "name": "Manjeet Singh Bhatia",
        "email": "manjeetingh1156@gmail.com",
        "time": "Fri Jun 30 01:46:12 2017 +0000"
      },
      "committer": {
        "name": "Manjeet Singh Bhatia",
        "email": "manjeet.s.bhatia@intel.com",
        "time": "Fri Jun 30 02:01:06 2017 +0000"
      },
      "message": "Don\u0027t dump commit message header to devstack-version\n\nDumping commit message to /usr/local/bin/devstack-version\nhas broken devstack build, because of bash error in formatting.\nerror log [1].\n\n[1]. http://logs.openstack.org/20/418720/6/check/gate-tempest-dsvm-networking-odl-boron-snapshot-v2driver/ed9fd45/logs/devstacklog.txt.gz\n\nChange-Id: I4c269a7f3d63ee9a976e7c3636fc3e5e8dab9ae3\n"
    },
    {
      "commit": "2c0faca0380050b697b7d7fe6589102fa8a0cb5d",
      "tree": "88be4978c5d85231cf684df74582c3d20b260069",
      "parents": [
        "87362e572204ed7a8d66b7d4c518735bd311f256"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Jun 28 09:13:04 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Jun 28 13:53:37 2017 -0400"
      },
      "message": "Add devstack-version script\n\nThis will help in collecting information about the devstack version\nbeing used.\n\nChange-Id: I23a8ca023bda6d097051cd57ae45401806451ad5\n"
    },
    {
      "commit": "805304f2ce60b1bec7e245a0492697472ecbf788",
      "tree": "058ce5ad377653271608e43cb8eac43257fd3d9c",
      "parents": [
        "d9d10df6cd28d9bc88fb0114b26f3551586d3f14",
        "309b99ebcfa9d8bcf18c1d3eed1e52787c63f8c7"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Jun 20 09:11:25 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Jun 20 09:11:25 2017 +0000"
      },
      "message": "Merge \"Add a function to get an available random port\""
    },
    {
      "commit": "4bca73957689f3ef0bcdc7cc9049ba7baef97e7b",
      "tree": "865642bb65d982005b2f762bc4f5ee511f1166e1",
      "parents": [
        "bc8d7ef89e26b5d428b741deda3ce08d676e5d47",
        "c0644f39a47958a416a82f10f1091d07fec97896"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Jun 06 13:24:31 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Jun 06 13:24:32 2017 +0000"
      },
      "message": "Merge \"Use correct argument order in truorfalse for USE_JOURNAL\""
    },
    {
      "commit": "86f9bc7b0b227925fffdc0a46c61e793d39ee482",
      "tree": "ba0357758f7fd055f77fc04d9a06ac0979174086",
      "parents": [
        "b3ced44e37d7dea38188209b5380f7c2fcd34b1a",
        "e123edeebf1559731b451cec0fd3c06ff974bbf2"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed May 31 12:29:52 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed May 31 12:29:52 2017 +0000"
      },
      "message": "Merge \"Add global_request_id to systemd logs\""
    },
    {
      "commit": "309b99ebcfa9d8bcf18c1d3eed1e52787c63f8c7",
      "tree": "be009730bf943b1b88460b4304cc62c5d2fe20ee",
      "parents": [
        "23ed6666ed5dd6eb59a1b9f37a569577cad83663"
      ],
      "author": {
        "name": "Matthew Treinish",
        "email": "mtreinish@kortar.org",
        "time": "Tue May 23 15:18:31 2017 -0400"
      },
      "committer": {
        "name": "Matthew Treinish",
        "email": "mtreinish@kortar.org",
        "time": "Sun May 28 10:04:53 2017 -0400"
      },
      "message": "Add a function to get an available random port\n\nThis commit adds a new function get_random_port to return a randomly\navailable port from the local port range.\n\nChange-Id: Icaed180cc14602a74cdb3fd3456b690d8a4c729c\n"
    },
    {
      "commit": "e123edeebf1559731b451cec0fd3c06ff974bbf2",
      "tree": "d032c52973fa67c0dab79982db332bf080b1a2c8",
      "parents": [
        "6a62619cbc28625755a76eae08b529438eb4f281"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Tue May 23 15:53:48 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Fri May 26 07:18:32 2017 -0400"
      },
      "message": "Add global_request_id to systemd logs\n\nWith cinder supporting this now, start logging global_request_id in\nsystemd logs. It will be None for all the services until the work\nstarts coming together, but it is safe to do.\n\nChange-Id: Ic6ba1a42da88c03e43d89658b453f6a0b353e0db\n"
    },
    {
      "commit": "c0644f39a47958a416a82f10f1091d07fec97896",
      "tree": "2bee1dc5dd18df097a9c09991174a520b30a9957",
      "parents": [
        "793db3ac359f16207b1b5ca0f98dfb64c4aa2090"
      ],
      "author": {
        "name": "Kirill Zaitsev",
        "email": "k.zaitsev@me.com",
        "time": "Wed May 24 13:00:47 2017 +0300"
      },
      "committer": {
        "name": "Kirill Zaitsev",
        "email": "k.zaitsev@me.com",
        "time": "Thu May 25 12:16:11 2017 +0000"
      },
      "message": "Use correct argument order in truorfalse for USE_JOURNAL\n\ntruorfalse function from common-functions accepts default as the first\nparameter. The arguments for USE_JOURNAL were mixed up and this commit\nrestores correct order.\n\nChange-Id: Id3621b0e1910a625d6cfb8e81bd27bea82543ae9\n"
    },
    {
      "commit": "2715fd0b4acf44842ceb67760bbc348093e7d70d",
      "tree": "5bfc8a9cb0175bbd80d8abe40b1155b95aa76186",
      "parents": [
        "08de346d0354586b3e8ca2321cb3272eb9b32828"
      ],
      "author": {
        "name": "Lucian Petrut",
        "email": "lpetrut@cloudbasesolutions.com",
        "time": "Wed May 24 11:31:56 2017 +0300"
      },
      "committer": {
        "name": "Lucian Petrut",
        "email": "lpetrut@cloudbasesolutions.com",
        "time": "Wed May 24 13:36:57 2017 +0300"
      },
      "message": "Do not upload vhdx images as vhd\n\nThis change ensures that when uploading vhdx images, we use the\nproper format.\n\nAt the moment, vhdx images are uploaded as vhd, which can be\ntroublesome: first because this is misleading, second because the\nactual image format may be checked, having the image rejected.\n\nChange-Id: I9578be41ea9dc252404b7553679ac527e08a0ff6\n"
    },
    {
      "commit": "e19abda40a48f4ee33b307cf7563c162bbe33084",
      "tree": "cbefdd77689cd2396ad5aa9b46c63fcbd19533b2",
      "parents": [
        "5ff1b476e49358c06629e96a52e7cfab2a1adeed",
        "8cd310d7638843f07f4c88adaf3aed9db7668073"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed May 17 20:10:30 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed May 17 20:10:30 2017 +0000"
      },
      "message": "Merge \"Restore log colors under devstack/systemd\""
    },
    {
      "commit": "8cd310d7638843f07f4c88adaf3aed9db7668073",
      "tree": "14ea21f0f52c2804940f15e6ac0f479a33f79cf1",
      "parents": [
        "ac042d41222eea83bf360b4db89c4c7bf415457d"
      ],
      "author": {
        "name": "Eric Fried",
        "email": "efried@us.ibm.com",
        "time": "Tue May 16 13:52:03 2017 -0500"
      },
      "committer": {
        "name": "Eric Fried",
        "email": "efried@us.ibm.com",
        "time": "Tue May 16 14:56:57 2017 -0500"
      },
      "message": "Restore log colors under devstack/systemd\n\nOne of the pending issues with the conversion to systemd was the loss of\nlog coloring.  It turns out that journalctl by default strips out\ncharacters it considers \"unprintable\" - including the color codes\nemitted by the old-style logging.  However, journalctl can be made to\nprint them by adding the `-a` flag.\n\nThis change makes devstack\u0027s log formatter conf settings include color\ncodes like the old screen-based setup used to\n\nWe also remove stackrc\u0027s setting of JOURNALCTL_F, whose usage was\nremoved via I6af6d1857effaf662a9d72bd394864934eacbe70.\n\nChange-Id: I2401e267913a24d18dae355aa933072dbbdab1d8\n"
    },
    {
      "commit": "1f55d38911cec5e597e7b10cc7324804c2ba063f",
      "tree": "e15c1ed97ba13b5aa757b17b3c04ae475b135535",
      "parents": [
        "ac042d41222eea83bf360b4db89c4c7bf415457d"
      ],
      "author": {
        "name": "Dan Smith",
        "email": "dansmith@redhat.com",
        "time": "Tue May 16 08:50:53 2017 -0700"
      },
      "committer": {
        "name": "Dan Smith",
        "email": "dansmith@redhat.com",
        "time": "Tue May 16 09:23:28 2017 -0700"
      },
      "message": "Add systemd ulimit override function and set an override for NOFILE\n\nThis sets our default ulimit NOFILE to 2048, which is double what we\nset things like mysql\u0027d max_connections to.\n\nChange-Id: I5126bed1e6b9f8c64db00eae4151ac61e47b1bf8\n"
    },
    {
      "commit": "f24e29920b9ec40e924c71bbe1999e027d61390e",
      "tree": "0d661ca2e4127bc1d958339cd0ac73d04f16ccd6",
      "parents": [
        "27df725179045a2e91a34eb91e29e52d0fe5f663"
      ],
      "author": {
        "name": "Angel Noam",
        "email": "noama@mellanox.com",
        "time": "Thu May 11 15:13:29 2017 +0300"
      },
      "committer": {
        "name": "Angel Noam",
        "email": "noama@mellanox.com",
        "time": "Thu May 11 15:13:29 2017 +0300"
      },
      "message": "Add support for image name end with .raw\n\nChange-Id: If3bd42825a29755fa8e68fa5661d068c6f0019d2\n"
    },
    {
      "commit": "b2bfe5617ac43a678a9113d5c955f5456c151319",
      "tree": "6dbd57dca25f592af04d90ce1ddf672710f948bb",
      "parents": [
        "8b8441f3becbae2e704932569bff384dcc5c6713"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed May 03 09:58:21 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed May 03 18:35:54 2017 +0000"
      },
      "message": "Turn off use_journal because of eventlet concerns\n\nuse_journal uses the systemd native path for logging, however there\nare concerns that this might be negatively interacting with\neventlet. To be on the safe side fall back to stdout.\n\nThis introduces a USE_JOURNAL option which will let folks turn this\nback on for testing.\n\nThis also adjusts the debug lines. When using the journal the pid\nreported by systemd is correct. When using stdout, it will be the\nparent process id, so we need to keep it to see which child each thing\nis coming from.\n\nChange-Id: Id7891c532bf99c099252e82d511a37a49506fea9\n"
    },
    {
      "commit": "5cd44dbe6c0a641258f36d7959952bc971435b74",
      "tree": "5c2a08837c7ed7cd137f5416f8c74738079fffb6",
      "parents": [
        "def07b21f86ee70cae223785f0195c91de1f2b64"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Apr 05 07:23:37 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Apr 05 07:24:13 2017 -0400"
      },
      "message": "add use_journal if we are enabling systemd\n\nThis is going to be a new option in oslo.log, which we can start\nsetting early to make it take effect.\n\nChange-Id: If0e5e4717a1810c759058f33608fbac7543f2d85\n"
    },
    {
      "commit": "5edae54855b6b9af4283cef07e0b0d1a0f90cd3e",
      "tree": "38a1c4516ffc6f472f455363fac5bd24c5b65425",
      "parents": [
        "fb73a8fc6fa8cdc826b10c47490bc47cd0e6776a"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Tue Mar 21 20:50:24 2017 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Tue Mar 28 07:19:15 2017 -0400"
      },
      "message": "initial work to enable systemd service running\n\nDuring the PTG there was a discussion that the screen developer\nworkflow wasn\u0027t nearly as useful as it once was. There were now too\nmany services to see them all on one screen, and one of the most\ncommon service restart scenarios was not restarting one service, but a\nbunch to get code to take effect.\n\nThis implements a 3rd way of running services instead of direct\nforking via bash, or running under screen, which is running as systemd\nunits.\n\nLogging is adjusted because it\u0027s redundant to log datetime in oslo.log\nwhen journald has that.\n\nSwift needed to have services launched by absolute path to work.\n\nThis is disabled by default, but with instructions on using it. The\nlong term intent is to make this the way to run devstack, which would\nbe the same between both the gate and local use.\n\nSome changes were also needed to run_process to pass the run User\nin. A hack around the keystone uwsgi launcher was done at the same\ntime to remove a run_process feature that only keystone uwsgi uses.\n\nChange-Id: I836bf27c4cfdc449628aa7641fb96a5489d5d4e7\n"
    },
    {
      "commit": "d18d7c86581b419541b291990173f5fb33a45445",
      "tree": "3d5a51926ae80c0bd1bc8518d4759c7460f0f846",
      "parents": [
        "63666a20796407d6d3ebb2fe98d9d4e21ed99b42"
      ],
      "author": {
        "name": "kesper",
        "email": "paresh.h.sao@gmail.com",
        "time": "Thu Mar 23 05:52:33 2017 +0000"
      },
      "committer": {
        "name": "kesper",
        "email": "paresh.h.sao@gmail.com",
        "time": "Thu Mar 23 06:32:57 2017 +0000"
      },
      "message": "Change for the \u0027running_in_container\u0027 check\n\nThis commit change check of \u0027running_in_container\u0027\nmethod so that other services ironic, nova and neutron\nwill not break.\n\nChange-Id: I42eb587cfaebf37944cb10e459b8b8f7b4b4e4ba\n"
    },
    {
      "commit": "4ae92b846b45ac9ef02e9d19b5d9ddcb4ac05bf3",
      "tree": "910cdd1903f4e215ef60ed45cfa52b58e1f0c94e",
      "parents": [
        "27b1b21f016ae784e1db7309a45630c98f68eb63"
      ],
      "author": {
        "name": "Julian Edwards",
        "email": "bigjools@gmail.com",
        "time": "Thu Mar 16 09:01:39 2017 +1000"
      },
      "committer": {
        "name": "Julian Edwards",
        "email": "bigjools@gmail.com",
        "time": "Sat Mar 18 11:45:16 2017 +1000"
      },
      "message": "Make running_in_container work in more containers\n\nInstead of grepping for \u0027lxc\u0027 in /proc/1/cgroup, use systemd\u0027s\nfeatures. This now at least also works in LXD containers.\n\nChange-Id: I35e807c26f0b1fbba83ddbe04cfb4901a7a95cbe\n"
    },
    {
      "commit": "6523d6e09789076d0a430bf7b608511fcb1c406a",
      "tree": "d96213973217dd7ff0611091f6facdced64a31ce",
      "parents": [
        "73a3e2decd2e7d9fd652fb40c4e697794d9abd05",
        "afef8bf097356d7bb37c57d0daa44653c7905c17"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Mar 08 13:31:57 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Mar 08 13:31:57 2017 +0000"
      },
      "message": "Merge \"Make declared variables global\""
    },
    {
      "commit": "afef8bf097356d7bb37c57d0daa44653c7905c17",
      "tree": "0aa5c440428469fa0160285cab3ca6e5573135b2",
      "parents": [
        "6f23555c959ce2a121d57c27a7460815808ac2b6"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Mon Mar 06 14:07:23 2017 -0500"
      },
      "committer": {
        "name": "John L. Villalovos",
        "email": "john.l.villalovos@intel.com",
        "time": "Tue Mar 07 22:07:29 2017 -0800"
      },
      "message": "Make declared variables global\n\nWhen variables use the \u0027declare\u0027 directive, it is by default a local\nvariable. While other variables have global scope.\n\nFor example:\n   declare -A AN_ARRAY   # local in scope\n   foo\u003d1                 # global in scope\n\nThis causes errors to occur as some of the variables will be local only\nand others will be global.\n\nUpdate the code, as appropriate, so that variables using the \u0027declare\u0027\ndirective also include the \u0027-g\u0027 flag to have them also be global. Not\nevery instance of a declared variable has been updated.\n\nCloses-Bug: #1669509\nCo-Authored-By: John L. Villalovos \u003cjohn.l.villalovos@intel.com\u003e\nChange-Id: I2180b68fe861ad19c6d4ec0df0f9f8a528347862\n"
    },
    {
      "commit": "0bf75a471ecce8c05718644e7e070b4d5a8657d6",
      "tree": "d085135ccb42248ec62676940125e9eaeaa5fe17",
      "parents": [
        "bab8516a8503445af5582bc63493cb37098f57fb"
      ],
      "author": {
        "name": "Denis Buliga",
        "email": "dbuliga@cloudbasesolutions.com",
        "time": "Mon Feb 06 16:56:46 2017 +0200"
      },
      "committer": {
        "name": "Denis Buliga",
        "email": "dbuliga@cloudbasesolutions.com",
        "time": "Mon Feb 27 10:31:58 2017 +0200"
      },
      "message": "Skips enabling kernel bridge firewall in container\n\nCalling enable_kernel_bridge_firewall inside a\ncontainer, devstack will crash because it tries to\nload a kernel module by calling \u0027sudo modprobe\u0027 on\nnet.bridge.\n\nChange-Id: Id4718c065d5a8c507d49f38e19c2796a64221aa4\nCloses-Bug: #1662194\n"
    },
    {
      "commit": "9751be66fa45681d069af200632515c3693833d0",
      "tree": "1cfcac35fb216b9200c5c42080fa6752e136f70e",
      "parents": [
        "b6753cea8cd0e07d982048d2f856c6168fc74a92"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Tue Apr 05 12:08:57 2016 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Fri Jan 20 10:48:29 2017 -0500"
      },
      "message": "unify logging setup on all services\n\nThis provides a single setup_logging function which builds consistent\ncolorization if the config supports it, otherwise builds the identity\nstrings that we need to actually keep track of requests.\n\nChange-Id: Iffe30326a5b974ad141aed6288f61e0d6fd18ca9\n"
    },
    {
      "commit": "b6753cea8cd0e07d982048d2f856c6168fc74a92",
      "tree": "75df66abe710f6267911628fd1e380169ac84fd1",
      "parents": [
        "df09c433867a9ce204d1b14807cb5510c0bd0385"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Tue Apr 05 11:52:44 2016 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Fri Jan 20 10:48:20 2017 -0500"
      },
      "message": "simplify colorized logging setup\n\nThis makes setup_colorized_logging be a thing which takes a single\nparameter and doesn\u0027t let projects do things differently. It also\nchanges the order of values from user / project to project / user to\nrepresent the hierachy more clearly.\n\nChange-Id: I8c0ba7da54be588e3e068734feb4f78ed7c5a14a\n"
    },
    {
      "commit": "3f771b7bcb04a22c056f87e9e9bae76209fd3555",
      "tree": "e137a6cd06d0a7bc1522e8482a2318d5cb15ce5a",
      "parents": [
        "72af0d1cab71a03790688a4b7d9274440fcc3275"
      ],
      "author": {
        "name": "Ihar Hrachyshka",
        "email": "ihrachys@redhat.com",
        "time": "Sat Dec 17 04:12:24 2016 +0000"
      },
      "committer": {
        "name": "Ihar Hrachyshka",
        "email": "ihrachys@redhat.com",
        "time": "Sat Dec 17 04:14:42 2016 +0000"
      },
      "message": "iptables: don\u0027t enable arptables firewall\n\nNeutron doesn\u0027t use any arptables based firewall rules. This should\nsomewhat optimize kernel packet processing performance.\n\nI think the setting came from:\nhttp://wiki.libvirt.org/page/Net.bridge.bridge-nf-call_and_sysctl.conf\n\nbut does not apply to the way we use iptables.\n\nChange-Id: I41796c76172f5243e4f9c4902363abb1f19d0d12\nCloses-Bug: #1651765\n"
    },
    {
      "commit": "b3a210f643989603d192b32a40b2001664f8ed73",
      "tree": "4b3273d56906a1c0514dd714e802a7871d156ddf",
      "parents": [
        "ced511c593c68764d007f8b559099d353bae6f45"
      ],
      "author": {
        "name": "Ihar Hrachyshka",
        "email": "ihrachys@redhat.com",
        "time": "Thu Sep 29 13:26:30 2016 +0000"
      },
      "committer": {
        "name": "Ihar Hrachyshka",
        "email": "ihrachys@redhat.com",
        "time": "Thu Sep 29 04:26:56 2016 +0000"
      },
      "message": "Enable bridge firewalling if iptables are used\n\nWith the plan [1] to stop enabling it by Neutron iptables firewall\ndriver itself, deployment tools should catch up and enable the firewall\nthemselves.\n\nThis is needed for distributions that decided to disable the kernel\nfirewall by default (upstream kernel has it enabled). This is also\nneeded for distributions that ship newer kernels but don\u0027t load the\nbr_netfilter module before starting nova-network or Neutron iptables\nfirewall driver. In the latter case, firewall may not work, depending on\nthe order of operations executed by the driver.\n\nTo isolate devstack setups from the difference in distribution\nkernel configuration and version, the following steps are done:\n\n- we load bridge kernel module, and br_netfilter if present, to get\n  access to sysctl knobs controlling the firewall;\n- once knobs are available, we unconditionally set them to 1, to make\n  sure the firewall is in effect.\n\nMore details at:\nhttp://wiki.libvirt.org/page/Net.bridge.bridge-nf-call_and_sysctl.conf\n\n[1] I9137ea017624ac92a05f73863b77f9ee4681bbe7\n\nChange-Id: Id6bfd9595f0772a63d1096ef83ebbb6cd630fafd\nRelated-Bug: #1622914\n"
    },
    {
      "commit": "7b5c7dce53ab9e9778d1d72fcbbed565bfce65bd",
      "tree": "2321e95f7fc673cf3b14972779debf10b0853f78",
      "parents": [
        "72ed1a171ca94e0076ce99e3af63b14d88349833"
      ],
      "author": {
        "name": "Ihar Hrachyshka",
        "email": "ihrachys@redhat.com",
        "time": "Fri Jul 15 20:17:13 2016 +0200"
      },
      "committer": {
        "name": "Ihar Hrachyshka",
        "email": "ihrachys@redhat.com",
        "time": "Sun Jul 17 00:14:43 2016 +0200"
      },
      "message": "Introduce PUBLIC_BRIDGE_MTU variable to set br-ex MTU\n\nThis variable can be used to accommodate for underlying infrastructure\nthat does not provide full 1500-sized traffic, or maybe instead gives\naccess to Jumbo frames.\n\nChange-Id: I38a80bac18673a30842a7b997d0669fed5aff976\nRelated-Bug: #1603268\n"
    },
    {
      "commit": "06ba4fb98bc54f5445afb457fe22d1f88bcaadf6",
      "tree": "2b7ec6e851862f0de578923a409bf1645f33f297",
      "parents": [
        "fb501342729d3416fe7e77f335e35d807f17765b",
        "d565d62efe9a4476367be58551f6412e8e85688a"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Jul 11 23:38:55 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Jul 11 23:38:55 2016 +0000"
      },
      "message": "Merge \"ploop: specify hypervisor_type\u003dvz property for ploop images\""
    },
    {
      "commit": "fb501342729d3416fe7e77f335e35d807f17765b",
      "tree": "21defd30773124cf6a43c421d9e2d7d4ffb4fb57",
      "parents": [
        "2528d94d16d4ad7fb4e5056432af0b17ffd8dea8",
        "a9cc38a1986a7c5f78f2d1e331fcc6ac8bd1023c"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Jul 11 23:35:29 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Jul 11 23:35:30 2016 +0000"
      },
      "message": "Merge \"Modify the image property for aarch64\""
    },
    {
      "commit": "d565d62efe9a4476367be58551f6412e8e85688a",
      "tree": "4c60e474f5811453525b38f5329c52984d9092ec",
      "parents": [
        "68747349359822780e00833bca124558d835b05b"
      ],
      "author": {
        "name": "Maxim Nestratov",
        "email": "mnestratov@virtuozzo.com",
        "time": "Mon Jul 11 22:33:39 2016 +0300"
      },
      "committer": {
        "name": "Maxim Nestratov",
        "email": "mnestratov@virtuozzo.com",
        "time": "Mon Jul 11 22:37:13 2016 +0300"
      },
      "message": "ploop: specify hypervisor_type\u003dvz property for ploop images\n\nThis is necessary to make it possible to filter out compute nodes,\nwhich don\u0027t support such type of images.\n\nChange-Id: I347953876e2057e6f3dca71c2f5e8b638b85aaf8\n"
    },
    {
      "commit": "a9cc38a1986a7c5f78f2d1e331fcc6ac8bd1023c",
      "tree": "c687cf32272fcbc481f4cc58a2d3d6d3b43a6201",
      "parents": [
        "01cbe7c1438d8c7a262c1ac771531c24d08ea54f"
      ],
      "author": {
        "name": "Kevin Zhao",
        "email": "kevin.zhao@linaro.org",
        "time": "Fri Jun 24 04:30:12 2016 -0400"
      },
      "committer": {
        "name": "Kevin Zhao",
        "email": "kevin.zhao@linaro.org",
        "time": "Fri Jun 24 04:48:33 2016 -0400"
      },
      "message": "Modify the image property for aarch64\n\nIn Aarch64, the default cdrom bus is scsi, and the default scsi\ncontroller is virtio-scsi. The cdrom with virtio bus will not be\nrecognized by the instance.\n\nChange-Id: Ib8cec79f9e9083239092fa7348793ee3b64a9c94\nSigned-off-by: Kevin Zhao \u003ckevin.zhao@linaro.org\u003e\n"
    },
    {
      "commit": "21e3d1e55b3140e8b14105df05c1e5253a3d04ec",
      "tree": "9cc3365bbdf18e85e3c7412aa4821872da5f8ef1",
      "parents": [
        "dbc6a3736ddd1ed7f453898c26c1f7c550f8f8c1"
      ],
      "author": {
        "name": "Rob Crittenden",
        "email": "rcritten@redhat.com",
        "time": "Fri May 06 12:35:22 2016 -0400"
      },
      "committer": {
        "name": "Rob Crittenden",
        "email": "rcritten@redhat.com",
        "time": "Fri Jun 17 15:29:54 2016 -0400"
      },
      "message": "Make wait_for_service more robust by checking HTTP response\n\nwait_for_service just checked to see if the remote service\nwas started, not that it was returning data. This caused\nproblems when the service was behind a proxy because the\nproxy would respond quickly but the service may not have\nfully started.\n\nWait for a non-503 HTTP response code and non-7 exit code\n(connection error) from curl\n\nReturn an error if a successful connection cannot be made.\n\nChange-Id: I059a12b1b920f703f28aca0e2f352714118dee97\n"
    },
    {
      "commit": "09604349f89f59ee2ac07b4daa93bd1ae52d1b79",
      "tree": "e14426a12e8797309858873d524861533c6609c6",
      "parents": [
        "feb828b7aadd65b6bd584a1510a1b80dbe49a332"
      ],
      "author": {
        "name": "Brian Haley",
        "email": "brian.haley@hpe.com",
        "time": "Thu Jun 02 10:29:43 2016 -0400"
      },
      "committer": {
        "name": "Brian Haley",
        "email": "brian.haley@hpe.com",
        "time": "Thu Jun 02 10:33:54 2016 -0400"
      },
      "message": "Change ovs_base neutron plugin to use vercmp\n\nThis plugin was using a deprecated function, vercmp_numbers(),\nthat wasn\u0027t actually working properly because the call to\n\u0027deprecated\u0027 at the beginning was causing garbage to be\nreturned to the caller.  For example, this was always in\nstack.sh.log when using OVS:\n\n.../lib/neutron_plugins/ovs_base: line 57: [: too many arguments\n\nUpdate to use vercmp() like all other users in devstack, and\nremove all the old code.\n\nChange-Id: I352362cf59e492fa9f7725190f0243f2436ac347\n"
    },
    {
      "commit": "1441242fccd836ff91d33e1022f276740e94875b",
      "tree": "39e353cf4673458dc2b9982422e6f9d1be7840ea",
      "parents": [
        "84f83bf5ea05e60f962498e200a19ec360958538",
        "3feceb0e4a2e9527be0d5e51ff317851417654d4"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu May 19 01:07:39 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu May 19 01:07:39 2016 +0000"
      },
      "message": "Merge \"Support decompressing bz2 image\""
    },
    {
      "commit": "37f6ea619e64641f80aa59029a71b91bccf2b00a",
      "tree": "a0f48059113d71cad131a2bcc3e49e71e2abc29b",
      "parents": [
        "2e9c633683a8a05f78d4ce9dd582dbb61a558205",
        "daa7a41e219f435006f412e4ff45d93cf4c4827d"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue May 10 21:42:54 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue May 10 21:42:54 2016 +0000"
      },
      "message": "Merge \"Export the \u0027short_source\u0027 function \u0026 don\u0027t keep PS4 in sudo\""
    },
    {
      "commit": "3feceb0e4a2e9527be0d5e51ff317851417654d4",
      "tree": "eba6449c444d5ba7e3d69d2f4fce7cbccfab350d",
      "parents": [
        "251b870e859e1a03b57c8fe24c7692a5e2a10fde"
      ],
      "author": {
        "name": "Hongbin Lu",
        "email": "hongbin.lu@huawei.com",
        "time": "Sun Apr 17 11:11:58 2016 -0400"
      },
      "committer": {
        "name": "Hongbin Lu",
        "email": "hongbin.lu@huawei.com",
        "time": "Fri May 06 21:07:18 2016 -0400"
      },
      "message": "Support decompressing bz2 image\n\nCoreOS cloud image is compressed with bz2 extension [1]. In such\ncase, we need to decompress the image before uploading it to glance.\n\n[1] https://coreos.com/os/docs/latest/booting-on-openstack.html\n\nChange-Id: I705d0813d180aefaa2507c00d1ae40af07d12fcf\n"
    },
    {
      "commit": "daa7a41e219f435006f412e4ff45d93cf4c4827d",
      "tree": "1ddf73d9563961c1a095a7e7aa2f67168cd9bcc1",
      "parents": [
        "8d27280f3e845841e78acf659a7e8b605122517e"
      ],
      "author": {
        "name": "John L. Villalovos",
        "email": "john.l.villalovos@intel.com",
        "time": "Thu May 05 12:50:52 2016 -0700"
      },
      "committer": {
        "name": "John L. Villalovos",
        "email": "john.l.villalovos@intel.com",
        "time": "Fri May 06 10:50:58 2016 -0700"
      },
      "message": "Export the \u0027short_source\u0027 function \u0026 don\u0027t keep PS4 in sudo\n\nExport the \u0027short_source\u0027 function so that it will be present in the\nenvironment for child shell scripts. Do this because we are passing PS4\nto the child shell scripts and it is using \u0027short_source\u0027\n\nDon\u0027t do an \u0027env_keep\u0027 in the sudoers file for PS4, since it is\ndifficult to also pass along the \u0027short_source\u0027 function.\n\nChange-Id: I9781010d6eb336d02939c7fd47f18bedeae5ccc6\nCloses-Bug: #1563443\n"
    },
    {
      "commit": "878d7d8f13592bf254cb5f647bd3db87c191d2d3",
      "tree": "83ca58bfba21ab351b296053d096a218ed29bc9a",
      "parents": [
        "96ffde28b6e2f55f95997464aec47ae2c6cf91d3"
      ],
      "author": {
        "name": "Victor Ryzhenkin",
        "email": "vryzhenkin@mirantis.com",
        "time": "Wed Apr 27 15:15:52 2016 +0300"
      },
      "committer": {
        "name": "Sean M. Collins",
        "email": "sean@coreitpro.com",
        "time": "Thu Apr 28 15:13:58 2016 +0000"
      },
      "message": "Adjust region name for images, networks and volumes during deployment\n\nIn a multiregion installation of devstack, conflicts occur in the\ncreation of images, networks, or volume types, when the region is not\nset.\n\nThis patch adjusts commands to include the region, and\nalso adjusts the region_name in the nova configuration section of\nneutron.conf to include the region.\n\nChange-Id: Ifedff6a124fa49d57cc7b2f35916d8d96f5e5f7a\n"
    },
    {
      "commit": "646085d701049004f9b2bcdc38610f3e87579cda",
      "tree": "bd31eefb0de2422bcd17a064a7b0db5f769b123e",
      "parents": [
        "0a2a7ae8471575d887a19b9bf8b7375ea1fd7f45"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Mon Mar 21 17:00:51 2016 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Mar 23 07:37:44 2016 -0400"
      },
      "message": "Add colorful PS4\n\nPS4 can include functions, so when running in the LOG_COLORS\u003dTrue mode\nprovide a grey function line so that it\u0027s easier to visually\ndistinguish the content from the location.\n\nAlso make it so the main prompt chunks off all the common path, which\nmeans we can printf to 40 characters and have a pretty reasonable and\nreadable PS4.\n\nChange-Id: I4a10a49db97d413349bcfceeb8c4164936fbcc40\n"
    },
    {
      "commit": "c3c91c4267ae5bc70a05a56b8cfc362638f266f1",
      "tree": "172b76c7a784d996e83093d51ec4e7c0e8344730",
      "parents": [
        "ced2e414c0c3feedb00385649a70d6e991034207",
        "7ae97298c55d9ba21d2dc037cc7d9fae54afa183"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Feb 24 20:04:55 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Feb 24 20:04:55 2016 +0000"
      },
      "message": "Merge \"Minor fixes for bashate trunk\""
    },
    {
      "commit": "7ae97298c55d9ba21d2dc037cc7d9fae54afa183",
      "tree": "f6dfe9c2e05a9f2b3bb9f8b3613ed91341f0bc2f",
      "parents": [
        "f130b283d9603477c0ffa7705eec39d73798b4d2"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Tue Feb 16 14:50:53 2016 +1100"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Tue Feb 16 14:50:53 2016 +1100"
      },
      "message": "Minor fixes for bashate trunk\n\nWe don\u0027t have a new bashate release yet, but this fixes some minor\nissues when used with bashate trunk.\n\nThe only two things triggered are stricter checking of assignment in\nlocal declartions (catches quotes) and one instance of evaluating\narithmetic result in tools/xen/functions.\n\nTherefore, hopefully, this change has no effect!\n\nChange-Id: I3fd5d55236e90c2f2c25243af87adaf0c1b763e2\n"
    },
    {
      "commit": "72f530fd7aa9b2029ad141ecfe9c2d62f87f72f3",
      "tree": "884603385504ce116b6f4a093629933d1b8b148d",
      "parents": [
        "905a37aaae5a47e5a7328a4eaf0a0c97ca7e4c83"
      ],
      "author": {
        "name": "Rafael Folco",
        "email": "rfolco@br.ibm.com",
        "time": "Tue Feb 09 07:08:38 2016 -0600"
      },
      "committer": {
        "name": "Rafael Folco",
        "email": "rfolco@br.ibm.com",
        "time": "Thu Feb 11 05:47:41 2016 -0600"
      },
      "message": "Set default properties for Power: virtual console and scsi driver\n\nThis patch enables the virtual console for Power systems /dev/hvc0\nand sets scsi bus and virtio-scsi model as default.\nThe virtual console hvc0 enables full console including dmesg.\nHigh performance virtio-scsi driver keeps the efficient design of\nvirtio-blk with effective SCSI passthrough.\n\nChange-Id: I0b5cd4a15d30f06fc7993555d91d6907bd1acbd7\n"
    },
    {
      "commit": "2d02d29e27ef0e27593adeb0008ee4c74f029ca3",
      "tree": "27fbdff897e467e80bc857199bd2cf8d1e70c7c4",
      "parents": [
        "8c71ffa997ced99cb0eb93cea79e2fd969ee6145",
        "2ba36cda7940d630514a7864132837191d8c561f"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri Jan 29 05:21:09 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Jan 29 05:21:09 2016 +0000"
      },
      "message": "Merge \"Add vercmp function\""
    },
    {
      "commit": "2ca8af45a78226f29c3251cbef6449a0a51a4c1f",
      "tree": "9db1b9497e9b199ec86b1f9ca74282020e779004",
      "parents": [
        "63b7d7bcae863a22feab34079d2d4b5fc1c845f3"
      ],
      "author": {
        "name": "Atsushi SAKAI",
        "email": "sakaia@jp.fujitsu.com",
        "time": "Tue Dec 08 15:36:13 2015 +0900"
      },
      "committer": {
        "name": "Atsushi SAKAI",
        "email": "sakaia@jp.fujitsu.com",
        "time": "Thu Dec 17 20:28:54 2015 +0900"
      },
      "message": "Add 5 time measurement points\n\nrun_process           process starting time\ntest_with_retry       process starting time (for neutron legacy)\nrestart_apache_server Apache HTTPD restart time\nwait_for_service      HTTP server waiting time\ngit_timed             git command execution time\n\nexample\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nDevStack Components Timed\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nrun_process - 52 secs\ntest_with_retry - 3 secs\napt-get-update - 8 secs\npip_install - 76 secs\nrestart_apache_server - 9 secs\nwait_for_service - 11 secs\ngit_timed - 127 secs\napt-get - 15 secs\n\nChange-Id: I66140726617450cd9fe9b702092cacf053a20065\n"
    },
    {
      "commit": "523f48803609b35350b624244fa73b1030c1d5fa",
      "tree": "17f99ab223f42eec58523fa89a49f243efba754b",
      "parents": [
        "307730acd9d271bc4c3d44f2dfed0eab67e1657d"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Tue Oct 13 11:03:03 2015 +1100"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Fri Nov 27 15:36:04 2015 +1100"
      },
      "message": "Namespace XTRACE commands\n\nI noticed this when debugging some grenade issues failures.\n\nAn include of grenade/functions stores the current value of XTRACE\n(on) and disables xtrace for the rest of the import.\n\nWe then include devstack\u0027s \"functions\" library, which now overwrites\nthe stored value of XTRACE the current state; i.e. disabled.\n\nWhen it finishes it restores the prior state (disabled), and then\ngrenade restores the same value of XTRACE (disabled).\n\nThe result is that xtrace is incorrectly disabled until the next time\nit just happens to be turned on.\n\nThe solution is to name-space the store of the current-value of xtrace\nso when we finish sourcing a file, we always restore the tracing value\nto what it was when we entered.\n\nSome files had already discovered this.  In general there is\ninconsistency around the setting of the variable, and a lot of obvious\ncopy-paste.  This brings consistency across all files by using\n_XTRACE_* prefixes for the sotre/restore of tracing values.\n\nChange-Id: Iba7739eada5711d9c269cb4127fa712e9f961695\n"
    },
    {
      "commit": "2ba36cda7940d630514a7864132837191d8c561f",
      "tree": "8ccd27a24002f60afa2ea532dffe75cc3108200e",
      "parents": [
        "bcad037697bf062dc1f3471893c6225dd42dfffc"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Thu Nov 12 13:52:36 2015 +1100"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Thu Nov 19 09:37:33 2015 +1100"
      },
      "message": "Add vercmp function\n\nThe existing vercmp_numbers function only handles, as the name says,\nnumbers.  I noticed that \"sort\" has had a version sort for a long time\n[1] and, rather than re-implement it badly, use this as a version of\nvercmp that works a bit more naturally.\n\nThis is intended to be used in an \"if\" statement as in\n\n  prog_ver\u003d$(prog_ver --version | grep ...)\n  if vercmp $prog_ver \"\u003c\" 2.0; then\n     ...\n  fi\n\nA test-case is added to test the basic features and some edge-cases.\n\n[1] http://git.savannah.gnu.org/gitweb/?p\u003dcoreutils.git;a\u003dcommitdiff;h\u003d4c9fae4e97d95a9f89d1399a8aeb03051f0fec96\n\nChange-Id: Ie55283acdc40a095b80b2631a55310072883ad0d\n"
    },
    {
      "commit": "33c9a67ead4b61a9eb423f71ca4f8e062c3b5ebd",
      "tree": "98caf8ff2fc95e33520d86aaca5ade57bd202bcb",
      "parents": [
        "1987cfb1bea276202926d5de624754ed6f5c8e7f"
      ],
      "author": {
        "name": "Atsushi SAKAI",
        "email": "sakaia@jp.fujitsu.com",
        "time": "Thu Nov 12 19:50:00 2015 +0900"
      },
      "committer": {
        "name": "Atsushi SAKAI",
        "email": "sakaia@jp.fujitsu.com",
        "time": "Thu Nov 12 19:53:06 2015 +0900"
      },
      "message": "Fix typos on three comments and one message\n\nFixes typos on three comments and one message\nin functions/functions-common\n\nChange-Id: I2c926ca29b284afd4534b92860fa46f248676a83\n"
    },
    {
      "commit": "d111182f218094dfdd88bda63af024c0c6e5d8cd",
      "tree": "6efbaec54afc4965767c187b5743c25b8346f438",
      "parents": [
        "5a98d4f7d0a1cf00f2aca9e0f3f6cdc285c1ee79",
        "ada886dd43ccc07f48d3a82d8d3d840fe5096c03"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Oct 14 02:43:52 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Oct 14 02:43:52 2015 +0000"
      },
      "message": "Merge \"Don\u0027t mix declaration and set of locals\""
    },
    {
      "commit": "72ad942796adb03c96154cd1df4f97ad775e6092",
      "tree": "c453685fb6f1e1a857609c6229ab21592c2b582e",
      "parents": [
        "1de9e330de9fd509fcdbe04c4722951b3acf199c"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Oct 07 11:51:40 2015 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Oct 07 15:15:16 2015 -0400"
      },
      "message": "use deprecated function instead of modifying global\n\nIt\u0027s safer to run this through a common function to let us make\nchanges later.\n\nChange-Id: Ic661824027577e1946726c1843a29ac8325915bf\n"
    },
    {
      "commit": "ada886dd43ccc07f48d3a82d8d3d840fe5096c03",
      "tree": "93d62f1c82edc08d813b7f9f7eb9270e7024e055",
      "parents": [
        "433a9b10ddd6fa67d7459c4943a92ce4f488cebc"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Wed Oct 07 14:06:26 2015 +1100"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Wed Oct 07 17:03:32 2015 +1100"
      },
      "message": "Don\u0027t mix declaration and set of locals\n\nIa0957b47187c3dcadd46154b17022c4213781112 proposes to have bashate\nfind instances of setting a local value.  The issue is that \"local\"\nalways returns 0, thus hiding any failure in the commands running to\nset the variable.\n\nThis is an automated replacement of such instances\n\nDepends-On: I676c805e8f0401f75cc5367eee83b3d880cdef81\nChange-Id: I9c8912a8fd596535589b207d7fc553b9d951d3fe\n"
    },
    {
      "commit": "5aeea6ae3e2434d7b08bce2da672061cdba08ab0",
      "tree": "4a5af1dc6f82a74e81f186350190e279515efe45",
      "parents": [
        "c4c08686f81384c90386228a45583667d877b6ef"
      ],
      "author": {
        "name": "Peter Stachowski",
        "email": "peter@tesora.com",
        "time": "Tue Sep 22 19:38:02 2015 +0000"
      },
      "committer": {
        "name": "Peter Stachowski",
        "email": "peter@tesora.com",
        "time": "Tue Sep 22 19:40:40 2015 +0000"
      },
      "message": "Removed unused TOKEN from upload_image\n\nChangeset https://review.openstack.org/#/c/225426/ changed how images\nwere uploaded into Glance, however the (now) unused TOKEN variable\nand function argument to upload_image remained.\n\nThese have been removed.\n\nChange-Id: I9910c469f72d52e56111048cc24ea3c992c1d480\n"
    },
    {
      "commit": "31c313d3a35e1b222fdb3aa72993a27c288d10bb",
      "tree": "03ebcf103b882116d767b0229217fc1e460ea67d",
      "parents": [
        "7224eecb98883a91e9da445baefc23a194e8fd68"
      ],
      "author": {
        "name": "Monty Taylor",
        "email": "mordred@inaugust.com",
        "time": "Sat Sep 19 11:35:22 2015 -0400"
      },
      "committer": {
        "name": "Monty Taylor",
        "email": "mordred@inaugust.com",
        "time": "Mon Sep 21 15:45:33 2015 -0500"
      },
      "message": "Use normal API not token/endpoint for image uploads\n\nThere is no reason to use keystone token bootstrapping for image\nuploads. Glance is a service, and images can be uploaded to it normally\nwithout special shenanigans.\n\nDepends-On: If7b81c4a6746c8a1eb0302c96e045fb0f457d67b\nChange-Id: I7092fb10cbe243e091789134263fab081af0c7f4\n"
    },
    {
      "commit": "4d223251e8b12a1118d8f089615e091be1a90883",
      "tree": "9f42ea03b77f707c5633066156a666ba9be471e7",
      "parents": [
        "d103f47ffac9282a3abae535e50077c5755e0079",
        "4ffb4541452a95ae964c562c89e31c49e39dbaa7"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Aug 17 19:38:05 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Aug 17 19:38:05 2015 +0000"
      },
      "message": "Merge \"Add header guard to functions/functions-common\""
    },
    {
      "commit": "54ee8a82a837eb2b28746c77e0259ec326ab15cc",
      "tree": "f56879db0d48df7f3a15e3cd970c64528f141d4b",
      "parents": [
        "32a3e322b428d83fa5922c1b9e6adce047064bd6"
      ],
      "author": {
        "name": "Maxim Nestratov",
        "email": "mnestratov@virtuozzo.com",
        "time": "Wed Jul 15 11:47:11 2015 +0300"
      },
      "committer": {
        "name": "Maxim Nestratov",
        "email": "mnestratov@virtuozzo.com",
        "time": "Wed Jul 15 11:53:12 2015 +0300"
      },
      "message": "Make it possible to upload ploop images\n\nAdd support of ploop images (*.hds extension) for both exe and hvm types.\nIn devstack we assume that images have \u0027-exe\u0027 and \u0027-hvm\u0027 suffixes in\ntheir names correspondently.\n\nChange-Id: I1c074876c530be0535a6e02e764d67a4ebcbbbe5\n"
    },
    {
      "commit": "4ffb4541452a95ae964c562c89e31c49e39dbaa7",
      "tree": "eec7961348f5512ea3b610e864a03d3d7d1ce02c",
      "parents": [
        "04c0f0be2643ef95380a7dcf4b510d86ff11cd58"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Tue Jun 30 11:00:32 2015 +1000"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Tue Jun 30 13:48:53 2015 +1000"
      },
      "message": "Add header guard to functions/functions-common\n\nTo avoid sourcing this twice and getting globals mixed up,\nparticularly when using multiple plugins, add a \"header guard\" that\nensures we only source it once.\n\nIn general I don\u0027t think functions/functions-common have been written\nor considered to be idempotent.  I don\u0027t think going down that path is\ngoing to be a long-term solution as it\u0027s easy to break.\n\nChange-Id: Idca49eb996d2b7ff3779ec27ed672a2da7852590\nCloses-Bug: #1469178\n"
    },
    {
      "commit": "9aad1b99fd30eba94e8d2173834a12a2a39f8a9f",
      "tree": "482be24717b1e2a611e541a5ddc14eeb63d6343f",
      "parents": [
        "c8305cd124e9c663493f2002d94b4749074ef132",
        "af9bf8663b43a2cc80f2c3adb09b8aa3641f99ab"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Mon Apr 20 13:39:33 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Mon Apr 20 13:39:33 2015 +0000"
      },
      "message": "Merge \"refactor ping_check\""
    },
    {
      "commit": "af9bf8663b43a2cc80f2c3adb09b8aa3641f99ab",
      "tree": "fe6ba625393f321dbed1e9631915082ebc8a0432",
      "parents": [
        "1235581559087974580c0e5f6e3ade82e9030a70"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Apr 16 08:58:32 2015 -0400"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Fri Apr 17 07:39:28 2015 -0400"
      },
      "message": "refactor ping_check\n\nEncapsulate all the neutron specific things you have to do ping a\nneutron guest into a separate script. Refactor the main ping_check so\nall logic is contained within it.\n\nChange-Id: Ic79d8e3a2473b978551a5635a11dba07e1020bb2\n"
    },
    {
      "commit": "fcc3f6ee986c1166c001774052c05b5d974593ea",
      "tree": "11c0c603d5cf890dfda5c0e417e631a52401fb22",
      "parents": [
        "9860876f5dbb07826b680143a4e111ad580053fe"
      ],
      "author": {
        "name": "Clark Laughlin",
        "email": "clark.laughlin@linaro.org",
        "time": "Tue Apr 07 16:31:47 2015 +0000"
      },
      "committer": {
        "name": "Andrew McDermott",
        "email": "andrew.mcdermott@linaro.org",
        "time": "Thu Apr 09 08:55:56 2015 +0000"
      },
      "message": "Add support for arm64 images\n\nThis patch enables proper support for arm64 images by disabling VNC support\nand adding several properties to the image in glance that are necessary to\nboot correctly:\n  hw_cdrom_bus\u003dvirtio\n  hw_machine_type\u003dvirt\n  os_command_line\u003d\u0027console\u003dttyAMA0\u0027\n\nChange-Id: I68c9a5e0e083af2f92875c3bdf70df750f6e4d8f\n"
    },
    {
      "commit": "32d6bc6ad1f5d857c8e34e15001f8eb8666c601c",
      "tree": "ade89fecd1c5db1a4090df0c6b1cb1eda6d96c69",
      "parents": [
        "43479db9105db75d7762e9cfbc950841725fa644"
      ],
      "author": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Sun Mar 29 14:16:44 2015 -0500"
      },
      "committer": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Sun Mar 29 22:29:28 2015 -0500"
      },
      "message": "Add inc/rootwrap\n\nRootwrap shouldn\u0027t be a unique snowflake.  Plus the binaries tend\nto be called assuming PATH will find them.  Not so with venvs\nso we need to work around that brokenness.\n\nConfigure Cinder and Nova to use configure_rootwrap().\n\nChange-Id: I8ee1f66014875caf20a2d14ff6ef3672673ba85a\n"
    },
    {
      "commit": "dc97cb71e85fc807d2cce6f054c785922d322eb9",
      "tree": "86affcfbc7054c209c2ab0a4c3f7955d5e1bf16f",
      "parents": [
        "9720239618189c13734aa32aabee9252707f2db9"
      ],
      "author": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Sat Mar 28 08:20:50 2015 -0500"
      },
      "committer": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Sat Mar 28 14:35:12 2015 -0500"
      },
      "message": "Mostly docs cleanups\n\nFix documentation build errors and RST formatting\n\nChange-Id: Id93153400c5b069dd9d772381558c7085f64c207\n"
    },
    {
      "commit": "bf2ad7015d068f9a85c01813cea0aa79143b1d0f",
      "tree": "ab1a91e8e13a882ee4dab1a70141c31133a5815b",
      "parents": [
        "924079b8905669a646cfa328d6bf52e56b79acdc"
      ],
      "author": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Mon Mar 09 15:16:10 2015 -0500"
      },
      "committer": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Mon Mar 09 22:52:19 2015 -0500"
      },
      "message": "Move configuration functions into inc/*\n\n* config/INI functions from functions-common to to inc/ini-config\n* local.conf meta-config functions from lib/config to inc/meta-config\n\nChange-Id: I00fab724075a693529273878875cfd292d00b18a\n"
    },
    {
      "commit": "b5ab6468c9784d5f5f21e808034f462d5c9d91b2",
      "tree": "8338c7a58eb0a5f653e42c57ec17a8fb2d3c8931",
      "parents": [
        "b5d1de0a93924074cc0368f0fe94da78ebcfa01c"
      ],
      "author": {
        "name": "sridhargaddam",
        "email": "sridhar.gaddam@enovance.com",
        "time": "Tue Feb 24 07:23:24 2015 +0000"
      },
      "committer": {
        "name": "sridhargaddam",
        "email": "sridhar.gaddam@enovance.com",
        "time": "Mon Mar 02 07:42:36 2015 +0000"
      },
      "message": "Fix curl issue when SERVICE_HOST is defined to IPv6 address\n\nWhen SERVICE_HOST is defined to literal IPv6 address\n(i.e., [fdf8:f53b:82e4::179]) we will have to include\n--globoff option for curl to be able to reach the various\nopenstack services. Using globoff works for both IPv6 and\nIPv4 urls, so its safe to include this option for all curl\nstatements in devstack.\n\nCloses-Bug: #1424943\nChange-Id: I2afc16f2f94d7d7069b0ba61bc8348c03413e4e7\n"
    },
    {
      "commit": "490430dbe3b7d9979b4623f2c327bb0a74436401",
      "tree": "527289f426c49bb51234a1e0621a0afe1ffac20e",
      "parents": [
        "a1b82cc1b5a7172c3fdf17d2c3f0725660911ad7"
      ],
      "author": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Fri Jan 30 14:38:35 2015 -0600"
      },
      "committer": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Fri Jan 30 14:59:48 2015 -0600"
      },
      "message": "Split functions-common: python functions\n\nMove Python-related functions into inc/python\n\nShould be transparent to all callers as it is sourced from functions-common\n\nChange-Id: I88043830cef9211b4e0baa91bfcc7a92125afa9f\n"
    },
    {
      "commit": "537532931da4103e1a873684476dac6d7fe56489",
      "tree": "e35fe8f6032774a831ccfbf2a4d72a68654bbb38",
      "parents": [
        "5f6f43ed9f67a86cad03c1d0c673429814467d6d"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Dec 04 19:38:15 2014 -0500"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Thu Jan 15 13:06:14 2015 -0500"
      },
      "message": "Make changes such that -o nounset runs\n\nThis makes a bunch of variable cleanups that will let -o nounset\nfunction, for the time being we hide nounset behind another setting\nvariable so that it\u0027s not on by default.\n\nBecause this is bash, and things are only executed on demand, this\nprobably only works in the config it was run in. Expect cleaning up\nall the paths to be something that takes quite a while.\n\nThis also includes a new set of unit tests around the trueorfalse\nfunction, because my change in how it worked, didn\u0027t. Tests are good\nm\u0027kay.\n\nChange-Id: I71a896623ea9e1f042a73dc0678ce85acf0dc87d\n"
    },
    {
      "commit": "057d6ae2255f8895baada8d00767ffa71c8615ac",
      "tree": "5fa1a6c1c6900b9ceb9ec9d79bc43f08b0f7e934",
      "parents": [
        "cc6dbee0a6aef468b30f33c2c59b7409915a1409"
      ],
      "author": {
        "name": "Attila Fazekas",
        "email": "afazekas@redhat.com",
        "time": "Tue Jan 13 14:01:26 2015 +0100"
      },
      "committer": {
        "name": "Attila Fazekas",
        "email": "afazekas@redhat.com",
        "time": "Tue Jan 13 14:01:26 2015 +0100"
      },
      "message": "wget less verbose\n\nwget is too verbose in devstack logs [1] on image download.\n\nChanging the progress bar style to giga, in order\nto be less verbose.\n\nhttp://logs.openstack.org/73/146573/2/check/\ncheck-tempest-dsvm-full-juno/41ba988/logs/devstacklog.txt.gz#_2015-01-13_11_34_15_330\n\nChange-Id: Ic5304893f4c97c50e7a2f29ad5cd77dba3d5a9dd\n"
    },
    {
      "commit": "d09a1db5a449fc758bf840858f6fecba173705b3",
      "tree": "19f949a600c09109c306dd86ad830c474693bb58",
      "parents": [
        "3fe578d41d52577e6af4dc948287dfbc2eb06f46",
        "e263c82e48a431e502bd6baceb6dfcfdc1750cbb"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Dec 10 20:32:15 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Dec 10 20:32:15 2014 +0000"
      },
      "message": "Merge \"add shebang lines to all lib files\""
    },
    {
      "commit": "e263c82e48a431e502bd6baceb6dfcfdc1750cbb",
      "tree": "5ca592e668dedb4debc6c7170f3abf37cc4bc0c6",
      "parents": [
        "2f8e08b5728f4272b415b1c0aab8ff62eae29b06"
      ],
      "author": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Fri Dec 05 14:25:28 2014 -0500"
      },
      "committer": {
        "name": "Sean Dague",
        "email": "sean@dague.net",
        "time": "Wed Dec 10 11:28:05 2014 -0500"
      },
      "message": "add shebang lines to all lib files\n\nWith gerrit 2.8, and the new change screen, this will trigger syntax\nhighlighting in gerrit. Thus making reviewing code a lot nicer.\n\nChange-Id: Id238748417ffab53e02d59413dba66f61e724383\n"
    },
    {
      "commit": "88cde0b3da7102cd28b3b44fbf6112b17303b27d",
      "tree": "eed8071cad05f48a52b0e8c85f43b7000d4722b7",
      "parents": [
        "dead777ea380df7bc1969e9807f90159f512259e"
      ],
      "author": {
        "name": "Sabari Kumar Murugesan",
        "email": "smurugesan@vmware.com",
        "time": "Thu Dec 04 17:48:26 2014 -0800"
      },
      "committer": {
        "name": "Sabari Kumar Murugesan",
        "email": "smurugesan@vmware.com",
        "time": "Thu Dec 04 20:33:41 2014 -0800"
      },
      "message": "VMware: add default image metadata for hw_vif_model\n\nDuring glance image-create we are currently setting a null value\nfor the hw_vif_model, if we are unable to introspect from the vmdk\nfile.\n\nThis patch adds a default value if not found.\n\nChange-Id: I6d0f551b18f03e2a799ae14c3347652a285693f0\n"
    },
    {
      "commit": "e5dbec252aac0ca665696a5b69267f13882478c2",
      "tree": "7a7fc675e9c6ef6cd725b7136ab68836d438ef7c",
      "parents": [
        "f33e76bf9bd9a3bc39e8b3b99257a4ae98a10d25",
        "3324f19f5aeb3c8933447752dbc2c1b8c7f9b2de"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Wed Oct 08 22:14:51 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Wed Oct 08 22:14:51 2014 +0000"
      },
      "message": "Merge \"Fix docs build errors\""
    },
    {
      "commit": "3324f19f5aeb3c8933447752dbc2c1b8c7f9b2de",
      "tree": "84248dfdde0ce32a415c565db32dcb04776ea51e",
      "parents": [
        "7672ad1dbc00ec5ff80f3aa670404e413e86e506"
      ],
      "author": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Thu Sep 18 09:26:39 2014 -0500"
      },
      "committer": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Thu Oct 02 15:30:50 2014 -0500"
      },
      "message": "Fix docs build errors\n\nFix shocco errors during docs generation\n\nCloses-Bug: 1362691\nChange-Id: I2b7fb008c89f0b4e7280b2d0a054320765e83e47\n"
    },
    {
      "commit": "944b28280b86bba7592b1c7a2032dbd0eaa39014",
      "tree": "536f4a12c918cdef4077be75d032270244966ae3",
      "parents": [
        "c53e83601a4ffc572ae99b3a4f330a940066cc1d"
      ],
      "author": {
        "name": "Joe Gordon",
        "email": "joe.gordon0@gmail.com",
        "time": "Wed Oct 01 18:21:08 2014 -0700"
      },
      "committer": {
        "name": "Joe Gordon",
        "email": "joe.gordon0@gmail.com",
        "time": "Wed Oct 01 19:52:23 2014 -0700"
      },
      "message": "Drop workaround for pip \u003c 1.4\n\nNow that we are on pip 1.5.6 lets drop the workaround to make pip 1.4\nwork. As this is a development/testing tool requiring a newer pip\nshouldn\u0027t be an issue. Also stack.sh installs pip by default.\n\nWork around introduced in https://github.com/pypa/pip/issues/709\n\nChange-Id: I0e7aad1d21f4fce4c020ce36685bb56893c66bdc\n"
    },
    {
      "commit": "18d4778cf7bffa60eb2e996a13c129c64f83575f",
      "tree": "d6d934b05026d32d6942b34a5e3a359202b3996c",
      "parents": [
        "d60c10d6dbe44445aaab9e3fcc0127e39e989f40"
      ],
      "author": {
        "name": "Rob Crittenden",
        "email": "rcritten@redhat.com",
        "time": "Wed Mar 19 17:47:42 2014 -0400"
      },
      "committer": {
        "name": "Rob Crittenden",
        "email": "rcritten@redhat.com",
        "time": "Wed Sep 24 18:36:37 2014 -0400"
      },
      "message": "Configure endpoints to use SSL natively or via proxy\n\nConfigure nova, cinder, glance, swift and neutron to use SSL\non the endpoints using either SSL natively or via a TLS proxy\nusing stud.\n\nTo enable SSL via proxy, in local.conf add\n\nENABLED_SERVICES+\u003d,tls-proxy\n\nThis will create a new test root CA, a subordinate CA and an SSL\nserver cert. It uses the value of hostname -f for the certificate\nsubject. The CA certicates are also added to the system CA bundle.\n\nTo enable SSL natively, in local.conf add:\n\nUSE_SSL\u003dTrue\n\nNative SSL by default will also use the devstack-generate root and\nsubordinate CA.\n\nYou can override this on a per-service basis by setting\n\n\u003cSERVICE\u003e_SSL_CERT\u003d/path/to/cert\n\u003cSERVICE\u003e_SSL_KEY\u003d/path/to/key\n\u003cSERVICE\u003e_SSL_PATH\u003d/path/to/ca\n\nYou should also set SERVICE_HOST to the FQDN of the host. This\nvalue defaults to the host IP address.\n\nChange-Id: I36fe56c063ca921131ad98439bd452cb135916ac\nCloses-Bug: 1328226\n"
    },
    {
      "commit": "b4495eb410e3ad348700f127dcf7c0562014c325",
      "tree": "a2af0cc87edd09d37ab764ebc014264c60b79a00",
      "parents": [
        "3d458eb703e52606d8aa8d58757285e61cb47b8b"
      ],
      "author": {
        "name": "Noboru Iwamatsu",
        "email": "n_iwamatsu@jp.fujitsu.com",
        "time": "Wed Jul 02 18:31:31 2014 +0900"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Mon Sep 08 15:59:29 2014 +1000"
      },
      "message": "Use mod_version to clean-up apache version matching\n\nThis change uses mod_version (shipped by default on everything we care\nabout) to set-up version-specific config within apache rather than\nwithin devstack scripts.\n\nClean up the horizon and keystone config file generation to use the\ninternal apache matching.\n\nSince I6478db385fda2fa1c75ced12d3e886b2e1152852 the apache matching in\n\u0027functions\u0027 is actually duplicated.  just leave get_apache_version in\nlib/apache as it is used for config-file name matching in there.\n\nChange-Id: I6478db385fda2fa1c75ced12d3e886b2e1152852\n"
    },
    {
      "commit": "a3ecab6618cb7c9ca8089d8b24ac503ed5a719e7",
      "tree": "bb6a2ff4fdc267dd607b5c4011832bc3ddb84893",
      "parents": [
        "5dd1778909c7c256bdef79cd236fb0d95d8a09dd",
        "8d3ac2df582730717392798ae46b436238d91b70"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Fri Aug 15 00:50:41 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Fri Aug 15 00:50:41 2014 +0000"
      },
      "message": "Merge \"Modify `glance image-create` commands to use openstackclient\""
    },
    {
      "commit": "ca8239449fbdbc3a73f691683be2ec9d4a941ff6",
      "tree": "e4f66d34a6af35adf39f05b03c229b0bba0b3ae4",
      "parents": [
        "d8baf23634fb6654b71f79314a8d60dbd58cece4"
      ],
      "author": {
        "name": "Alessandro Pilotti",
        "email": "apilotti@cloudbasesolutions.com",
        "time": "Thu Aug 07 02:05:26 2014 +0300"
      },
      "committer": {
        "name": "Alessandro Pilotti",
        "email": "apilotti@cloudbasesolutions.com",
        "time": "Thu Aug 07 19:30:34 2014 +0300"
      },
      "message": "Adds support for Hyper-V image formats\n\nAdds support for VHD and VHDX image formats, including gz compression.\n\nChange-Id: I9b143c9883b947397b435a671f13703f78019d23\nCloses-bug: #1353726\n"
    },
    {
      "commit": "8d3ac2df582730717392798ae46b436238d91b70",
      "tree": "4a0db330890963c77e92be75c7877e4c7e2d20b0",
      "parents": [
        "5acf159c72fad931031d9768ae02575240a5ede9"
      ],
      "author": {
        "name": "Steve Martinelli",
        "email": "stevemar@ca.ibm.com",
        "time": "Sat Aug 02 23:47:15 2014 -0400"
      },
      "committer": {
        "name": "Steve Martinelli",
        "email": "stevemar@ca.ibm.com",
        "time": "Sat Aug 02 23:47:15 2014 -0400"
      },
      "message": "Modify `glance image-create` commands to use openstackclient\n\nChange `glance image-create` commands to use `openstack image create`,\nin an effort to unify the CLI.\n\nChange-Id: I96cef118daf931b648c0483525ac7d2287fec2e0\n"
    },
    {
      "commit": "5acf159c72fad931031d9768ae02575240a5ede9",
      "tree": "077cdc05957f449d6c38b2e7c1a8d221da53f5fc",
      "parents": [
        "a0c6d1e954003b8e24b33d88ead8f506c5354204",
        "e9f7667050c7385c734e6d653b2ee63b9c7dc0ed"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Sat Aug 02 21:49:29 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Sat Aug 02 21:49:29 2014 +0000"
      },
      "message": "Merge \"Clean up local variable usage - upload_image()\""
    },
    {
      "commit": "e9f7667050c7385c734e6d653b2ee63b9c7dc0ed",
      "tree": "805e3160ada87a29ffeb74aeea23135e602b8ef6",
      "parents": [
        "d3121f649d672fdaf757655b94ecd68c71b56b8e"
      ],
      "author": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Fri Jul 25 11:09:36 2014 -0500"
      },
      "committer": {
        "name": "Dean Troyer",
        "email": "dtroyer@gmail.com",
        "time": "Tue Jul 29 15:40:45 2014 -0500"
      },
      "message": "Clean up local variable usage - upload_image()\n\nCleans up the rather coplex upload_image() function\n\nChange-Id: Ie1ef200b905dd5d17ef887390d620817208f2bf5\n"
    },
    {
      "commit": "36f2f024dbeafdc4cbd7a76ed1c96d28fea61fb4",
      "tree": "e1e3fe650a3a9a8c120aa495ca0a1873106f3dd2",
      "parents": [
        "097183356e60f6375061914e89816c8faafb3a6f"
      ],
      "author": {
        "name": "Sébastien Han",
        "email": "sebastien.han@enovance.com",
        "time": "Mon Jan 06 18:09:26 2014 +0100"
      },
      "committer": {
        "name": "Sébastien Han",
        "email": "sebastien.han@enovance.com",
        "time": "Wed Jul 23 16:13:45 2014 +0200"
      },
      "message": "Implement Ceph backend for Glance / Cinder / Nova\n\nThe new lib installs a full Ceph cluster. It can be managed\nby the service init scripts. Ceph can also be installed in\nstandalone without any other components.\nThis implementation adds the auto-configuration for\nthe following services with Ceph:\n\n* Glance\n* Cinder\n* Cinder backup\n* Nova\n\nTo enable Ceph simply add: ENABLED_SERVICES+\u003d,ceph to your localrc.\nIf you want to play with the Ceph replication, you can use the\nCEPH_REPLICAS option and set a replica. This replica will be used for\nevery pools (Glance, Cinder, Cinder backup and Nova). The size of the\nloopback disk used for Ceph can also be managed thanks to the\nCEPH_LOOPBACK_DISK_SIZE option.\n\nGoing further pools, users and PGs are configurable as well. The\nconvention is \u003cSERVICE_NAME_IN_CAPITAL\u003e_CEPH_\u003cOPTION\u003e where services are\nGLANCE, CINDER, NOVA, CINDER_BAK. Let\u0027s take the example of Cinder:\n\n* CINDER_CEPH_POOL\n* CINDER_CEPH_USER\n* CINDER_CEPH_POOL_PG\n* CINDER_CEPH_POOL_PGP\n\n** Only works on Ubuntu Trusty, Fedora 19/20 or later **\n\nChange-Id: Ifec850ba8e1e5263234ef428669150c76cfdb6ad\nImplements: blueprint implement-ceph-backend\nSigned-off-by: Sébastien Han \u003csebastien.han@enovance.com\u003e\n"
    },
    {
      "commit": "f3939bf07752f19096c10f30684b0efb11b2676e",
      "tree": "a2141ba0ad13e7d87e92142a65abe79d675fefa8",
      "parents": [
        "47e7a1431999e4862e36098ee05d945400b4274d",
        "50e53925e107526915d9bd06b48884c9a574d083"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Thu Jun 19 22:47:39 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Thu Jun 19 22:47:39 2014 +0000"
      },
      "message": "Merge \"Use correct path when extracting tar.gz image\""
    },
    {
      "commit": "50e53925e107526915d9bd06b48884c9a574d083",
      "tree": "a40872b970ac358c1340af62dbf6ea7e9f76f11f",
      "parents": [
        "c1699c27d11b48b29eaba41ae4c74c5464414c79"
      ],
      "author": {
        "name": "Greg Lucas",
        "email": "glucas@tesora.com",
        "time": "Mon Jun 09 11:42:12 2014 -0400"
      },
      "committer": {
        "name": "Greg Lucas",
        "email": "glucas@tesora.com",
        "time": "Mon Jun 09 12:06:40 2014 -0400"
      },
      "message": "Use correct path when extracting tar.gz image\n\nFix issue with file:/ image urls.\n\nChange-Id: I8c5f5b27b5d6ebe5be84dc58d37752adbd12f89b\nCloses-Bug: 1277609\n"
    },
    {
      "commit": "54e3910f2d2b2dc49719c7c2f1dca1abb6481870",
      "tree": "0d77636ec8e5bbccc287d48d88dba053d5aa7b38",
      "parents": [
        "ea937baee62378b118c09f42c16a44cc5e6a5fdd"
      ],
      "author": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Tue Jun 03 16:05:12 2014 +1000"
      },
      "committer": {
        "name": "Ian Wienand",
        "email": "iwienand@redhat.com",
        "time": "Tue Jun 03 17:16:38 2014 +1000"
      },
      "message": "Add basic echo_* functions for grenade\n\nGrenade, and possibly other components, re-use parts of devstack\nlibraries.  This provides basic echo_* functions to avoid missing\ncommands in several libraries.\n\nChange-Id: I972d6208055a8c4ca4c9bfd5383ad3c7159d5cbe\n"
    }
  ],
  "next": "f1a2dbffe8ba369b0a8a125e975864a5d88f3e87"
}
