)]}'
{"zun/api/controllers/v1/views/containers_view.py":[{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"b75da0b7b7bbf6f7aaeaec8e7947348d696a08d1","unresolved":false,"context_lines":[{"line_number":44,"context_line":"    \u0027auto_remove\u0027,"},{"line_number":45,"context_line":"    \u0027runtime\u0027,"},{"line_number":46,"context_line":"    \u0027hostname\u0027,"},{"line_number":47,"context_line":"    \u0027storage_opt\u0027,"},{"line_number":48,"context_line":")"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"5f93b717_ea2113fd","line":47,"range":{"start_line":47,"start_character":5,"end_line":47,"end_character":16},"updated":"2018-01-26 16:41:56.000000000","message":"Personally, I think it is better to expose high-level concept to API users, for example \u0027disk\u0027. The \u0027storage_opt\u0027 looks like a low-level docker config and it will be sub-optimal to let our users deal with these low-level details.\n\nAlso, consider consistency with nova. Nova uses \u0027disk\u0027 in the flavor for VM. I think following nova would be a good choice for us.","commit_id":"b393b2e4f8d4b947bf8262ab9b9345ebc83887ca"}],"zun/common/validation/parameter_types.py":[{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"b75da0b7b7bbf6f7aaeaec8e7947348d696a08d1","unresolved":false,"context_lines":[{"line_number":261,"context_line":"    \u0027patternProperties\u0027: {"},{"line_number":262,"context_line":"        \u0027.+\u0027: {"},{"line_number":263,"context_line":"            \u0027type\u0027: [\u0027string\u0027],"},{"line_number":264,"context_line":"            \u0027pattern\u0027: \u0027^[0-9]+[g|G]?$\u0027,"},{"line_number":265,"context_line":"        },"},{"line_number":266,"context_line":"    },"},{"line_number":267,"context_line":"}"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f93b717_aa4c6b9e","line":264,"range":{"start_line":264,"start_character":30,"end_line":264,"end_character":36},"updated":"2018-01-26 16:41:56.000000000","message":"I would suggest to assume the unit is always gigabyte and drop the \u0027G\u0027 suffix. This will turn this parameter to an integer (or floating number) and makes the API looks clear and elegant.","commit_id":"b393b2e4f8d4b947bf8262ab9b9345ebc83887ca"}],"zun/container/docker/driver.py":[{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"b75da0b7b7bbf6f7aaeaec8e7947348d696a08d1","unresolved":false,"context_lines":[{"line_number":186,"context_line":"                host_config[\u0027restart_policy\u0027] \u003d {\u0027Name\u0027: name,"},{"line_number":187,"context_line":"                                                 \u0027MaximumRetryCount\u0027: count}"},{"line_number":188,"context_line":"            if container.storage_opt:"},{"line_number":189,"context_line":"                host_config[\u0027storage_opt\u0027] \u003d container.storage_opt"},{"line_number":190,"context_line":""},{"line_number":191,"context_line":"            kwargs[\u0027host_config\u0027] \u003d docker.create_host_config(**host_config)"},{"line_number":192,"context_line":"            image_repo \u003d image[\u0027repo\u0027] + \":\" + image[\u0027tag\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f93b717_ea2ef3a3","line":189,"updated":"2018-01-26 16:41:56.000000000","message":"If we choose to expose \u0027disk\u0027 via the API, we can populate the \u0027storage_opt\u0027 config by using the \u0027disk\u0027 parameter. For example (untested):\n\n  host_config[\u0027storage_opt\u0027] \u003d {\u0027size\u0027: container.disk}","commit_id":"b393b2e4f8d4b947bf8262ab9b9345ebc83887ca"}],"zun/objects/container.py":[{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"76f33f8940bbbe7433dc121b5f47aca832d0043b","unresolved":false,"context_lines":[{"line_number":89,"context_line":"        \u0027runtime\u0027: fields.StringField(nullable\u003dTrue),"},{"line_number":90,"context_line":"        \u0027pci_devices\u0027: fields.ListOfObjectsField(\u0027PciDevice\u0027,"},{"line_number":91,"context_line":"                                                 nullable\u003dTrue),"},{"line_number":92,"context_line":"        \u0027disk\u0027: fields.IntegerField(),"},{"line_number":93,"context_line":"    }"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"    @staticmethod"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_d03b80e8","line":92,"range":{"start_line":92,"start_character":35,"end_line":92,"end_character":38},"updated":"2018-01-29 16:42:53.000000000","message":"Can disk be nullable?","commit_id":"d96836419bc43a3d305e3b3f8a094b3e43163007"},{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"c52a3532d8e0f9e05831e5a0f7afbd6e2b7fcc70","unresolved":false,"context_lines":[{"line_number":89,"context_line":"        \u0027runtime\u0027: fields.StringField(nullable\u003dTrue),"},{"line_number":90,"context_line":"        \u0027pci_devices\u0027: fields.ListOfObjectsField(\u0027PciDevice\u0027,"},{"line_number":91,"context_line":"                                                 nullable\u003dTrue),"},{"line_number":92,"context_line":"        \u0027disk\u0027: fields.IntegerField(),"},{"line_number":93,"context_line":"    }"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"    @staticmethod"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f93b717_53dc4ce3","line":92,"range":{"start_line":92,"start_character":35,"end_line":92,"end_character":38},"in_reply_to":"5f93b717_d03b80e8","updated":"2018-01-30 03:31:30.000000000","message":"I think this should be nullable. Otherwise, users are not able to create a container if the --disk is missing.","commit_id":"d96836419bc43a3d305e3b3f8a094b3e43163007"}]}
