)]}'
{".zuul.yaml":[{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"cccdb4e2f1aff2b2e5b46f35e119f4e731566066","unresolved":false,"context_lines":[{"line_number":12,"context_line":"    vars:"},{"line_number":13,"context_line":"      tox_environment:"},{"line_number":14,"context_line":"        PIFPAF_DAEMON: etcd"},{"line_number":15,"context_line":"        # Use *OS_* prefix rather than *OSLO_* to be automatically"},{"line_number":16,"context_line":"        # loaded by oslo.config"},{"line_number":17,"context_line":"        OS_CACHE_BACKEND: oslo_cache.etcd3gw"},{"line_number":18,"context_line":"        OS_CACHE_BACKEND_ARGUMENTS: host:127.0.0.1,port:2379"},{"line_number":19,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":1,"id":"df33271e_de59bd5a","line":16,"range":{"start_line":15,"start_character":8,"end_line":16,"end_character":31},"updated":"2020-04-08 07:06:46.000000000","message":"yeah, that makes sense!","commit_id":"905c10bab8153be2de551b11098d908fa7f66df5"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"cccdb4e2f1aff2b2e5b46f35e119f4e731566066","unresolved":false,"context_lines":[{"line_number":15,"context_line":"        # Use *OS_* prefix rather than *OSLO_* to be automatically"},{"line_number":16,"context_line":"        # loaded by oslo.config"},{"line_number":17,"context_line":"        OS_CACHE_BACKEND: oslo_cache.etcd3gw"},{"line_number":18,"context_line":"        OS_CACHE_BACKEND_ARGUMENTS: host:127.0.0.1,port:2379"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"- project:"},{"line_number":21,"context_line":"    templates:"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"df33271e_be54b922","line":18,"range":{"start_line":18,"start_character":36,"end_line":18,"end_character":60},"updated":"2020-04-08 07:06:46.000000000","message":"still not the best as pifpaf could use different but better than had in code","commit_id":"905c10bab8153be2de551b11098d908fa7f66df5"},{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"0a3a355bf58e7742d20ff9094d59b1863461051a","unresolved":false,"context_lines":[{"line_number":15,"context_line":"        # Use *OS_* prefix rather than *OSLO_* to be automatically"},{"line_number":16,"context_line":"        # loaded by oslo.config"},{"line_number":17,"context_line":"        OS_CACHE_BACKEND: oslo_cache.etcd3gw"},{"line_number":18,"context_line":"        OS_CACHE_BACKEND_ARGUMENTS: host:127.0.0.1,port:2379"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"- project:"},{"line_number":21,"context_line":"    templates:"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"df33271e_77da4fe9","line":18,"range":{"start_line":18,"start_character":36,"end_line":18,"end_character":60},"in_reply_to":"df33271e_3e354447","updated":"2020-04-08 12:41:14.000000000","message":"yeah, agreed already :-)","commit_id":"905c10bab8153be2de551b11098d908fa7f66df5"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"6b28b390a74afeb7e07718ffd538c07a94a825bb","unresolved":false,"context_lines":[{"line_number":15,"context_line":"        # Use *OS_* prefix rather than *OSLO_* to be automatically"},{"line_number":16,"context_line":"        # loaded by oslo.config"},{"line_number":17,"context_line":"        OS_CACHE_BACKEND: oslo_cache.etcd3gw"},{"line_number":18,"context_line":"        OS_CACHE_BACKEND_ARGUMENTS: host:127.0.0.1,port:2379"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"- project:"},{"line_number":21,"context_line":"    templates:"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"df33271e_3e354447","line":18,"range":{"start_line":18,"start_character":36,"end_line":18,"end_character":60},"in_reply_to":"df33271e_be54b922","updated":"2020-04-08 10:24:11.000000000","message":"Surely, but I think we should focus on OSLO himself (how it retrieve config and args) instead of give the prior to pifpaf for now.","commit_id":"905c10bab8153be2de551b11098d908fa7f66df5"}],"oslo_cache/tests/functional/test_base.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"5608285882605ecb3f7b614dd371008c7c9dcd57","unresolved":false,"context_lines":[{"line_number":13,"context_line":"# under the License."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"from oslo_utils import uuidutils"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"from oslotest import base"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from oslo_cache import core as cache"}],"source_content_type":"text/x-python","patch_set":14,"id":"ff570b3c_f9fca5b6","line":16,"updated":"2020-05-27 15:41:59.000000000","message":"Nit: extra line break should be removed.","commit_id":"aa2f1ce4cd6c4d41e5d2c45824aec66556e78259"}],"oslo_cache/tests/functional/test_cache_backend.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"65f95402c5410d042e60ad6f76e9dcc0c9275222","unresolved":false,"context_lines":[{"line_number":29,"context_line":""},{"line_number":30,"context_line":"    def setUp(self):"},{"line_number":31,"context_line":"        super(TestCacheBackend, self).setUp()"},{"line_number":32,"context_line":"        cache.configure(CONF)"},{"line_number":33,"context_line":"        self.region \u003d cache.create_region()"},{"line_number":34,"context_line":"        cache.configure_cache_region(CONF, self.region)"},{"line_number":35,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"ff570b3c_675acef3","line":32,"range":{"start_line":32,"start_character":24,"end_line":32,"end_character":28},"updated":"2020-05-12 12:44:18.000000000","message":"I think the issue here is that you\u0027re not calling this to \"initialize\" it [1]. Without that call, you\u0027ll never attempt to parse configuration from files, the command line or environment.\n\nWith that said, I don\u0027t think doing that would be a good idea. We\u0027re not an application and oslo.config uses singletons that make things a bit funky. Using manual fixture configuration seems a much better idea, IMO.\n\n[1] https://github.com/openstack/oslo.config/blob/2727d3e4e1f08a7d06d6b782ee9ffee85248ac49/oslo_config/cfg.py#L2075-L2141","commit_id":"66b5f409207d838da556c5315cebd91c40b20e57"},{"author":{"_account_id":27954,"name":"Moisés Guimarães de Medeiros","email":"guimaraes@pm.me","username":"moguimar"},"change_message_id":"e81dae117113a9b47e8414c5ba5623bd6f8d5770","unresolved":false,"context_lines":[{"line_number":31,"context_line":"        super(TestCacheBackend, self).setUp()"},{"line_number":32,"context_line":"        cache.configure(CONF)"},{"line_number":33,"context_line":"        self.region \u003d cache.create_region()"},{"line_number":34,"context_line":"        cache.configure_cache_region(CONF, self.region)"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"    def test_backend_get_missing_data(self):"},{"line_number":37,"context_line":"        random_key \u003d uuidutils.generate_uuid(dashed\u003dFalse)"}],"source_content_type":"text/x-python","patch_set":7,"id":"ff570b3c_f38ea02c","line":34,"range":{"start_line":34,"start_character":8,"end_line":34,"end_character":55},"updated":"2020-05-12 15:08:54.000000000","message":"try adding `CONF()` after this line.","commit_id":"66b5f409207d838da556c5315cebd91c40b20e57"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"bc596ddd6b212338c7b80f5951e4be57009db27b","unresolved":false,"context_lines":[{"line_number":31,"context_line":"        super(TestCacheBackend, self).setUp()"},{"line_number":32,"context_line":"        cache.configure(CONF)"},{"line_number":33,"context_line":"        self.region \u003d cache.create_region()"},{"line_number":34,"context_line":"        cache.configure_cache_region(CONF, self.region)"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"    def test_backend_get_missing_data(self):"},{"line_number":37,"context_line":"        random_key \u003d uuidutils.generate_uuid(dashed\u003dFalse)"}],"source_content_type":"text/x-python","patch_set":7,"id":"ff570b3c_2ebb8ae2","line":34,"range":{"start_line":34,"start_character":8,"end_line":34,"end_character":55},"in_reply_to":"ff570b3c_f38ea02c","updated":"2020-05-12 16:48:48.000000000","message":"I decided to delegate the config init to a dedicated class [1] for each backend instead of using env vars, in PS10 all tests stayed centralized in the `functional/test_base` but config is delegated to a backend class that inherit of this base test.\n\nYou can find a lightweight example here [2].\n\n[1] https://review.opendev.org/#/c/718223/10/oslo_cache/tests/functional/etcd3gw/test_cache_backend.py\n[2] https://github.com/4383/oslo.cache/commit/47e89d827246718bdc2b5c551bf4c284fb3309fc","commit_id":"66b5f409207d838da556c5315cebd91c40b20e57"},{"author":{"_account_id":27954,"name":"Moisés Guimarães de Medeiros","email":"guimaraes@pm.me","username":"moguimar"},"change_message_id":"beedd201d01aed2ed3736d6211d33c41ffd80a95","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        # NOTE(hberaud): For functional tests backend is mandatory to"},{"line_number":39,"context_line":"        # avoid to use the default backend (in memory)."},{"line_number":40,"context_line":"        if not backend:"},{"line_number":41,"context_line":"            raise Exception(\"A backend should be specified for \""},{"line_number":42,"context_line":"                            \"functional testing\")"},{"line_number":43,"context_line":"        # NOTE(hberaud): Other configs can be none and if something"},{"line_number":44,"context_line":"        # went wrong during execution then we suppose that the zuul job"},{"line_number":45,"context_line":"        # is misconfigured for the given backend and you should verify first"}],"source_content_type":"text/x-python","patch_set":9,"id":"ff570b3c_b230bf09","line":42,"range":{"start_line":41,"start_character":12,"end_line":42,"end_character":49},"updated":"2020-05-11 15:03:03.000000000","message":"I like this, they were probably passing before when you didn\u0027t have that extra _ due to fallback to default backend.","commit_id":"7b7ac7db0754e625cec44a0c61e7aea9ea26a48a"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"2dab957d24398e2b40dbd13a29398207f5ad0b60","unresolved":false,"context_lines":[{"line_number":38,"context_line":"        # NOTE(hberaud): For functional tests backend is mandatory to"},{"line_number":39,"context_line":"        # avoid to use the default backend (in memory)."},{"line_number":40,"context_line":"        if not backend:"},{"line_number":41,"context_line":"            raise Exception(\"A backend should be specified for \""},{"line_number":42,"context_line":"                            \"functional testing\")"},{"line_number":43,"context_line":"        # NOTE(hberaud): Other configs can be none and if something"},{"line_number":44,"context_line":"        # went wrong during execution then we suppose that the zuul job"},{"line_number":45,"context_line":"        # is misconfigured for the given backend and you should verify first"}],"source_content_type":"text/x-python","patch_set":9,"id":"ff570b3c_9e3664b4","line":42,"range":{"start_line":41,"start_character":12,"end_line":42,"end_character":49},"in_reply_to":"ff570b3c_b230bf09","updated":"2020-05-11 17:06:17.000000000","message":"\u003e I like this, they were probably passing before when you didn\u0027t have\n \u003e that extra _ due to fallback to default backend.\n\nYep this that I\u0027ve in mind too, I think the default was used and the passed config was simply ignored...\n\nI\u0027m not an oslo.config expert and I wondering why oslo.config don\u0027t catch our passed env vars... I would really prefered to avoid to use getenv but I don\u0027t think we have the choice here... anyway it\u0027s not a big deal.","commit_id":"7b7ac7db0754e625cec44a0c61e7aea9ea26a48a"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"2dab957d24398e2b40dbd13a29398207f5ad0b60","unresolved":false,"context_lines":[{"line_number":44,"context_line":"        # went wrong during execution then we suppose that the zuul job"},{"line_number":45,"context_line":"        # is misconfigured for the given backend and you should verify first"},{"line_number":46,"context_line":"        # which config should be passed in this the related context."},{"line_number":47,"context_line":"        backend_arguments \u003d os.getenv(\u0027OS_CACHE__BACKEND_ARGUMENTS\u0027)"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"        self.config_fixture \u003d self.useFixture(config_fixture.Config())"},{"line_number":50,"context_line":"        self.config_fixture.config("}],"source_content_type":"text/x-python","patch_set":9,"id":"ff570b3c_be2c0848","line":47,"range":{"start_line":47,"start_character":7,"end_line":47,"end_character":68},"updated":"2020-05-11 17:06:17.000000000","message":"Sigh... the format of this one should be adapted too, I\u0027ll submit a new patch to manage that:\n\n```\n2020-05-11 15:04:22.908219 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: h\n2020-05-11 15:04:22.908328 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: o\n2020-05-11 15:04:22.908410 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: s\n2020-05-11 15:04:22.908515 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: t\n2020-05-11 15:04:22.908608 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: 1\n2020-05-11 15:04:22.908697 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: 2\n2020-05-11 15:04:22.908781 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: 7\n2020-05-11 15:04:22.908850 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: .\n2020-05-11 15:04:22.908931 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: 0\n2020-05-11 15:04:22.909013 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: .\n2020-05-11 15:04:22.909094 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: 0\n2020-05-11 15:04:22.909223 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: .\n2020-05-11 15:04:22.909312 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: 1\n2020-05-11 15:04:22.909395 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: ,\n2020-05-11 15:04:22.909476 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: p\n2020-05-11 15:04:22.909556 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: o\n2020-05-11 15:04:22.909636 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: r\n2020-05-11 15:04:22.909717 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: t\n2020-05-11 15:04:22.909817 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: 2\n2020-05-11 15:04:22.909891 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: 3\n2020-05-11 15:04:22.909972 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: 7\n2020-05-11 15:04:22.910051 | ubuntu-bionic |    ERROR [oslo.cache.core] Unable to build cache config-key. Expected format \"\u003cargname\u003e:\u003cvalue\u003e\". Skipping unknown format: 9\n```\n\nThis is for this kind of issue that I would prefer that oslo.config will retrieve passed config via env var automatically...","commit_id":"7b7ac7db0754e625cec44a0c61e7aea9ea26a48a"}],"tox.ini":[{"author":{"_account_id":30491,"name":"Radosław Piliszek","display_name":"Radek","email":"radek@piliszek.it","username":"yoctozepto","status":"self-employed techologist, collaborating mostly with 7bulls.com"},"change_message_id":"cccdb4e2f1aff2b2e5b46f35e119f4e731566066","unresolved":false,"context_lines":[{"line_number":15,"context_line":"  stestr run --slowest {posargs}"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"[testenv:functional]"},{"line_number":18,"context_line":"whitelist_externals \u003d find"},{"line_number":19,"context_line":"setenv \u003d"},{"line_number":20,"context_line":"    STESTR_TEST_PATH\u003d./oslo_cache/tests/functional"},{"line_number":21,"context_line":"passenv \u003d"}],"source_content_type":"text/x-properties","patch_set":1,"id":"df33271e_9e5f3540","line":18,"updated":"2020-04-08 07:06:46.000000000","message":"this is inherited from testenv already, no need to duplicate here","commit_id":"905c10bab8153be2de551b11098d908fa7f66df5"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"6b28b390a74afeb7e07718ffd538c07a94a825bb","unresolved":false,"context_lines":[{"line_number":15,"context_line":"  stestr run --slowest {posargs}"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"[testenv:functional]"},{"line_number":18,"context_line":"whitelist_externals \u003d find"},{"line_number":19,"context_line":"setenv \u003d"},{"line_number":20,"context_line":"    STESTR_TEST_PATH\u003d./oslo_cache/tests/functional"},{"line_number":21,"context_line":"passenv \u003d"}],"source_content_type":"text/x-properties","patch_set":1,"id":"df33271e_de91b848","line":18,"in_reply_to":"df33271e_9e5f3540","updated":"2020-04-08 10:24:11.000000000","message":"Ah right I missed the testenv occurence...","commit_id":"905c10bab8153be2de551b11098d908fa7f66df5"}]}
