)]}'
{"functions":[{"author":{"_account_id":5044,"name":"Mate Lakat","email":"mlakat@suse.com","username":"mate-lakat"},"change_message_id":"bd8d6e44f647d84cf6d5842c789f2439cb7554be","unresolved":false,"context_lines":[{"line_number":296,"context_line":""},{"line_number":297,"context_line":""},{"line_number":298,"context_line":"# Determine OS Vendor, Release and Update"},{"line_number":299,"context_line":"# Tested with OS/X, Ubuntu, RedHat, CentOS, Fedora, XenServer"},{"line_number":300,"context_line":"# Returns results in global variables:"},{"line_number":301,"context_line":"# os_VENDOR - vendor name"},{"line_number":302,"context_line":"# os_RELEASE - release"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"AAAAPH%2F%2Fg%2FI%3D","line":299,"updated":"2013-05-31 14:03:12.000000000","message":"I am not sure about it. This code really runs in an Ubuntu VM.","commit_id":"73d81e4ba4c416081ad3b5ed1ef678ad543e783b"},{"author":{"_account_id":6735,"name":"Bob Ball","email":"bob.ball@citrix.com","username":"bob-ball"},"change_message_id":"141d363f541eee98c49e5b6120cceb8afb67c3cd","unresolved":false,"context_lines":[{"line_number":296,"context_line":""},{"line_number":297,"context_line":""},{"line_number":298,"context_line":"# Determine OS Vendor, Release and Update"},{"line_number":299,"context_line":"# Tested with OS/X, Ubuntu, RedHat, CentOS, Fedora, XenServer"},{"line_number":300,"context_line":"# Returns results in global variables:"},{"line_number":301,"context_line":"# os_VENDOR - vendor name"},{"line_number":302,"context_line":"# os_RELEASE - release"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"AAAAPH%2F%2Fg34%3D","line":299,"in_reply_to":"AAAAPH%2F%2Fg%2FI%3D","updated":"2013-05-31 14:23:32.000000000","message":"Sorry - this is something I hadn\u0027t intended to commit.  Reverted and will upload a new patch.","commit_id":"73d81e4ba4c416081ad3b5ed1ef678ad543e783b"}],"lib/nova":[{"author":{"_account_id":5044,"name":"Mate Lakat","email":"mlakat@suse.com","username":"mate-lakat"},"change_message_id":"bd8d6e44f647d84cf6d5842c789f2439cb7554be","unresolved":false,"context_lines":[{"line_number":128,"context_line":"# Functions"},{"line_number":129,"context_line":"# ---------"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"function is_libvirt() {"},{"line_number":132,"context_line":"    if [[ \"$VIRT_DRIVER\" \u003d \u0027libvirt\u0027 ]]; then"},{"line_number":133,"context_line":"        return 0"},{"line_number":134,"context_line":"    fi"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"AAAAPH%2F%2Fhfk%3D","line":131,"updated":"2013-05-31 14:03:12.000000000","message":"Isn\u0027t it just [[ \"$VIRT_DRIVER\" \u003d \u0027libvirt\u0027 ]] ?","commit_id":"73d81e4ba4c416081ad3b5ed1ef678ad543e783b"},{"author":{"_account_id":6735,"name":"Bob Ball","email":"bob.ball@citrix.com","username":"bob-ball"},"change_message_id":"141d363f541eee98c49e5b6120cceb8afb67c3cd","unresolved":false,"context_lines":[{"line_number":128,"context_line":"# Functions"},{"line_number":129,"context_line":"# ---------"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"function is_libvirt() {"},{"line_number":132,"context_line":"    if [[ \"$VIRT_DRIVER\" \u003d \u0027libvirt\u0027 ]]; then"},{"line_number":133,"context_line":"        return 0"},{"line_number":134,"context_line":"    fi"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"AAAAPH%2F%2Fg3c%3D","line":131,"in_reply_to":"AAAAPH%2F%2Fhfk%3D","updated":"2013-05-31 14:23:32.000000000","message":"yes, but I was copying the style for things like is_ubuntu and is_baremetal to make it clear and make repetition without mistakes easier","commit_id":"73d81e4ba4c416081ad3b5ed1ef678ad543e783b"},{"author":{"_account_id":5044,"name":"Mate Lakat","email":"mlakat@suse.com","username":"mate-lakat"},"change_message_id":"bd8d6e44f647d84cf6d5842c789f2439cb7554be","unresolved":false,"context_lines":[{"line_number":247,"context_line":"        fi"},{"line_number":248,"context_line":""},{"line_number":249,"context_line":""},{"line_number":250,"context_line":"\tif is_libvirt; then"},{"line_number":251,"context_line":"            # Attempt to load modules: network block device - used to manage qcow images"},{"line_number":252,"context_line":"            sudo modprobe nbd || true"},{"line_number":253,"context_line":""}],"source_content_type":"application/octet-stream","patch_set":1,"id":"AAAAPH%2F%2Fg%2Bg%3D","line":250,"updated":"2013-05-31 14:03:12.000000000","message":"Why did you move this section down?","commit_id":"73d81e4ba4c416081ad3b5ed1ef678ad543e783b"},{"author":{"_account_id":6735,"name":"Bob Ball","email":"bob.ball@citrix.com","username":"bob-ball"},"change_message_id":"141d363f541eee98c49e5b6120cceb8afb67c3cd","unresolved":false,"context_lines":[{"line_number":247,"context_line":"        fi"},{"line_number":248,"context_line":""},{"line_number":249,"context_line":""},{"line_number":250,"context_line":"\tif is_libvirt; then"},{"line_number":251,"context_line":"            # Attempt to load modules: network block device - used to manage qcow images"},{"line_number":252,"context_line":"            sudo modprobe nbd || true"},{"line_number":253,"context_line":""}],"source_content_type":"application/octet-stream","patch_set":1,"id":"AAAAPH%2F%2Fg3M%3D","line":250,"in_reply_to":"AAAAPH%2F%2Fg%2Bg%3D","updated":"2013-05-31 14:23:32.000000000","message":"Moved back up - I only moved the baremetal code up to keep the libvirt code in one place, but I\u0027ve split it to have two conditionals so the change appears smaller and this section of libvirt code need not be reviewed.","commit_id":"73d81e4ba4c416081ad3b5ed1ef678ad543e783b"},{"author":{"_account_id":970,"name":"Dean Troyer","email":"dtroyer@gmail.com","username":"dtroyer"},"change_message_id":"e42c05ef078bdd1a9aa7036cc4889bffa0325734","unresolved":false,"context_lines":[{"line_number":133,"context_line":"        return 0"},{"line_number":134,"context_line":"    fi"},{"line_number":135,"context_line":"    return 1"},{"line_number":136,"context_line":"}"},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"# Helper to clean iptables rules"},{"line_number":139,"context_line":"function clean_iptables() {"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"AAAAPH%2F%2FghA%3D","line":136,"updated":"2013-05-31 16:04:35.000000000","message":"We do not need a function to perform exactly one task.  The other is_XXX() functions have a couple of things to do.  They also belong in the \u0027functions\u0027 file.","commit_id":"a43b23caee2707637a09c7e4a49caa214dd4e35f"},{"author":{"_account_id":6735,"name":"Bob Ball","email":"bob.ball@citrix.com","username":"bob-ball"},"change_message_id":"a1c01ea2c80b4954284dd8da12ba6e3a0d029a12","unresolved":false,"context_lines":[{"line_number":133,"context_line":"        return 0"},{"line_number":134,"context_line":"    fi"},{"line_number":135,"context_line":"    return 1"},{"line_number":136,"context_line":"}"},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"# Helper to clean iptables rules"},{"line_number":139,"context_line":"function clean_iptables() {"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"AAAAPH%2F%2Fd8U%3D","line":136,"in_reply_to":"AAAAPH%2F%2FghA%3D","updated":"2013-06-03 08:20:53.000000000","message":"I added it because we need the check in a number of places and it\u0027s harder to mistype is_libvirt than the conditional which uses strings and variables (after noticing that set -o nounset isn\u0027t used).\n\nI\u0027ve removed it now though.","commit_id":"a43b23caee2707637a09c7e4a49caa214dd4e35f"}]}
