)]}'
{"diskimage_builder/block_device/level2/mkfs.py":[{"author":{"_account_id":6133,"name":"yolanda.robla","email":"yroblamo@redhat.com","username":"yolanda.robla"},"change_message_id":"f9ec8fb8f019139bcc33e0fb69a4fa5bce51c6e1","unresolved":false,"context_lines":[{"line_number":123,"context_line":"        if self.type in (\u0027ext2\u0027, \u0027ext3\u0027, \u0027ext4\u0027):"},{"line_number":124,"context_line":"            cmd.extend([\u0027-U\u0027, self.uuid])"},{"line_number":125,"context_line":"        elif self.type \u003d\u003d \u0027xfs\u0027:"},{"line_number":126,"context_line":"            cmd.extend([\u0027-m\u0027, \"uuid\u003d%s\" % self.uuid])"},{"line_number":127,"context_line":"        else:"},{"line_number":128,"context_line":"            logger.warning(\"UUID will not be written for fs type [%s]\""},{"line_number":129,"context_line":"                           % self.type)"}],"source_content_type":"text/x-python","patch_set":14,"id":"dfeb2761_b609592d","line":126,"range":{"start_line":126,"start_character":15,"end_line":126,"end_character":16},"updated":"2017-04-03 06:36:55.000000000","message":"older versions of mkfs don\u0027t support setting uuid label on xfs. As an alternative, it can be done with xfs_admin -U uuid. Maybe you can add a try..catch on that block, and try both alternatives","commit_id":"23daba9593083f8a4165180fcbafc4e5b9ba0dce"},{"author":{"_account_id":6133,"name":"yolanda.robla","email":"yroblamo@redhat.com","username":"yolanda.robla"},"change_message_id":"f9ec8fb8f019139bcc33e0fb69a4fa5bce51c6e1","unresolved":false,"context_lines":[{"line_number":159,"context_line":"        pass"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":""},{"line_number":162,"context_line":"class Mkfs(object):"},{"line_number":163,"context_line":"    \"\"\"Module for creating file systems"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"    This block device module handles creating different file"}],"source_content_type":"text/x-python","patch_set":14,"id":"dfeb2761_361d4966","line":162,"range":{"start_line":162,"start_character":6,"end_line":162,"end_character":10},"updated":"2017-04-03 06:36:55.000000000","message":"can you export the resulting filesystems, so we can reuse it on other elements, such as the selinux one?","commit_id":"23daba9593083f8a4165180fcbafc4e5b9ba0dce"},{"author":{"_account_id":6133,"name":"yolanda.robla","email":"yroblamo@redhat.com","username":"yolanda.robla"},"change_message_id":"45284e4af9b44204b8fbef50ae428421810f2415","unresolved":false,"context_lines":[{"line_number":123,"context_line":"        if self.type in (\u0027ext2\u0027, \u0027ext3\u0027, \u0027ext4\u0027):"},{"line_number":124,"context_line":"            cmd.extend([\u0027-U\u0027, self.uuid])"},{"line_number":125,"context_line":"        elif self.type \u003d\u003d \u0027xfs\u0027:"},{"line_number":126,"context_line":"            cmd.extend([\u0027-m\u0027, \"uuid\u003d%s\" % self.uuid])"},{"line_number":127,"context_line":"        else:"},{"line_number":128,"context_line":"            logger.warning(\"UUID will not be written for fs type [%s]\""},{"line_number":129,"context_line":"                           % self.type)"}],"source_content_type":"text/x-python","patch_set":18,"id":"bff0334d_c9119454","line":126,"range":{"start_line":126,"start_character":12,"end_line":126,"end_character":15},"updated":"2017-04-10 12:58:17.000000000","message":"meta with uuid does not work in older mkfs versions. Maybe you can try a xfsadmin command in that case, or embed in a try/catch, and try both methods","commit_id":"6f22fb9d4104725a73968116b748347576487a05"},{"author":{"_account_id":6133,"name":"yolanda.robla","email":"yroblamo@redhat.com","username":"yolanda.robla"},"change_message_id":"75ef5936acbdb601014a40deb7481b9f40176411","unresolved":false,"context_lines":[{"line_number":123,"context_line":"        if self.type in (\u0027ext2\u0027, \u0027ext3\u0027, \u0027ext4\u0027):"},{"line_number":124,"context_line":"            cmd.extend([\u0027-U\u0027, self.uuid])"},{"line_number":125,"context_line":"        elif self.type \u003d\u003d \u0027xfs\u0027:"},{"line_number":126,"context_line":"            cmd.extend([\u0027-m\u0027, \"uuid\u003d%s\" % self.uuid])"},{"line_number":127,"context_line":"        else:"},{"line_number":128,"context_line":"            logger.warning(\"UUID will not be written for fs type [%s]\""},{"line_number":129,"context_line":"                           % self.type)"}],"source_content_type":"text/x-python","patch_set":24,"id":"3f044301_657791d6","line":126,"range":{"start_line":126,"start_character":16,"end_line":126,"end_character":22},"updated":"2017-05-06 11:49:45.000000000","message":"this is not supported by older versions of mkfs. Instead you need to use xfs_admin","commit_id":"c210a91b00fae9d4476f0a78b0e116b38eb93e0c"},{"author":{"_account_id":21741,"name":"Andreas Florath","email":"andreas@florath.net","username":"florath"},"change_message_id":"6be880faf7cc0ec557193f8b2f557811657e22b9","unresolved":false,"context_lines":[{"line_number":123,"context_line":"        if self.type in (\u0027ext2\u0027, \u0027ext3\u0027, \u0027ext4\u0027):"},{"line_number":124,"context_line":"            cmd.extend([\u0027-U\u0027, self.uuid])"},{"line_number":125,"context_line":"        elif self.type \u003d\u003d \u0027xfs\u0027:"},{"line_number":126,"context_line":"            cmd.extend([\u0027-m\u0027, \"uuid\u003d%s\" % self.uuid])"},{"line_number":127,"context_line":"        else:"},{"line_number":128,"context_line":"            logger.warning(\"UUID will not be written for fs type [%s]\""},{"line_number":129,"context_line":"                           % self.type)"}],"source_content_type":"text/x-python","patch_set":24,"id":"3f044301_80bbab70","line":126,"range":{"start_line":126,"start_character":16,"end_line":126,"end_character":22},"in_reply_to":"3f044301_657791d6","updated":"2017-05-06 15:30:00.000000000","message":"I have no real idea here: don\u0027t want to support multiple / erroneous versions.\nAbout which systems do we talk here?\n(One solution would be to skip these two lines completely for the time being and insert them again if all supported systems support this.)","commit_id":"c210a91b00fae9d4476f0a78b0e116b38eb93e0c"}],"diskimage_builder/block_device/level3/__init__.py":[{"author":{"_account_id":6133,"name":"yolanda.robla","email":"yroblamo@redhat.com","username":"yolanda.robla"},"change_message_id":"f0cea2f6025969ce857827e54ad225e75963f14b","unresolved":false,"context_lines":[{"line_number":12,"context_line":"# License for the specific language governing permissions and limitations"},{"line_number":13,"context_line":"# under the License."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"from diskimage_builder.block_device.level3.mount import Mount"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"__all__ \u003d [Mount]"}],"source_content_type":"text/x-python","patch_set":18,"id":"9ff52f3f_5427e013","line":15,"range":{"start_line":15,"start_character":0,"end_line":15,"end_character":4},"updated":"2017-04-13 11:27:23.000000000","message":"question: can you confirm if fstrim_image is applied on these mountpoints? i see it executes a fstrim on /mnt, but not sure if that applies to all mountpoints, or are unmounted before it","commit_id":"6f22fb9d4104725a73968116b748347576487a05"}],"diskimage_builder/block_device/level3/mount.py":[{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"3261d4f6b2ec6a3f1fa70ea7e63da36282a06495","unresolved":false,"context_lines":[{"line_number":78,"context_line":"        order is used."},{"line_number":79,"context_line":"        \"\"\""},{"line_number":80,"context_line":"        logger.debug(\"Insert edge [%s]\" % self)"},{"line_number":81,"context_line":"        global mount_points"},{"line_number":82,"context_line":"        global sorted_mount_points"},{"line_number":83,"context_line":"        if sorted_mount_points is None:"},{"line_number":84,"context_line":"            logger.debug(\"Mount points [%s]\" % mount_points)"}],"source_content_type":"text/x-python","patch_set":14,"id":"dfeb2761_8d002ead","line":81,"updated":"2017-04-05 04:59:40.000000000","message":"why is this global?","commit_id":"23daba9593083f8a4165180fcbafc4e5b9ba0dce"}],"diskimage_builder/block_device/level4/fstab.py":[{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"6c5fcadd3189f8d46d8ce7dfb5f2f8ff0badf0cd","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        self.base \u003d self.config[\u0027base\u0027]"},{"line_number":39,"context_line":"        Digraph.Node.__init__(self, self.name)"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"        self.options \u003d self.config[\u0027options\u0027] \\"},{"line_number":42,"context_line":"                       if \u0027options\u0027 in self.config else \u0027default\u0027"},{"line_number":43,"context_line":"        self.dump_freq \u003d self.config[\u0027dump-freq\u0027] \\"},{"line_number":44,"context_line":"                       if \u0027dump-freq\u0027 in self.config else 0"},{"line_number":45,"context_line":"        self.fsck_passno \u003d self.config[\u0027fsck-passno\u0027] \\"},{"line_number":46,"context_line":"                           if \u0027fsck-passno\u0027 in self.config else 2"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"    def insert_nodes(self, dg):"},{"line_number":49,"context_line":"        logger.debug(\"Insert node\")"}],"source_content_type":"text/x-python","patch_set":33,"id":"3f044301_ed35a747","line":46,"range":{"start_line":41,"start_character":0,"end_line":46,"end_character":65},"updated":"2017-05-09 07:21:55.000000000","message":"wow wow wow, just do this::\n        self.options \u003d self.config.get(\u0027options\u0027, \u0027default\u0027)\n        self.dump_freq \u003d self.config.get(\u0027dump-freq\u0027, 0)\n        self.fsck_passno \u003d self.config.get(\u0027fsck-passno\u0027, 2)","commit_id":"8ba469248195094d6c78100793db0b2bd6ed880b"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"6c5fcadd3189f8d46d8ce7dfb5f2f8ff0badf0cd","unresolved":false,"context_lines":[{"line_number":62,"context_line":"        if \u0027fstab\u0027 not in result:"},{"line_number":63,"context_line":"            result[\u0027fstab\u0027] \u003d {}"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"        result[\u0027fstab\u0027][self.base] \\"},{"line_number":66,"context_line":"            \u003d {\u0027name\u0027: self.name,"},{"line_number":67,"context_line":"               \u0027base\u0027: self.base,"},{"line_number":68,"context_line":"               \u0027options\u0027: self.options,"},{"line_number":69,"context_line":"               \u0027dump-freq\u0027: self.dump_freq,"}],"source_content_type":"text/x-python","patch_set":33,"id":"3f044301_2d070f85","line":66,"range":{"start_line":65,"start_character":34,"end_line":66,"end_character":13},"updated":"2017-05-09 07:21:55.000000000","message":"put equal sign on upper line is easier to read.\nanw, do not need to break line like this, this is much better ::\n\n        result[\u0027fstab\u0027][self.base] \u003d {\n            \u0027name\u0027: self.name,\n            \u0027base\u0027: self.base,\n            \u0027options\u0027: self.options,\n            \u0027dump-freq\u0027: self.dump_freq,\n            \u0027fsck-passno\u0027: self.fsck_passno\n        }","commit_id":"8ba469248195094d6c78100793db0b2bd6ed880b"}],"diskimage_builder/block_device/tree_config.py":[{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"ae571307faf2dbed5e6cb7d2add33537164d3ec2","unresolved":false,"context_lines":[{"line_number":18,"context_line":"logger \u003d logging.getLogger(__name__)"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"class TreeConfig(object):"},{"line_number":22,"context_line":"    \"\"\"Supports simple tree-isch configuration"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"    When using the new (complete) configuration there is a need to"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a1ff146_13c121e5","line":21,"updated":"2017-03-15 03:59:31.000000000","message":"Is this necessary for this change?  This is very complex as is, and I think we\u0027d be well served by considering this alternative configuration option as a follow-on change","commit_id":"a42eb542e283bf526eaced554703adc57e6f01cf"}],"diskimage_builder/block_device/type_map.py":[{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"ae571307faf2dbed5e6cb7d2add33537164d3ec2","unresolved":false,"context_lines":[{"line_number":52,"context_line":""},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"def init_type_map():"},{"line_number":55,"context_line":"    global type_map"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    # This needs to be done here because of cyclic imports and"},{"line_number":58,"context_line":"    # dependencies"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a1ff146_53ed598a","line":55,"updated":"2017-03-15 03:59:31.000000000","message":"this shouldn\u0027t be required?  we don\u0027t reassign the value of type_map?","commit_id":"a42eb542e283bf526eaced554703adc57e6f01cf"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"ae571307faf2dbed5e6cb7d2add33537164d3ec2","unresolved":false,"context_lines":[{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    logger.debug(\"init_type_map result [%s]\" % (type_map))"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"init_type_map()"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a1ff146_716ded31","line":72,"updated":"2017-03-15 03:59:31.000000000","message":"Building up a map from a static list of classes here is indicating to me we might have better options.\n\nThis is essentially a plugin-in architecture, and of course we\u0027re not the first people to come across that, and stevedore [1] is a fine solution and would allow us to register all these dynamically.\n\nWe\u0027d have to think about how much of each of these level plugins could be abstracted into an generic-plugin abstract class, or if we maybe want a namespace-per-level.  It seems at least the type_string could be common.  stevedore\u0027s ExtensionManager would seem to work for this.  So at the very least, you could build type_map here using the extension manager and something like:\n\n type_map \u003d {}\n \n def add_type(ext):\n   type_map[ext.obj.type_string] \u003d ext.obj\n\n mgr \u003d Extension.ExtensionManager(\u0027diskimage_builder.block_device.plugin\u0027)\n mgr.map(add_type)\n \n\nbut I bet we could do even better with some deeper thought.\n\nalthough i\u0027m not sure we\u0027d want it, we could have all the benefits of external tools being able to provide their own plugins dynamically if we did this right.\n\n[1] https://docs.openstack.org/developer/stevedore/","commit_id":"a42eb542e283bf526eaced554703adc57e6f01cf"}],"diskimage_builder/elements/debian-minimal/test-elements/stable-vm/README.rst":[{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"3261d4f6b2ec6a3f1fa70ea7e63da36282a06495","unresolved":false,"context_lines":[{"line_number":1,"context_line":"Verify we can build a debian-minimal stable VM image."}],"source_content_type":"text/x-rst","patch_set":14,"id":"dfeb2761_4deb4612","line":1,"updated":"2017-04-05 04:59:40.000000000","message":"we have the ubuntu test that\u0027s using vm now.  can we extract this test, just to try and minimise this as much as possible","commit_id":"23daba9593083f8a4165180fcbafc4e5b9ba0dce"}],"diskimage_builder/elements/vm/block-device-config.yaml":[{"author":{"_account_id":6133,"name":"yolanda.robla","email":"yroblamo@redhat.com","username":"yolanda.robla"},"change_message_id":"603741fd254c66835ed052f3d0b7a72b42ed3c6c","unresolved":false,"context_lines":[{"line_number":1,"context_line":"- local_loop:"},{"line_number":2,"context_line":"    name: image0"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"- partitioning:"},{"line_number":5,"context_line":"    base: image0"},{"line_number":6,"context_line":"    label: mbr"},{"line_number":7,"context_line":"    partitions:"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"9a30ddce_15a4d8b7","line":4,"updated":"2017-03-13 08:50:24.000000000","message":"that doesn\u0027t look good. I tried to create like that, and I get error \"Mkfs config needs type\"","commit_id":"4dd780f35d380f9d0197ebc9e1a64cc978f4f01b"}],"diskimage_builder/elements/vm/block-device-default.yaml":[{"author":{"_account_id":6133,"name":"yolanda.robla","email":"yroblamo@redhat.com","username":"yolanda.robla"},"change_message_id":"75ef5936acbdb601014a40deb7481b9f40176411","unresolved":false,"context_lines":[{"line_number":14,"context_line":"          mount:"},{"line_number":15,"context_line":"            mount_point: /"},{"line_number":16,"context_line":"            fstab:"},{"line_number":17,"context_line":"              options: \"errors\u003dremount-ro\""},{"line_number":18,"context_line":"              fsck-passno: 1"}],"source_content_type":"text/x-yaml","patch_set":24,"id":"3f044301_25ace932","line":17,"range":{"start_line":17,"start_character":24,"end_line":17,"end_character":30},"updated":"2017-05-06 11:49:45.000000000","message":"this should be \"defaults\" ? errors\u003dremount-ro not supported by xfs","commit_id":"c210a91b00fae9d4476f0a78b0e116b38eb93e0c"},{"author":{"_account_id":21741,"name":"Andreas Florath","email":"andreas@florath.net","username":"florath"},"change_message_id":"6be880faf7cc0ec557193f8b2f557811657e22b9","unresolved":false,"context_lines":[{"line_number":14,"context_line":"          mount:"},{"line_number":15,"context_line":"            mount_point: /"},{"line_number":16,"context_line":"            fstab:"},{"line_number":17,"context_line":"              options: \"errors\u003dremount-ro\""},{"line_number":18,"context_line":"              fsck-passno: 1"}],"source_content_type":"text/x-yaml","patch_set":24,"id":"3f044301_40ada32f","line":17,"range":{"start_line":17,"start_character":24,"end_line":17,"end_character":30},"in_reply_to":"3f044301_25ace932","updated":"2017-05-06 15:30:00.000000000","message":"Yes, this should be defaults now (changed this only for the intermediate version).","commit_id":"c210a91b00fae9d4476f0a78b0e116b38eb93e0c"},{"author":{"_account_id":21741,"name":"Andreas Florath","email":"andreas@florath.net","username":"florath"},"change_message_id":"1215308f35e5c71b49898ab6d11de46c31ea32a9","unresolved":false,"context_lines":[{"line_number":14,"context_line":"          mount:"},{"line_number":15,"context_line":"            mount_point: /"},{"line_number":16,"context_line":"            fstab:"},{"line_number":17,"context_line":"              options: \"errors\u003dremount-ro\""},{"line_number":18,"context_line":"              fsck-passno: 1"}],"source_content_type":"text/x-yaml","patch_set":24,"id":"3f044301_80704bde","line":17,"range":{"start_line":17,"start_character":24,"end_line":17,"end_character":30},"in_reply_to":"3f044301_40ada32f","updated":"2017-05-06 15:35:39.000000000","message":"Done","commit_id":"c210a91b00fae9d4476f0a78b0e116b38eb93e0c"}],"diskimage_builder/lib/disk-image-create":[{"author":{"_account_id":6133,"name":"yolanda.robla","email":"yroblamo@redhat.com","username":"yolanda.robla"},"change_message_id":"e552491b8fcf1f5dec7a77ed8c3d5d2d55d44029","unresolved":false,"context_lines":[{"line_number":364,"context_line":""},{"line_number":365,"context_line":"rm -f ${du_output}"},{"line_number":366,"context_line":""},{"line_number":367,"context_line":"if [ \"$FS_TYPE\" \u003d \"ext4\" ] ; then"},{"line_number":368,"context_line":"  # Very conservative to handle images being resized a lot"},{"line_number":369,"context_line":"  # We set journal size to 64M so our journal is large enough when we"},{"line_number":370,"context_line":"  # perform an FS resize."}],"source_content_type":"application/x-shellscript","patch_set":36,"id":"3f044301_e4849c0e","line":367,"range":{"start_line":367,"start_character":0,"end_line":367,"end_character":2},"updated":"2017-05-09 12:34:47.000000000","message":"so, this is still needed, or can we make it more flexible, so it reads the filesystem type from mkfs? the problem i am hitting here, is that if you need to create systems with XFS, you need to explicitly export FS_TYPE\u003dxfs, even if you define the block-device.yaml with mkfs-\u003etype\u003dxfs. If we don\u0027t do it this way, it\u0027s setting incorrect values for any filetype that is not ext4, even if defined in the yaml file properly.","commit_id":"cc4af52a5c0fd90c3dc6c7f82049773dfe3e4556"}],"doc/source/user_guide/building_an_image.rst":[{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"0315179b22552dcef90b623eae3b59112d82474e","unresolved":false,"context_lines":[{"line_number":124,"context_line":"element that points to the depending base.  Also each module has a"},{"line_number":125,"context_line":"`name` that can be used reference the module."},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"Tree-ish vs. Complete Digraph Configuration"},{"line_number":128,"context_line":"+++++++++++++++++++++++++++++++++++++++++++"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"The configuration is specified as a digraph_.  Each module is a"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3a1ff146_bfee59ea","line":127,"updated":"2017-03-14 21:41:39.000000000","message":"I\u0027d prefer to see us not use the term \"tree-ish\" here and a couple of places in the code.  I get what you mean after reading it, but I think git has, for better or worse, made the term \"tree-ish\" mean essentially a sha hash value which this is not.  we can avoid any ambiguity by avoiding that.","commit_id":"a42eb542e283bf526eaced554703adc57e6f01cf"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"0315179b22552dcef90b623eae3b59112d82474e","unresolved":false,"context_lines":[{"line_number":134,"context_line":"to write it down, the configuration can also be given as a tree_."},{"line_number":135,"context_line":""},{"line_number":136,"context_line":".. _digraph: https://en.wikipedia.org/wiki/Directed_graph"},{"line_number":137,"context_line":".. _tree: https://en.wikipedia.org/wiki/Tree_(graph_theory)"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"Example: The tree like notation"},{"line_number":140,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"3a1ff146_bfef39af","line":137,"updated":"2017-03-14 21:41:39.000000000","message":"have you read this?  :)  if you don\u0027t know what a tree is, i\u0027m pretty certain it would not help","commit_id":"a42eb542e283bf526eaced554703adc57e6f01cf"}]}
