)]}'
{
  "log": [
    {
      "commit": "0fdf34959eb8f330301adfcd0ab1cfe975b5460c",
      "tree": "7afc64f301b9ca9f259f76c548b6b4d5b3bdb7a8",
      "parents": [
        "e3ceaedbd7b111c1e8b28510a4eb11e540d4af77"
      ],
      "author": {
        "name": "Matthew Booth",
        "email": "mbooth@redhat.com",
        "time": "Tue Mar 03 16:37:35 2015 +0000"
      },
      "committer": {
        "name": "Matthew Booth",
        "email": "mbooth@redhat.com",
        "time": "Tue Mar 03 16:37:35 2015 +0000"
      },
      "message": "Don\u0027t cleanup ceph config when REMOTE_CEPH\u003dTrue\n\nIf REMOTE_CEPH\u003dTrue then we didn\u0027t write the contents of /etc/ceph, so\nwe shouldn\u0027t delete them.\n\nChange-Id: I6291c6562a2864de775b1acb4be0be35b866f30d\n"
    },
    {
      "commit": "e3ceaedbd7b111c1e8b28510a4eb11e540d4af77",
      "tree": "66d0aed0005ccae65fe6e3e8c283be4e2d632af6",
      "parents": [
        "172fae6a3ebf867663525048947c797c9209f3eb"
      ],
      "author": {
        "name": "Matthew Booth",
        "email": "mbooth@redhat.com",
        "time": "Tue Mar 03 16:13:31 2015 +0000"
      },
      "committer": {
        "name": "Matthew Booth",
        "email": "mbooth@redhat.com",
        "time": "Tue Mar 03 16:13:31 2015 +0000"
      },
      "message": "Fix defaulting of REMOTE_CEPH\n\nA typo in lib/ceph was causing REMOTE_CEPH to be defaulted whenever\nlib/ceph was sourced, regardless of its existing value. The\n`trueorfalse` function takes a variable name as its second argument,\nnot a value.\n\nChange-Id: Iec846e0b892eaa63a0a2a59aa045bc56d5606af1\n"
    },
    {
      "commit": "a27b74cdf74a83ef2d197d026526211d12990228",
      "tree": "c179ffde4f78f7fac27a3a1294adf587e5241b9b",
      "parents": [
        "4764cffd5a97690ca3ca91501d30cc5c8c93ba20"
      ],
      "author": {
        "name": "Eric Harney",
        "email": "eharney@redhat.com",
        "time": "Thu Sep 18 13:02:55 2014 -0400"
      },
      "committer": {
        "name": "Sébastien Han",
        "email": "sebastien.han@enovance.com",
        "time": "Tue Jan 27 09:59:59 2015 +0100"
      },
      "message": "Ceph: wait for services to shutdown during cleanup\n\nIt can take ceph-osd and ceph-mon a few seconds to complete when\nthey are killed.  This races against the umount command in cleaup\nand can often result in $CEPH_DATA_DIR failing to unmount since\nit is still in use.\n\nWait for these processes to stop to ensure the mount point is\numounted successfully.\n\nChange-Id: I1a635e75a68be6b14fbee52ff981b5f5a3a8eb0e\n"
    },
    {
      "commit": "5734d0817452fe2f30a8b48ecffd7c23045c3ac8",
      "tree": "2a12e784bf2452a7404d1a440b3ccb25a4f914e6",
      "parents": [
        "cc6dbee0a6aef468b30f33c2c59b7409915a1409",
        "4eb04a5f9e378fa67175056ab94b5803db2be875"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Jan 13 18:16:02 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Jan 13 18:16:02 2015 +0000"
      },
      "message": "Merge \"Ability to use a remote Ceph cluster\""
    },
    {
      "commit": "4eb04a5f9e378fa67175056ab94b5803db2be875",
      "tree": "536a1a727704072d3e0ca4eeea9bd491438858c7",
      "parents": [
        "e750f9c1c6cd51b58e340502792ad119e798d622"
      ],
      "author": {
        "name": "Sébastien Han",
        "email": "sebastien.han@enovance.com",
        "time": "Thu Dec 04 16:22:41 2014 +0100"
      },
      "committer": {
        "name": "Sébastien Han",
        "email": "sebastien.han@enovance.com",
        "time": "Tue Jan 13 09:49:58 2015 +0100"
      },
      "message": "Ability to use a remote Ceph cluster\n\nSometimes we want to run some benchmarks on virtual machines that will be\nbacked by a Ceph cluster. The first idea that comes in our mind is to\nuse devstack to quickly get an OpenStack up and running but what about\nthe configuration of Devstack with this remote cluster?\n\nThanks to this commit it\u0027s now possible to use an already existing Ceph\ncluster. In this case Devstack just needs two things:\n\n* the location of the Ceph config file (by default devstack will look\nfor /etc/ceph/ceph.conf\n* the admin key of the remote ceph cluster (by default devstack will\nlook for /etc/ceph/ceph.client.admin.keyring)\n\nDevstack will then create the necessary pools, users, keys and will\nconnect the OpenStack environment as usual. During the unstack phase\nevery pools, users and keys will be deleted on the remote cluster while\nlocal files and ceph-common package will be removed from the current\nDevstack host.\n\nTo enable this mode simply add REMOTE_CEPH\u003dTrue to your localrc file.\n\nChange-Id: I1a4b6fd676d50b6a41a09e7beba9b11f8d1478f7\nSigned-off-by: Sébastien Han \u003csebastien.han@enovance.com\u003e\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": "b8491cd8b9e70236a6af1a14e09a414a8b8b1ab5",
      "tree": "54d1b721dd1fef1a7d679975804674d47ca2033b",
      "parents": [
        "7411bf25746ab21e1a0bb32185b916e18aa54168",
        "849d0b8ebb9aff4a2106c01a691112578f25281c"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Dec 09 17:21:45 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Dec 09 17:21:46 2014 +0000"
      },
      "message": "Merge \"Fix the variable substitution\""
    },
    {
      "commit": "b01fb940c93dfa3ae75b11e34b8a99e6906c8a25",
      "tree": "5b5ee1614630cccad795ae61260ced4d8ca60406",
      "parents": [
        "2d7f19627771680d4872eb77e06ceccf3cdd7b1b"
      ],
      "author": {
        "name": "Eric Harney",
        "email": "eharney@redhat.com",
        "time": "Wed Oct 01 13:20:50 2014 -0400"
      },
      "committer": {
        "name": "Eric Harney",
        "email": "eharney@redhat.com",
        "time": "Tue Nov 25 08:33:32 2014 -0500"
      },
      "message": "Ceph: undefine secret from nova.conf when deleting secret\n\nAt teardown time we delete the libvirt secret but leave\nnova.conf referencing the stale UUID.  Remove it to make\ndebugging and repeated runs less error-prone.\n\nAdditionally, only try to delete secret if it Cinder is\nenabled (causing it to be defined when deploying devstack).\n\nChange-Id: Id5e1290b8dcfd79238f02e31084ab12c3d6aed5f\n"
    },
    {
      "commit": "849d0b8ebb9aff4a2106c01a691112578f25281c",
      "tree": "9f1f77c578f95a166510d2cbd313b7a8b8fa1df6",
      "parents": [
        "dd69403ff4608f8fe2c50c71962aee042ae0c1fa"
      ],
      "author": {
        "name": "Sébastien Han",
        "email": "sebastien.han@enovance.com",
        "time": "Tue Nov 18 11:10:11 2014 -0800"
      },
      "committer": {
        "name": "Sébastien Han",
        "email": "sebastien.han@enovance.com",
        "time": "Tue Nov 18 13:04:12 2014 -0800"
      },
      "message": "Fix the variable substitution\n\nPrior to that commit if ceph_version was equal to 0.80.5, the variable\nsubstitution ${ceph_version%.*} was returning 0.80 and not 0. Using\n${ceph_version%%.*} returns the desired value.\nAlso refactoring the version output to get a X.X format since only\nmajor and minor are important.\n\nChange-Id: Iab50f3c4b24a01a68acda417eae0501f00038f54\nSigned-off-by: Sébastien Han \u003csebastien.han@enovance.com\u003e\n"
    },
    {
      "commit": "90f77fb01579b1859199b451d090170d4752a3e2",
      "tree": "824626007dd6d4a455a28b15037e3846551a2fb8",
      "parents": [
        "bd5263cd37bc3d451a4a1680ffb79b9f639a5e88"
      ],
      "author": {
        "name": "Sébastien Han",
        "email": "sebastien.han@enovance.com",
        "time": "Fri Oct 31 12:05:20 2014 +0100"
      },
      "committer": {
        "name": "Sébastien Han",
        "email": "sebastien.han@enovance.com",
        "time": "Sat Nov 08 15:59:04 2014 +0100"
      },
      "message": "Fix DevStack Ceph on the Giant release\n\nAs of the Ceph Giant release, pools \u0027data\u0027 and \u0027metadata\u0027 (used for\nCephFS) were removed. Thus applying the pool change command fails on\nGiant since those pools don\u0027t exist anymore. Now we are checking for\nevery release prior to Giant and apply proper commands accordingly.\n\nChange-Id: Ia12042899c0e6809f5b98c2e0de177bb61c8a790\nSigned-off-by: Sébastien Han \u003csebastien.han@enovance.com\u003e\n"
    },
    {
      "commit": "26167569d6c69626cbcff878623e74bc60264334",
      "tree": "f067ccc9562b3ad7a8ff79ebdedeea90f04f0843",
      "parents": [
        "1b899cdfc9b3d35a17880499fed8753101793cec",
        "fa16ae92cd7339a830851dea17ce263205b78865"
      ],
      "author": {
        "name": "Jenkins",
        "email": "jenkins@review.openstack.org",
        "time": "Tue Oct 28 03:16:17 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "review@openstack.org",
        "time": "Tue Oct 28 03:16:18 2014 +0000"
      },
      "message": "Merge \"Add the ability to activate Nova ceph without Cinder\""
    },
    {
      "commit": "fa16ae92cd7339a830851dea17ce263205b78865",
      "tree": "c7d17f996c9468df5722d13a33cadd060f614c06",
      "parents": [
        "552459cbccf12473c5734f92b034c8f2464a4069"
      ],
      "author": {
        "name": "Sébastien Han",
        "email": "sebastien.han@enovance.com",
        "time": "Mon Oct 06 00:15:33 2014 +0200"
      },
      "committer": {
        "name": "Sébastien Han",
        "email": "sebastien.han@enovance.com",
        "time": "Thu Oct 09 19:25:23 2014 +0200"
      },
      "message": "Add the ability to activate Nova ceph without Cinder\n\nPrior to this patch, if we wanted to boot a VM in Ceph using\nlibvirt_image_type we must had Cinder enabled. This patch allows you to\nuse libvirt_image_type without having Cinder enabled.\n\nChange-Id: Ia61e6effc5a4ccba69f4fa48f6e9984f15bb8979\nSigned-off-by: Sébastien Han \u003csebastien.han@enovance.com\u003e\n"
    },
    {
      "commit": "9a706107d6603c9a13c8ec128b6f0ca397492f02",
      "tree": "2036a84e951ad0db447dfe9a33731e93cd542eec",
      "parents": [
        "5278b8a0ec032651c083945fa543b4e78826e715"
      ],
      "author": {
        "name": "Eric Harney",
        "email": "eharney@redhat.com",
        "time": "Wed Oct 08 10:39:46 2014 -0400"
      },
      "committer": {
        "name": "Eric Harney",
        "email": "eharney@redhat.com",
        "time": "Wed Oct 08 11:10:31 2014 -0400"
      },
      "message": "Set Glance default_store to rbd in [glance_store]\n\nGlance is moving from [DEFAULT] to [glance_store] for this option.\nSince lib/glance sets both, let\u0027s also set it in both places for now.\n\nFailing to do this causes g-api to fail to start with error:\n\"Store for scheme swift not found\"\n\nChange-Id: I9e33ababf7c51f5c750f90b8b366b9892bb4c8cd\n"
    },
    {
      "commit": "7c9abcad0dfeb0a2d8537e897ca26c0396633709",
      "tree": "40c0751963e204de7701aa2950282b1b8f360425",
      "parents": [
        "887fb54013feff6e063001fb4d879666b38fdbbd"
      ],
      "author": {
        "name": "Sébastien Han",
        "email": "sebastien.han@enovance.com",
        "time": "Mon Sep 15 16:17:42 2014 +0200"
      },
      "committer": {
        "name": "Sébastien Han",
        "email": "sebastien.han@enovance.com",
        "time": "Mon Sep 15 23:42:42 2014 +0200"
      },
      "message": "Add RBD as a known store\n\nAdding RBD as a known store in the glance-api.conf file allows us to use\nCeph as a backend for Glance.\n\nCloses-Bug: 1369578\n\nChange-Id: I02cbafa68ca3293cedc9fef7535e79930cc4ee5c\nSigned-off-by: Sébastien Han \u003csebastien.han@enovance.com\u003e\n"
    },
    {
      "commit": "18b9dcc6692e9a329d9baee7db02b532d8990c84",
      "tree": "00f145e9ea9106a8ae6ad9a84aa55c19c290f68f",
      "parents": [
        "219e9c227832371f10f718dc3d793b03904f5968"
      ],
      "author": {
        "name": "Ivan Kolodyazhny",
        "email": "e0ne@e0ne.info",
        "time": "Fri Aug 22 17:02:40 2014 +0300"
      },
      "committer": {
        "name": "Ivan Kolodyazhny",
        "email": "e0ne@e0ne.info",
        "time": "Tue Sep 09 22:57:49 2014 +0300"
      },
      "message": "Increase CEPH_LOOPBACK_DISK_SIZE_DEFAULT to 4GB\n\nCEPH_LOOPBACK_DISK_SIZE_DEFAULT should be more than 2GB\nto make volume snapshot feature works. 2GB is not enough\nbecause min Cinder volume size is 1GB and no snapshot\ncould be created.\n\nThis also fixes related Tempest tests and experimental\ncheck-tempest-dsvm-full-ceph gate job.\n\nChange-Id: Ifa41d0d1764d68ea02dcb32a5fc62f7f6282904d\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"
    }
  ]
}
