)]}'
{"osc_placement/resources/aggregate.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4be5125ee36b81267c46aed339d6b5c5312b0af0","unresolved":false,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"    \"\"\"Associate a list of aggregates with the resource provider."},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"    Each request cleans up previously associated resource provider"},{"line_number":26,"context_line":"    aggregates entirely and sets the new ones. Passing empty aggregate"},{"line_number":27,"context_line":"    UUID list will remove all associations with aggregates for the"},{"line_number":28,"context_line":"    particular resource provider."},{"line_number":29,"context_line":"    \"\"\""},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"    def get_parser(self, prog_name):"}],"source_content_type":"text/x-python","patch_set":8,"id":"7f96bb07_31b3ef4f","line":28,"range":{"start_line":25,"start_character":4,"end_line":28,"end_character":33},"updated":"2018-01-23 01:02:37.000000000","message":"This is nice detail and is similar to what I was I was looking for in the \"set allocations\" CLI help.","commit_id":"8f6da1644470f6a7e38b2480a1c4a9ecb1516830"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4be5125ee36b81267c46aed339d6b5c5312b0af0","unresolved":false,"context_lines":[{"line_number":40,"context_line":"        parser.add_argument("},{"line_number":41,"context_line":"            \u0027--aggregate\u0027,"},{"line_number":42,"context_line":"            metavar\u003d\u0027\u003caggregate_uuid\u003e\u0027,"},{"line_number":43,"context_line":"            help\u003d\u0027UUID of the aggregate\u0027,"},{"line_number":44,"context_line":"            action\u003d\u0027append\u0027,"},{"line_number":45,"context_line":"            default\u003d[]"},{"line_number":46,"context_line":"        )"}],"source_content_type":"text/x-python","patch_set":8,"id":"7f96bb07_91f20306","line":43,"updated":"2018-01-23 01:02:37.000000000","message":"Should we mention that one can specify this multiple times to associate a resource provider with multiple aggregates?","commit_id":"8f6da1644470f6a7e38b2480a1c4a9ecb1516830"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"5f0f98510c1427872afd1dd06152098e41deec0b","unresolved":false,"context_lines":[{"line_number":40,"context_line":"        parser.add_argument("},{"line_number":41,"context_line":"            \u0027--aggregate\u0027,"},{"line_number":42,"context_line":"            metavar\u003d\u0027\u003caggregate_uuid\u003e\u0027,"},{"line_number":43,"context_line":"            help\u003d\u0027UUID of the aggregate\u0027,"},{"line_number":44,"context_line":"            action\u003d\u0027append\u0027,"},{"line_number":45,"context_line":"            default\u003d[]"},{"line_number":46,"context_line":"        )"}],"source_content_type":"text/x-python","patch_set":8,"id":"7f96bb07_a9c45d60","line":43,"in_reply_to":"7f96bb07_91f20306","updated":"2018-01-23 15:57:23.000000000","message":"Done","commit_id":"8f6da1644470f6a7e38b2480a1c4a9ecb1516830"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4be5125ee36b81267c46aed339d6b5c5312b0af0","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        return parser"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"    @version.check(version.ge(\u00271.1\u0027))"},{"line_number":75,"context_line":"    def take_action(self, parsed_args):"},{"line_number":76,"context_line":"        http \u003d self.app.client_manager.placement"},{"line_number":77,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"7f96bb07_b10b7f22","line":74,"range":{"start_line":74,"start_character":4,"end_line":74,"end_character":37},"updated":"2018-01-23 01:02:37.000000000","message":"Where does one specify the version? I don\u0027t see anything in the CLI help output about this needing to use 1.1 or which option to use to specify that version:\n\nstack@queens:~/osc-placement$ openstack resource provider aggregate list --help\nusage: openstack resource provider aggregate list [-h]\n                                                  [-f {csv,json,table,value,yaml}]\n                                                  [-c COLUMN]\n                                                  [--max-width \u003cinteger\u003e]\n                                                  [--fit-width]\n                                                  [--print-empty] [--noindent]\n                                                  [--quote {all,minimal,none,nonnumeric}]\n                                                  [--sort-column SORT_COLUMN]\n                                                  \u003cuuid\u003e\n\nList resource provider aggregates.\n\npositional arguments:\n  \u003cuuid\u003e                UUID of the resource provider\n\noptional arguments:\n  -h, --help            show this help message and exit\n\noutput formatters:\n  output formatter options\n\n  -f {csv,json,table,value,yaml}, --format {csv,json,table,value,yaml}\n                        the output format, defaults to table\n  -c COLUMN, --column COLUMN\n                        specify the column(s) to include, can be repeated\n  --sort-column SORT_COLUMN\n                        specify the column(s) to sort the data (columns\n                        specified first have a priority, non-existing columns\n                        are ignored), can be repeated\n\ntable formatter:\n  --max-width \u003cinteger\u003e\n                        Maximum display width, \u003c1 to disable. You can also use\n                        the CLIFF_MAX_TERM_WIDTH environment variable, but the\n                        parameter takes precedence.\n  --fit-width           Fit the table to the display width. Implied if --max-\n                        width greater than 0. Set the environment variable\n                        CLIFF_FIT_WIDTH\u003d1 to always enable\n  --print-empty         Print empty table if there is no data to show.\n\njson formatter:\n  --noindent            whether to disable indenting the JSON\n\nCSV Formatter:\n  --quote {all,minimal,none,nonnumeric}\n                        when to include quotes, defaults to nonnumeric\n\nThis command is provided by the osc-placement plugin.\nstack@queens:~/osc-placement$\n\n---------------\n\n\n\nI guess it\u0027s --os-placement-api-version but I don\u0027t see that anywhere in the help output.\n\nProbably something else that\u0027s good to put in the \"Usage\" docs.","commit_id":"8f6da1644470f6a7e38b2480a1c4a9ecb1516830"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"5f0f98510c1427872afd1dd06152098e41deec0b","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"        return parser"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"    @version.check(version.ge(\u00271.1\u0027))"},{"line_number":75,"context_line":"    def take_action(self, parsed_args):"},{"line_number":76,"context_line":"        http \u003d self.app.client_manager.placement"},{"line_number":77,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"7f96bb07_89c96179","line":74,"range":{"start_line":74,"start_character":4,"end_line":74,"end_character":37},"in_reply_to":"7f96bb07_b10b7f22","updated":"2018-01-23 15:57:23.000000000","message":"(9:52:36 AM) mriedem: dtroyer: as for pointing out that a specific command only works with a minimum microversion,\n(9:52:53 AM) mriedem: dtroyer: is it best to just put something like \"This command requires at least --os-placement-api-version 1.1.\" ?\n(9:53:12 AM) dtroyer: something of that form, for now yes\n\nI\u0027ll update the help text. And I\u0027ve got a patch with the microversion details in the usage docs here:\n\nhttps://review.openstack.org/#/c/536858/","commit_id":"8f6da1644470f6a7e38b2480a1c4a9ecb1516830"}],"osc_placement/version.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4be5125ee36b81267c46aed339d6b5c5312b0af0","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":2,"context_line":"# not use this file except in compliance with the License. You may obtain"},{"line_number":3,"context_line":"# a copy of the License at"},{"line_number":4,"context_line":"#"}],"source_content_type":"text/x-python","patch_set":8,"id":"7f96bb07_711c1713","line":1,"updated":"2018-01-23 01:02:37.000000000","message":"This seems like something that should live in osc-lib.","commit_id":"8f6da1644470f6a7e38b2480a1c4a9ecb1516830"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"5f0f98510c1427872afd1dd06152098e41deec0b","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":2,"context_line":"# not use this file except in compliance with the License. You may obtain"},{"line_number":3,"context_line":"# a copy of the License at"},{"line_number":4,"context_line":"#"}],"source_content_type":"text/x-python","patch_set":8,"id":"7f96bb07_6992d54d","line":1,"in_reply_to":"7f96bb07_711c1713","updated":"2018-01-23 15:57:23.000000000","message":"(9:44:50 AM) dtroyer: mriedem: (late follow-up) I do not have that kind of thing planned for osc-lib, most of the version handling has been added to keystoneauth.  I don\u0027t know offhand how much of that sort of thing is already there, my original osc implementation had a subset of those comparisons.\n(9:46:09 AM) mriedem: ok i guess in https://github.com/openstack/keystoneauth/blob/master/keystoneauth1/discover.py","commit_id":"8f6da1644470f6a7e38b2480a1c4a9ecb1516830"}],"setup.cfg":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4be5125ee36b81267c46aed339d6b5c5312b0af0","unresolved":false,"context_lines":[{"line_number":35,"context_line":"    resource_provider_show   \u003d osc_placement.resources.resource_provider:ShowResourceProvider"},{"line_number":36,"context_line":"    resource_provider_set    \u003d osc_placement.resources.resource_provider:SetResourceProvider"},{"line_number":37,"context_line":"    resource_provider_delete \u003d osc_placement.resources.resource_provider:DeleteResourceProvider"},{"line_number":38,"context_line":"    resource provider_usage_show  \u003d osc_placement.resources.usage:ShowUsage"},{"line_number":39,"context_line":"    resource_provider_inventory_set       \u003d osc_placement.resources.inventory:SetInventory"},{"line_number":40,"context_line":"    resource_provider_inventory_class_set \u003d osc_placement.resources.inventory:SetClassInventory"},{"line_number":41,"context_line":"    resource_provider_inventory_list      \u003d osc_placement.resources.inventory:ListInventory"}],"source_content_type":"text/x-ttcn-cfg","patch_set":8,"id":"7f96bb07_568311aa","line":38,"updated":"2018-01-23 01:02:37.000000000","message":"I\u0027m not sure why this needed to move.","commit_id":"8f6da1644470f6a7e38b2480a1c4a9ecb1516830"}]}
