)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"a4308a21cdfe6c4337d563df74a4dae20d992143","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"ee318277_2dd583cd","updated":"2025-03-25 13:08:45.000000000","message":"Please also consider adding a release note to explain this new feature","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"},{"author":{"_account_id":35145,"name":"marihan girgis","email":"mgirgisf@redhat.com","username":"mgirgisf"},"change_message_id":"928dc4bd6e80d9f23df102efe109a4e005f88b0f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"8eaedf2e_4895f737","in_reply_to":"dd0c6a65_e65e5d32","updated":"2025-03-27 08:29:18.000000000","message":"Done","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"c1cf12d6e929ed7fba720eb8c1c577bec6ffc107","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"dd0c6a65_e65e5d32","in_reply_to":"ee318277_2dd583cd","updated":"2025-03-26 12:53:40.000000000","message":"See https://docs.openstack.org/keystone/latest/contributor/release-notes.html , which is the documentation for keystone but the same tool is used in this repository ,too.","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"},{"author":{"_account_id":32968,"name":"Juan Larriba","email":"jlarriba@redhat.com","username":"jlarriba"},"change_message_id":"fee0140774fde43d80100bdc92039a4376f9bf25","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":17,"id":"99cb6294_a2ea443e","updated":"2025-04-10 14:28:14.000000000","message":"There is a very relevant review comment from Takashi that was not addressed.","commit_id":"efed0a2dac3f618f073ecb7fef185d8963077007"},{"author":{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},"change_message_id":"053052c865ee96c9a65b585ed7268c0aaedc704e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":17,"id":"91e13230_4dd2f066","updated":"2025-04-04 11:55:25.000000000","message":"thank you, looks good to me!","commit_id":"efed0a2dac3f618f073ecb7fef185d8963077007"},{"author":{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},"change_message_id":"0f4f00b5cf99e990f43619d030a40ebbdcf79ede","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":19,"id":"8e5b6518_525d0e76","updated":"2025-04-24 07:35:50.000000000","message":"The diff between patch set 17 and patch set 19 is minimal, I\u0027m still good with this.","commit_id":"e769a80b6ca896bacadefa66bbc374a9be3b39f7"}],"ceilometer/polling/manager.py":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"a4308a21cdfe6c4337d563df74a4dae20d992143","unresolved":true,"context_lines":[{"line_number":106,"context_line":"                default\u003dFalse,"},{"line_number":107,"context_line":"                help\u003d\u0027Whether the polling service should ignore \u0027"},{"line_number":108,"context_line":"                     \u0027disabled projects or not.\u0027),"},{"line_number":109,"context_line":"    cfg.BoolOpt(\u0027prometheus_tls_enable\u0027,"},{"line_number":110,"context_line":"                default\u003dFalse,"},{"line_number":111,"context_line":"                help\u003d\u0027Whether it will expose tls metrics or not\u0027),"},{"line_number":112,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_cert\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"83e37ef5_6e06e6a9","line":109,"range":{"start_line":109,"start_character":17,"end_line":109,"end_character":38},"updated":"2025-03-25 13:08:45.000000000","message":"This option is not actually used.","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"},{"author":{"_account_id":35145,"name":"marihan girgis","email":"mgirgisf@redhat.com","username":"mgirgisf"},"change_message_id":"77e973c593f7a10d341ae7f44f8755b395ddd0ea","unresolved":false,"context_lines":[{"line_number":106,"context_line":"                default\u003dFalse,"},{"line_number":107,"context_line":"                help\u003d\u0027Whether the polling service should ignore \u0027"},{"line_number":108,"context_line":"                     \u0027disabled projects or not.\u0027),"},{"line_number":109,"context_line":"    cfg.BoolOpt(\u0027prometheus_tls_enable\u0027,"},{"line_number":110,"context_line":"                default\u003dFalse,"},{"line_number":111,"context_line":"                help\u003d\u0027Whether it will expose tls metrics or not\u0027),"},{"line_number":112,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_cert\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"56db1b68_0b5d432e","line":109,"range":{"start_line":109,"start_character":17,"end_line":109,"end_character":38},"in_reply_to":"83e37ef5_6e06e6a9","updated":"2025-03-26 12:25:34.000000000","message":"Done","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"a4308a21cdfe6c4337d563df74a4dae20d992143","unresolved":true,"context_lines":[{"line_number":109,"context_line":"    cfg.BoolOpt(\u0027prometheus_tls_enable\u0027,"},{"line_number":110,"context_line":"                default\u003dFalse,"},{"line_number":111,"context_line":"                help\u003d\u0027Whether it will expose tls metrics or not\u0027),"},{"line_number":112,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_cert\u0027,"},{"line_number":113,"context_line":"               default\u003dNone,"},{"line_number":114,"context_line":"               help\u003d\u0027The required tls_cert to allow this ceilometer to \u0027"},{"line_number":115,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"}],"source_content_type":"text/x-python","patch_set":2,"id":"2190e46d_dd52a877","line":112,"range":{"start_line":112,"start_character":16,"end_line":112,"end_character":35},"updated":"2025-03-25 13:08:45.000000000","message":"IIUC this should point the file path then I\u0027d suggest prometheus_tls_certfile as a better naming.","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"},{"author":{"_account_id":35145,"name":"marihan girgis","email":"mgirgisf@redhat.com","username":"mgirgisf"},"change_message_id":"77e973c593f7a10d341ae7f44f8755b395ddd0ea","unresolved":false,"context_lines":[{"line_number":109,"context_line":"    cfg.BoolOpt(\u0027prometheus_tls_enable\u0027,"},{"line_number":110,"context_line":"                default\u003dFalse,"},{"line_number":111,"context_line":"                help\u003d\u0027Whether it will expose tls metrics or not\u0027),"},{"line_number":112,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_cert\u0027,"},{"line_number":113,"context_line":"               default\u003dNone,"},{"line_number":114,"context_line":"               help\u003d\u0027The required tls_cert to allow this ceilometer to \u0027"},{"line_number":115,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"}],"source_content_type":"text/x-python","patch_set":2,"id":"760edc5c_be7c56d6","line":112,"range":{"start_line":112,"start_character":16,"end_line":112,"end_character":35},"in_reply_to":"2190e46d_dd52a877","updated":"2025-03-26 12:25:34.000000000","message":"Done","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"a4308a21cdfe6c4337d563df74a4dae20d992143","unresolved":true,"context_lines":[{"line_number":111,"context_line":"                help\u003d\u0027Whether it will expose tls metrics or not\u0027),"},{"line_number":112,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_cert\u0027,"},{"line_number":113,"context_line":"               default\u003dNone,"},{"line_number":114,"context_line":"               help\u003d\u0027The required tls_cert to allow this ceilometer to \u0027"},{"line_number":115,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"},{"line_number":116,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_key\u0027,"},{"line_number":117,"context_line":"               default\u003dNone,"}],"source_content_type":"text/x-python","patch_set":2,"id":"2928660b_80ee89d8","line":114,"range":{"start_line":114,"start_character":21,"end_line":114,"end_character":42},"updated":"2025-03-25 13:08:45.000000000","message":"The certificate","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"},{"author":{"_account_id":35145,"name":"marihan girgis","email":"mgirgisf@redhat.com","username":"mgirgisf"},"change_message_id":"77e973c593f7a10d341ae7f44f8755b395ddd0ea","unresolved":false,"context_lines":[{"line_number":111,"context_line":"                help\u003d\u0027Whether it will expose tls metrics or not\u0027),"},{"line_number":112,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_cert\u0027,"},{"line_number":113,"context_line":"               default\u003dNone,"},{"line_number":114,"context_line":"               help\u003d\u0027The required tls_cert to allow this ceilometer to \u0027"},{"line_number":115,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"},{"line_number":116,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_key\u0027,"},{"line_number":117,"context_line":"               default\u003dNone,"}],"source_content_type":"text/x-python","patch_set":2,"id":"e9cbab7e_bade31ba","line":114,"range":{"start_line":114,"start_character":21,"end_line":114,"end_character":42},"in_reply_to":"2928660b_80ee89d8","updated":"2025-03-26 12:25:34.000000000","message":"Done","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"a4308a21cdfe6c4337d563df74a4dae20d992143","unresolved":true,"context_lines":[{"line_number":113,"context_line":"               default\u003dNone,"},{"line_number":114,"context_line":"               help\u003d\u0027The required tls_cert to allow this ceilometer to \u0027"},{"line_number":115,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"},{"line_number":116,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_key\u0027,"},{"line_number":117,"context_line":"               default\u003dNone,"},{"line_number":118,"context_line":"               help\u003d\u0027the required tls_key to allow this ceilometer to \u0027"},{"line_number":119,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"}],"source_content_type":"text/x-python","patch_set":2,"id":"74d45be3_fcd0371e","line":116,"range":{"start_line":116,"start_character":16,"end_line":116,"end_character":34},"updated":"2025-03-25 13:08:45.000000000","message":"ditto. prometheus_tls_keyfile","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"},{"author":{"_account_id":35145,"name":"marihan girgis","email":"mgirgisf@redhat.com","username":"mgirgisf"},"change_message_id":"77e973c593f7a10d341ae7f44f8755b395ddd0ea","unresolved":false,"context_lines":[{"line_number":113,"context_line":"               default\u003dNone,"},{"line_number":114,"context_line":"               help\u003d\u0027The required tls_cert to allow this ceilometer to \u0027"},{"line_number":115,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"},{"line_number":116,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_key\u0027,"},{"line_number":117,"context_line":"               default\u003dNone,"},{"line_number":118,"context_line":"               help\u003d\u0027the required tls_key to allow this ceilometer to \u0027"},{"line_number":119,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"}],"source_content_type":"text/x-python","patch_set":2,"id":"3ac3908c_c62e6d4b","line":116,"range":{"start_line":116,"start_character":16,"end_line":116,"end_character":34},"in_reply_to":"74d45be3_fcd0371e","updated":"2025-03-26 12:25:34.000000000","message":"Done","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"a4308a21cdfe6c4337d563df74a4dae20d992143","unresolved":true,"context_lines":[{"line_number":114,"context_line":"               help\u003d\u0027The required tls_cert to allow this ceilometer to \u0027"},{"line_number":115,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"},{"line_number":116,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_key\u0027,"},{"line_number":117,"context_line":"               default\u003dNone,"},{"line_number":118,"context_line":"               help\u003d\u0027the required tls_key to allow this ceilometer to \u0027"},{"line_number":119,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"},{"line_number":120,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":2,"id":"e7dbcd9b_1383d5ca","line":117,"range":{"start_line":117,"start_character":15,"end_line":117,"end_character":28},"updated":"2025-03-25 13:08:45.000000000","message":"ditto. remove this.","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"},{"author":{"_account_id":35145,"name":"marihan girgis","email":"mgirgisf@redhat.com","username":"mgirgisf"},"change_message_id":"77e973c593f7a10d341ae7f44f8755b395ddd0ea","unresolved":false,"context_lines":[{"line_number":114,"context_line":"               help\u003d\u0027The required tls_cert to allow this ceilometer to \u0027"},{"line_number":115,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"},{"line_number":116,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_key\u0027,"},{"line_number":117,"context_line":"               default\u003dNone,"},{"line_number":118,"context_line":"               help\u003d\u0027the required tls_key to allow this ceilometer to \u0027"},{"line_number":119,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"},{"line_number":120,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":2,"id":"a9fb2361_3d7ea2dd","line":117,"range":{"start_line":117,"start_character":15,"end_line":117,"end_character":28},"in_reply_to":"e7dbcd9b_1383d5ca","updated":"2025-03-26 12:25:34.000000000","message":"Done","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"a4308a21cdfe6c4337d563df74a4dae20d992143","unresolved":true,"context_lines":[{"line_number":115,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"},{"line_number":116,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_key\u0027,"},{"line_number":117,"context_line":"               default\u003dNone,"},{"line_number":118,"context_line":"               help\u003d\u0027the required tls_key to allow this ceilometer to \u0027"},{"line_number":119,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"},{"line_number":120,"context_line":"]"},{"line_number":121,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"389a76df_9492b86e","line":118,"range":{"start_line":118,"start_character":21,"end_line":118,"end_character":41},"updated":"2025-03-25 13:08:45.000000000","message":"The private key","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"},{"author":{"_account_id":35145,"name":"marihan girgis","email":"mgirgisf@redhat.com","username":"mgirgisf"},"change_message_id":"77e973c593f7a10d341ae7f44f8755b395ddd0ea","unresolved":false,"context_lines":[{"line_number":115,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"},{"line_number":116,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_key\u0027,"},{"line_number":117,"context_line":"               default\u003dNone,"},{"line_number":118,"context_line":"               help\u003d\u0027the required tls_key to allow this ceilometer to \u0027"},{"line_number":119,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"},{"line_number":120,"context_line":"]"},{"line_number":121,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"3703a155_05791555","line":118,"range":{"start_line":118,"start_character":21,"end_line":118,"end_character":41},"in_reply_to":"389a76df_9492b86e","updated":"2025-03-26 12:25:34.000000000","message":"Done","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"a4308a21cdfe6c4337d563df74a4dae20d992143","unresolved":true,"context_lines":[{"line_number":485,"context_line":"                if address[0] is None or address[1] is None:"},{"line_number":486,"context_line":"                    LOG.warning(\u0027Ignoring invalid address: %s\u0027, addr)"},{"line_number":487,"context_line":"                prom_exporter.export("},{"line_number":488,"context_line":"                    address[0], "},{"line_number":489,"context_line":"                    address[1], "},{"line_number":490,"context_line":"                    self.conf.polling.prometheus_tls_cert, "},{"line_number":491,"context_line":"                    self.conf.polling.prometheus_tls_key)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ddf496de_29356f22","line":488,"range":{"start_line":488,"start_character":31,"end_line":488,"end_character":32},"updated":"2025-03-25 13:08:45.000000000","message":"Remove these trailing white spaces. I\u0027d recommend running at least pep8 locally.","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"},{"author":{"_account_id":35145,"name":"marihan girgis","email":"mgirgisf@redhat.com","username":"mgirgisf"},"change_message_id":"77e973c593f7a10d341ae7f44f8755b395ddd0ea","unresolved":false,"context_lines":[{"line_number":485,"context_line":"                if address[0] is None or address[1] is None:"},{"line_number":486,"context_line":"                    LOG.warning(\u0027Ignoring invalid address: %s\u0027, addr)"},{"line_number":487,"context_line":"                prom_exporter.export("},{"line_number":488,"context_line":"                    address[0], "},{"line_number":489,"context_line":"                    address[1], "},{"line_number":490,"context_line":"                    self.conf.polling.prometheus_tls_cert, "},{"line_number":491,"context_line":"                    self.conf.polling.prometheus_tls_key)"}],"source_content_type":"text/x-python","patch_set":2,"id":"1eee1535_ceeea1e2","line":488,"range":{"start_line":488,"start_character":31,"end_line":488,"end_character":32},"in_reply_to":"ddf496de_29356f22","updated":"2025-03-26 12:25:34.000000000","message":"Done","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"c1cf12d6e929ed7fba720eb8c1c577bec6ffc107","unresolved":true,"context_lines":[{"line_number":110,"context_line":"                default\u003dFalse,"},{"line_number":111,"context_line":"                help\u003d\u0027Whether it will expose tls metrics or not\u0027),"},{"line_number":112,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_certfile\u0027,"},{"line_number":113,"context_line":"               default\u003dNone,"},{"line_number":114,"context_line":"               help\u003d\u0027The certificate file to allow this ceilometer to \u0027"},{"line_number":115,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"},{"line_number":116,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_keyfile\u0027,"}],"source_content_type":"text/x-python","patch_set":5,"id":"894b8c2a_71691fc2","line":113,"range":{"start_line":113,"start_character":15,"end_line":113,"end_character":28},"updated":"2025-03-26 12:53:40.000000000","message":"None is the default value used without explicit definition so this can be omitted.","commit_id":"238a582f9a56e9f7b11915dc5053371fecd3a27a"},{"author":{"_account_id":35145,"name":"marihan girgis","email":"mgirgisf@redhat.com","username":"mgirgisf"},"change_message_id":"928dc4bd6e80d9f23df102efe109a4e005f88b0f","unresolved":true,"context_lines":[{"line_number":110,"context_line":"                default\u003dFalse,"},{"line_number":111,"context_line":"                help\u003d\u0027Whether it will expose tls metrics or not\u0027),"},{"line_number":112,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_certfile\u0027,"},{"line_number":113,"context_line":"               default\u003dNone,"},{"line_number":114,"context_line":"               help\u003d\u0027The certificate file to allow this ceilometer to \u0027"},{"line_number":115,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"},{"line_number":116,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_keyfile\u0027,"}],"source_content_type":"text/x-python","patch_set":5,"id":"c5a88ea2_e0bb34d8","line":113,"range":{"start_line":113,"start_character":15,"end_line":113,"end_character":28},"in_reply_to":"894b8c2a_71691fc2","updated":"2025-03-27 08:29:18.000000000","message":"We have default values set to None in other places, such as heartbeat_socket_dir. This improves readability, is harmless to the code, and maintains the consistency of explicitly defining default values for all parameters.","commit_id":"238a582f9a56e9f7b11915dc5053371fecd3a27a"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"35db43d20a7098f9837ad356dd3685663e0b6481","unresolved":false,"context_lines":[{"line_number":110,"context_line":"                default\u003dFalse,"},{"line_number":111,"context_line":"                help\u003d\u0027Whether it will expose tls metrics or not\u0027),"},{"line_number":112,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_certfile\u0027,"},{"line_number":113,"context_line":"               default\u003dNone,"},{"line_number":114,"context_line":"               help\u003d\u0027The certificate file to allow this ceilometer to \u0027"},{"line_number":115,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"},{"line_number":116,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_keyfile\u0027,"}],"source_content_type":"text/x-python","patch_set":5,"id":"f9a6d07d_6bee3af6","line":113,"range":{"start_line":113,"start_character":15,"end_line":113,"end_character":28},"in_reply_to":"c5a88ea2_e0bb34d8","updated":"2025-03-31 12:42:14.000000000","message":"OK. That is a reasonable point.","commit_id":"238a582f9a56e9f7b11915dc5053371fecd3a27a"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"c1cf12d6e929ed7fba720eb8c1c577bec6ffc107","unresolved":true,"context_lines":[{"line_number":114,"context_line":"               help\u003d\u0027The certificate file to allow this ceilometer to \u0027"},{"line_number":115,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"},{"line_number":116,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_keyfile\u0027,"},{"line_number":117,"context_line":"               default\u003dNone,"},{"line_number":118,"context_line":"               help\u003d\u0027The private key to allow this ceilometer to \u0027"},{"line_number":119,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"},{"line_number":120,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":5,"id":"23d36fda_8b085c72","line":117,"range":{"start_line":117,"start_character":15,"end_line":117,"end_character":28},"updated":"2025-03-26 12:53:40.000000000","message":"ditto","commit_id":"238a582f9a56e9f7b11915dc5053371fecd3a27a"},{"author":{"_account_id":35145,"name":"marihan girgis","email":"mgirgisf@redhat.com","username":"mgirgisf"},"change_message_id":"928dc4bd6e80d9f23df102efe109a4e005f88b0f","unresolved":false,"context_lines":[{"line_number":114,"context_line":"               help\u003d\u0027The certificate file to allow this ceilometer to \u0027"},{"line_number":115,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"},{"line_number":116,"context_line":"    cfg.StrOpt(\u0027prometheus_tls_keyfile\u0027,"},{"line_number":117,"context_line":"               default\u003dNone,"},{"line_number":118,"context_line":"               help\u003d\u0027The private key to allow this ceilometer to \u0027"},{"line_number":119,"context_line":"                    \u0027expose tls scrape endpoints\u0027),"},{"line_number":120,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":5,"id":"44c2d1e5_ce9b8d48","line":117,"range":{"start_line":117,"start_character":15,"end_line":117,"end_character":28},"in_reply_to":"23d36fda_8b085c72","updated":"2025-03-27 08:29:18.000000000","message":"Done","commit_id":"238a582f9a56e9f7b11915dc5053371fecd3a27a"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"c1cf12d6e929ed7fba720eb8c1c577bec6ffc107","unresolved":true,"context_lines":[{"line_number":485,"context_line":"                if address[0] is None or address[1] is None:"},{"line_number":486,"context_line":"                    LOG.warning(\u0027Ignoring invalid address: %s\u0027, addr)"},{"line_number":487,"context_line":"                if self.conf.polling.prometheus_tls_enable:"},{"line_number":488,"context_line":"                    certFile \u003d self.conf.polling.prometheus_tls_certfile"},{"line_number":489,"context_line":"                    keyFile \u003d self.conf.polling.prometheus_tls_keyfile"},{"line_number":490,"context_line":"                    if certFile is None or keyFile is None:"},{"line_number":491,"context_line":"                        LOG.warning(\"Certfile and keyfile must be provided.\")"}],"source_content_type":"text/x-python","patch_set":5,"id":"142d40bd_e21d3c08","line":488,"range":{"start_line":488,"start_character":20,"end_line":488,"end_character":28},"updated":"2025-03-26 12:53:40.000000000","message":"Camel case is not often used in python. Use certfile.","commit_id":"238a582f9a56e9f7b11915dc5053371fecd3a27a"},{"author":{"_account_id":35145,"name":"marihan girgis","email":"mgirgisf@redhat.com","username":"mgirgisf"},"change_message_id":"928dc4bd6e80d9f23df102efe109a4e005f88b0f","unresolved":false,"context_lines":[{"line_number":485,"context_line":"                if address[0] is None or address[1] is None:"},{"line_number":486,"context_line":"                    LOG.warning(\u0027Ignoring invalid address: %s\u0027, addr)"},{"line_number":487,"context_line":"                if self.conf.polling.prometheus_tls_enable:"},{"line_number":488,"context_line":"                    certFile \u003d self.conf.polling.prometheus_tls_certfile"},{"line_number":489,"context_line":"                    keyFile \u003d self.conf.polling.prometheus_tls_keyfile"},{"line_number":490,"context_line":"                    if certFile is None or keyFile is None:"},{"line_number":491,"context_line":"                        LOG.warning(\"Certfile and keyfile must be provided.\")"}],"source_content_type":"text/x-python","patch_set":5,"id":"dfe294ea_f01aad46","line":488,"range":{"start_line":488,"start_character":20,"end_line":488,"end_character":28},"in_reply_to":"142d40bd_e21d3c08","updated":"2025-03-27 08:29:18.000000000","message":"Done","commit_id":"238a582f9a56e9f7b11915dc5053371fecd3a27a"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"c1cf12d6e929ed7fba720eb8c1c577bec6ffc107","unresolved":true,"context_lines":[{"line_number":486,"context_line":"                    LOG.warning(\u0027Ignoring invalid address: %s\u0027, addr)"},{"line_number":487,"context_line":"                if self.conf.polling.prometheus_tls_enable:"},{"line_number":488,"context_line":"                    certFile \u003d self.conf.polling.prometheus_tls_certfile"},{"line_number":489,"context_line":"                    keyFile \u003d self.conf.polling.prometheus_tls_keyfile"},{"line_number":490,"context_line":"                    if certFile is None or keyFile is None:"},{"line_number":491,"context_line":"                        LOG.warning(\"Certfile and keyfile must be provided.\")"},{"line_number":492,"context_line":"                    else:"}],"source_content_type":"text/x-python","patch_set":5,"id":"d183d732_670813c5","line":489,"range":{"start_line":489,"start_character":20,"end_line":489,"end_character":27},"updated":"2025-03-26 12:53:40.000000000","message":"ditto","commit_id":"238a582f9a56e9f7b11915dc5053371fecd3a27a"},{"author":{"_account_id":35145,"name":"marihan girgis","email":"mgirgisf@redhat.com","username":"mgirgisf"},"change_message_id":"928dc4bd6e80d9f23df102efe109a4e005f88b0f","unresolved":false,"context_lines":[{"line_number":486,"context_line":"                    LOG.warning(\u0027Ignoring invalid address: %s\u0027, addr)"},{"line_number":487,"context_line":"                if self.conf.polling.prometheus_tls_enable:"},{"line_number":488,"context_line":"                    certFile \u003d self.conf.polling.prometheus_tls_certfile"},{"line_number":489,"context_line":"                    keyFile \u003d self.conf.polling.prometheus_tls_keyfile"},{"line_number":490,"context_line":"                    if certFile is None or keyFile is None:"},{"line_number":491,"context_line":"                        LOG.warning(\"Certfile and keyfile must be provided.\")"},{"line_number":492,"context_line":"                    else:"}],"source_content_type":"text/x-python","patch_set":5,"id":"92e4cf23_672fe6c9","line":489,"range":{"start_line":489,"start_character":20,"end_line":489,"end_character":27},"in_reply_to":"d183d732_670813c5","updated":"2025-03-27 08:29:18.000000000","message":"Done","commit_id":"238a582f9a56e9f7b11915dc5053371fecd3a27a"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"c1cf12d6e929ed7fba720eb8c1c577bec6ffc107","unresolved":true,"context_lines":[{"line_number":487,"context_line":"                if self.conf.polling.prometheus_tls_enable:"},{"line_number":488,"context_line":"                    certFile \u003d self.conf.polling.prometheus_tls_certfile"},{"line_number":489,"context_line":"                    keyFile \u003d self.conf.polling.prometheus_tls_keyfile"},{"line_number":490,"context_line":"                    if certFile is None or keyFile is None:"},{"line_number":491,"context_line":"                        LOG.warning(\"Certfile and keyfile must be provided.\")"},{"line_number":492,"context_line":"                    else:"},{"line_number":493,"context_line":"                        prom_exporter.export("},{"line_number":494,"context_line":"                            address[0],"}],"source_content_type":"text/x-python","patch_set":5,"id":"ce6a2f18_056fc0d6","line":491,"range":{"start_line":490,"start_character":0,"end_line":491,"end_character":77},"updated":"2025-03-26 12:53:40.000000000","message":"So export endpoint is completely disabled when tls_enable is set to True but any of certfile or keyfile is not set. This hides the config error and may surprise users. IMO we should raise an exception here and let the process fail.\n\nWe may have to update the existing logic in L487 but that can be done separately.","commit_id":"238a582f9a56e9f7b11915dc5053371fecd3a27a"},{"author":{"_account_id":35145,"name":"marihan girgis","email":"mgirgisf@redhat.com","username":"mgirgisf"},"change_message_id":"928dc4bd6e80d9f23df102efe109a4e005f88b0f","unresolved":false,"context_lines":[{"line_number":487,"context_line":"                if self.conf.polling.prometheus_tls_enable:"},{"line_number":488,"context_line":"                    certFile \u003d self.conf.polling.prometheus_tls_certfile"},{"line_number":489,"context_line":"                    keyFile \u003d self.conf.polling.prometheus_tls_keyfile"},{"line_number":490,"context_line":"                    if certFile is None or keyFile is None:"},{"line_number":491,"context_line":"                        LOG.warning(\"Certfile and keyfile must be provided.\")"},{"line_number":492,"context_line":"                    else:"},{"line_number":493,"context_line":"                        prom_exporter.export("},{"line_number":494,"context_line":"                            address[0],"}],"source_content_type":"text/x-python","patch_set":5,"id":"c3f1b137_2e2492de","line":491,"range":{"start_line":490,"start_character":0,"end_line":491,"end_character":77},"in_reply_to":"ce6a2f18_056fc0d6","updated":"2025-03-27 08:29:18.000000000","message":"Done","commit_id":"238a582f9a56e9f7b11915dc5053371fecd3a27a"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"c1cf12d6e929ed7fba720eb8c1c577bec6ffc107","unresolved":true,"context_lines":[{"line_number":489,"context_line":"                    keyFile \u003d self.conf.polling.prometheus_tls_keyfile"},{"line_number":490,"context_line":"                    if certFile is None or keyFile is None:"},{"line_number":491,"context_line":"                        LOG.warning(\"Certfile and keyfile must be provided.\")"},{"line_number":492,"context_line":"                    else:"},{"line_number":493,"context_line":"                        prom_exporter.export("},{"line_number":494,"context_line":"                            address[0],"},{"line_number":495,"context_line":"                            address[1],"},{"line_number":496,"context_line":"                            certFile,"},{"line_number":497,"context_line":"                            keyFile)"},{"line_number":498,"context_line":"                else:"},{"line_number":499,"context_line":"                    prom_exporter.export("},{"line_number":500,"context_line":"                        address[0],"},{"line_number":501,"context_line":"                        address[1])"},{"line_number":502,"context_line":""},{"line_number":503,"context_line":"        self._keystone \u003d None"},{"line_number":504,"context_line":"        self._keystone_last_exception \u003d None"}],"source_content_type":"text/x-python","patch_set":5,"id":"d8e4a504_5768ef97","line":501,"range":{"start_line":492,"start_character":0,"end_line":501,"end_character":35},"updated":"2025-03-26 12:53:40.000000000","message":"```\nif self.conf.polling.prometheus_tls_enable:\n    ...\n    certfile \u003d self.conf.polling.prometheus_tls_certfile\n    keyfile \u003d self.conf.polling.prometheus_tls_keyfile\nelse:\n    certfile \u003d keyfile \u003d None\n\nprom_exporter.export(address[0], address[1], certfile, keyfile)\n```\nmay be much more simple.","commit_id":"238a582f9a56e9f7b11915dc5053371fecd3a27a"},{"author":{"_account_id":35145,"name":"marihan girgis","email":"mgirgisf@redhat.com","username":"mgirgisf"},"change_message_id":"928dc4bd6e80d9f23df102efe109a4e005f88b0f","unresolved":false,"context_lines":[{"line_number":489,"context_line":"                    keyFile \u003d self.conf.polling.prometheus_tls_keyfile"},{"line_number":490,"context_line":"                    if certFile is None or keyFile is None:"},{"line_number":491,"context_line":"                        LOG.warning(\"Certfile and keyfile must be provided.\")"},{"line_number":492,"context_line":"                    else:"},{"line_number":493,"context_line":"                        prom_exporter.export("},{"line_number":494,"context_line":"                            address[0],"},{"line_number":495,"context_line":"                            address[1],"},{"line_number":496,"context_line":"                            certFile,"},{"line_number":497,"context_line":"                            keyFile)"},{"line_number":498,"context_line":"                else:"},{"line_number":499,"context_line":"                    prom_exporter.export("},{"line_number":500,"context_line":"                        address[0],"},{"line_number":501,"context_line":"                        address[1])"},{"line_number":502,"context_line":""},{"line_number":503,"context_line":"        self._keystone \u003d None"},{"line_number":504,"context_line":"        self._keystone_last_exception \u003d None"}],"source_content_type":"text/x-python","patch_set":5,"id":"6d276d0f_a1ad21b0","line":501,"range":{"start_line":492,"start_character":0,"end_line":501,"end_character":35},"in_reply_to":"d8e4a504_5768ef97","updated":"2025-03-27 08:29:18.000000000","message":"Done","commit_id":"238a582f9a56e9f7b11915dc5053371fecd3a27a"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"f9ef14783b124c7a07e9b59529869de99c8c153c","unresolved":true,"context_lines":[{"line_number":486,"context_line":"                    LOG.warning(\u0027Ignoring invalid address: %s\u0027, addr)"},{"line_number":487,"context_line":"                certfile \u003d self.conf.polling.prometheus_tls_certfile"},{"line_number":488,"context_line":"                keyfile \u003d self.conf.polling.prometheus_tls_keyfile"},{"line_number":489,"context_line":"                if self.conf.polling.prometheus_tls_enable:"},{"line_number":490,"context_line":"                    if not certfile or not keyfile:"},{"line_number":491,"context_line":"                        raise ValueError("},{"line_number":492,"context_line":"                            \"Certfile and keyfile must be provided.\""}],"source_content_type":"text/x-python","patch_set":9,"id":"a66486a9_e6f56761","line":489,"range":{"start_line":489,"start_character":16,"end_line":489,"end_character":59},"updated":"2025-03-31 08:42:10.000000000","message":"tls_enable option is still useless because certfile and keyfile are passed down regardless of this option.\nYou need to set certfile and keyfile to None when False","commit_id":"1518c7b0898cf90e5d518d5e39ee1a72ea7c23fe"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"845fbd39d160a2978574a9a73d92b0d4d0b91a05","unresolved":true,"context_lines":[{"line_number":486,"context_line":"                    LOG.warning(\u0027Ignoring invalid address: %s\u0027, addr)"},{"line_number":487,"context_line":"                certfile \u003d self.conf.polling.prometheus_tls_certfile"},{"line_number":488,"context_line":"                keyfile \u003d self.conf.polling.prometheus_tls_keyfile"},{"line_number":489,"context_line":"                if self.conf.polling.prometheus_tls_enable:"},{"line_number":490,"context_line":"                    if not certfile or not keyfile:"},{"line_number":491,"context_line":"                        raise ValueError("},{"line_number":492,"context_line":"                            \"Certfile and keyfile must be provided.\""}],"source_content_type":"text/x-python","patch_set":9,"id":"d6cb002c_fdfc8901","line":489,"range":{"start_line":489,"start_character":16,"end_line":489,"end_character":59},"in_reply_to":"a66486a9_e6f56761","updated":"2025-03-31 08:43:03.000000000","message":"Please add unit test cases where any of certfile and keyfile are set but prometheus_tls_enable is false.","commit_id":"1518c7b0898cf90e5d518d5e39ee1a72ea7c23fe"},{"author":{"_account_id":32968,"name":"Juan Larriba","email":"jlarriba@redhat.com","username":"jlarriba"},"change_message_id":"298c8dad68912ec228cc72d7810ffeff01b2afb5","unresolved":true,"context_lines":[{"line_number":486,"context_line":"                    LOG.warning(\u0027Ignoring invalid address: %s\u0027, addr)"},{"line_number":487,"context_line":"                certfile \u003d self.conf.polling.prometheus_tls_certfile"},{"line_number":488,"context_line":"                keyfile \u003d self.conf.polling.prometheus_tls_keyfile"},{"line_number":489,"context_line":"                if self.conf.polling.prometheus_tls_enable:"},{"line_number":490,"context_line":"                    if not certfile or not keyfile:"},{"line_number":491,"context_line":"                        raise ValueError("},{"line_number":492,"context_line":"                            \"Certfile and keyfile must be provided.\""}],"source_content_type":"text/x-python","patch_set":9,"id":"ee1e7e08_dd703448","line":489,"range":{"start_line":489,"start_character":16,"end_line":489,"end_character":59},"in_reply_to":"d6cb002c_fdfc8901","updated":"2025-04-10 12:54:15.000000000","message":"+1","commit_id":"1518c7b0898cf90e5d518d5e39ee1a72ea7c23fe"},{"author":{"_account_id":35145,"name":"marihan girgis","email":"mgirgisf@redhat.com","username":"mgirgisf"},"change_message_id":"67dd8022f8fc373219d85e609a4d84b9e1c56533","unresolved":false,"context_lines":[{"line_number":486,"context_line":"                    LOG.warning(\u0027Ignoring invalid address: %s\u0027, addr)"},{"line_number":487,"context_line":"                certfile \u003d self.conf.polling.prometheus_tls_certfile"},{"line_number":488,"context_line":"                keyfile \u003d self.conf.polling.prometheus_tls_keyfile"},{"line_number":489,"context_line":"                if self.conf.polling.prometheus_tls_enable:"},{"line_number":490,"context_line":"                    if not certfile or not keyfile:"},{"line_number":491,"context_line":"                        raise ValueError("},{"line_number":492,"context_line":"                            \"Certfile and keyfile must be provided.\""}],"source_content_type":"text/x-python","patch_set":9,"id":"cf9dd7ce_27e30cb1","line":489,"range":{"start_line":489,"start_character":16,"end_line":489,"end_character":59},"in_reply_to":"d6cb002c_fdfc8901","updated":"2025-04-22 06:27:16.000000000","message":"Done","commit_id":"1518c7b0898cf90e5d518d5e39ee1a72ea7c23fe"}],"ceilometer/polling/prom_exporter.py":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"a4308a21cdfe6c4337d563df74a4dae20d992143","unresolved":true,"context_lines":[{"line_number":19,"context_line":"CEILOMETER_REGISTRY \u003d prom.CollectorRegistry()"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"def export(prometheus_iface, prometheus_port, prometheus_tls_cert, prometheus_tls_key):"},{"line_number":23,"context_line":"    if prometheus_tls_cert and prometheus_tls_key:"},{"line_number":24,"context_line":"        prom.start_http_server(port\u003dprometheus_port,"},{"line_number":25,"context_line":"                               addr\u003dprometheus_iface,"}],"source_content_type":"text/x-python","patch_set":2,"id":"f080a496_102d4168","line":22,"range":{"start_line":22,"start_character":4,"end_line":22,"end_character":10},"updated":"2025-03-25 13:08:45.000000000","message":"This line is likely too long. Maybe you can remove prometheus_ prefix.","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"},{"author":{"_account_id":35145,"name":"marihan girgis","email":"mgirgisf@redhat.com","username":"mgirgisf"},"change_message_id":"77e973c593f7a10d341ae7f44f8755b395ddd0ea","unresolved":false,"context_lines":[{"line_number":19,"context_line":"CEILOMETER_REGISTRY \u003d prom.CollectorRegistry()"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"def export(prometheus_iface, prometheus_port, prometheus_tls_cert, prometheus_tls_key):"},{"line_number":23,"context_line":"    if prometheus_tls_cert and prometheus_tls_key:"},{"line_number":24,"context_line":"        prom.start_http_server(port\u003dprometheus_port,"},{"line_number":25,"context_line":"                               addr\u003dprometheus_iface,"}],"source_content_type":"text/x-python","patch_set":2,"id":"06712e06_4eab7eff","line":22,"range":{"start_line":22,"start_character":4,"end_line":22,"end_character":10},"in_reply_to":"f080a496_102d4168","updated":"2025-03-26 12:25:34.000000000","message":"Done","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"a4308a21cdfe6c4337d563df74a4dae20d992143","unresolved":true,"context_lines":[{"line_number":20,"context_line":""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"def export(prometheus_iface, prometheus_port, prometheus_tls_cert, prometheus_tls_key):"},{"line_number":23,"context_line":"    if prometheus_tls_cert and prometheus_tls_key:"},{"line_number":24,"context_line":"        prom.start_http_server(port\u003dprometheus_port,"},{"line_number":25,"context_line":"                               addr\u003dprometheus_iface,"},{"line_number":26,"context_line":"                               registry\u003dCEILOMETER_REGISTRY,"}],"source_content_type":"text/x-python","patch_set":2,"id":"0fa51f49_3f053061","line":23,"range":{"start_line":23,"start_character":4,"end_line":23,"end_character":50},"updated":"2025-03-25 13:08:45.000000000","message":"I\u0027m against this logic, which silently ignores cert or key if the other is not given, which may hide the problem from operators.","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"},{"author":{"_account_id":35145,"name":"marihan girgis","email":"mgirgisf@redhat.com","username":"mgirgisf"},"change_message_id":"77e973c593f7a10d341ae7f44f8755b395ddd0ea","unresolved":false,"context_lines":[{"line_number":20,"context_line":""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"def export(prometheus_iface, prometheus_port, prometheus_tls_cert, prometheus_tls_key):"},{"line_number":23,"context_line":"    if prometheus_tls_cert and prometheus_tls_key:"},{"line_number":24,"context_line":"        prom.start_http_server(port\u003dprometheus_port,"},{"line_number":25,"context_line":"                               addr\u003dprometheus_iface,"},{"line_number":26,"context_line":"                               registry\u003dCEILOMETER_REGISTRY,"}],"source_content_type":"text/x-python","patch_set":2,"id":"41cd40d1_ae4c681d","line":23,"range":{"start_line":23,"start_character":4,"end_line":23,"end_character":50},"in_reply_to":"0fa51f49_3f053061","updated":"2025-03-26 12:25:34.000000000","message":"Done","commit_id":"cec433e3e38eae18060e1a25cda8db4ab6e3f678"}],"ceilometer/tests/unit/test_prom_exporter.py":[{"author":{"_account_id":32968,"name":"Juan Larriba","email":"jlarriba@redhat.com","username":"jlarriba"},"change_message_id":"5e1f862231e6cc2162e17ead8f347843bcf692d9","unresolved":true,"context_lines":[{"line_number":243,"context_line":"        manager.AgentManager(0, CONF)"},{"line_number":244,"context_line":""},{"line_number":245,"context_line":"        export.assert_has_calls(["},{"line_number":246,"context_line":"            call(\u0027127.0.0.1\u0027, 9101, None, None),"},{"line_number":247,"context_line":"            call(\u0027127.0.0.1\u0027, 9102, None, None),"},{"line_number":248,"context_line":"            call(\u0027::1\u0027, 9103, None, None),"},{"line_number":249,"context_line":"            call(\u0027localhost\u0027, 9104, None, None),"}],"source_content_type":"text/x-python","patch_set":8,"id":"8d8ce82e_c12f67f4","line":246,"updated":"2025-03-28 08:08:42.000000000","message":"We should have a test case with TLS enabled","commit_id":"9ef0154cf9c9abf5a985d6746891fd180644d728"},{"author":{"_account_id":35145,"name":"marihan girgis","email":"mgirgisf@redhat.com","username":"mgirgisf"},"change_message_id":"67dd8022f8fc373219d85e609a4d84b9e1c56533","unresolved":false,"context_lines":[{"line_number":243,"context_line":"        manager.AgentManager(0, CONF)"},{"line_number":244,"context_line":""},{"line_number":245,"context_line":"        export.assert_has_calls(["},{"line_number":246,"context_line":"            call(\u0027127.0.0.1\u0027, 9101, None, None),"},{"line_number":247,"context_line":"            call(\u0027127.0.0.1\u0027, 9102, None, None),"},{"line_number":248,"context_line":"            call(\u0027::1\u0027, 9103, None, None),"},{"line_number":249,"context_line":"            call(\u0027localhost\u0027, 9104, None, None),"}],"source_content_type":"text/x-python","patch_set":8,"id":"28527ebc_b9547596","line":246,"in_reply_to":"5ccc5f67_505c6286","updated":"2025-04-22 06:27:16.000000000","message":"Done","commit_id":"9ef0154cf9c9abf5a985d6746891fd180644d728"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"74e2a3b41020903be0b728a386f04c0a4d73d57e","unresolved":true,"context_lines":[{"line_number":243,"context_line":"        manager.AgentManager(0, CONF)"},{"line_number":244,"context_line":""},{"line_number":245,"context_line":"        export.assert_has_calls(["},{"line_number":246,"context_line":"            call(\u0027127.0.0.1\u0027, 9101, None, None),"},{"line_number":247,"context_line":"            call(\u0027127.0.0.1\u0027, 9102, None, None),"},{"line_number":248,"context_line":"            call(\u0027::1\u0027, 9103, None, None),"},{"line_number":249,"context_line":"            call(\u0027localhost\u0027, 9104, None, None),"}],"source_content_type":"text/x-python","patch_set":8,"id":"5ccc5f67_505c6286","line":246,"in_reply_to":"8d8ce82e_c12f67f4","updated":"2025-03-28 15:32:03.000000000","message":"+1","commit_id":"9ef0154cf9c9abf5a985d6746891fd180644d728"}],"releasenotes/notes/bug-945437-76e78d4f4a52c6c4.yaml":[{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"74e2a3b41020903be0b728a386f04c0a4d73d57e","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Enhanced the Prometheus exporter to support TLS for exposing metrics securely"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"7878e81a_2ca12851","line":1,"updated":"2025-03-28 15:32:03.000000000","message":"Where does the bug number (945437) in the file name come from ?","commit_id":"9ef0154cf9c9abf5a985d6746891fd180644d728"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"74e2a3b41020903be0b728a386f04c0a4d73d57e","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Enhanced the Prometheus exporter to support TLS for exposing metrics securely"},{"line_number":5,"context_line":""},{"line_number":6,"context_line":""},{"line_number":7,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":8,"id":"415f8809_b45252cc","line":4,"range":{"start_line":4,"start_character":73,"end_line":4,"end_character":81},"updated":"2025-03-28 15:32:03.000000000","message":"Add . at the end","commit_id":"9ef0154cf9c9abf5a985d6746891fd180644d728"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"74e2a3b41020903be0b728a386f04c0a4d73d57e","unresolved":true,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Enhanced the Prometheus exporter to support TLS for exposing metrics securely"},{"line_number":5,"context_line":""},{"line_number":6,"context_line":""},{"line_number":7,"context_line":""},{"line_number":8,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":8,"id":"9920d1c9_9946deba","line":5,"updated":"2025-03-28 15:32:03.000000000","message":"trailing blank lines.","commit_id":"9ef0154cf9c9abf5a985d6746891fd180644d728"},{"author":{"_account_id":9816,"name":"Takashi Kajinami","email":"kajinamit@oss.nttdata.com","username":"kajinamit"},"change_message_id":"7abf2d77ab09f3bb15f73a7ba59fac78c1ea7840","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Enhanced the Prometheus exporter to support TLS for exposing metrics securely"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"b379695c_5a187f46","line":1,"updated":"2025-03-31 08:43:59.000000000","message":"Remove this file","commit_id":"1518c7b0898cf90e5d518d5e39ee1a72ea7c23fe"},{"author":{"_account_id":35145,"name":"marihan girgis","email":"mgirgisf@redhat.com","username":"mgirgisf"},"change_message_id":"67dd8022f8fc373219d85e609a4d84b9e1c56533","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Enhanced the Prometheus exporter to support TLS for exposing metrics securely"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"bb256434_7474da1b","line":1,"in_reply_to":"b379695c_5a187f46","updated":"2025-04-22 06:27:16.000000000","message":"Done","commit_id":"1518c7b0898cf90e5d518d5e39ee1a72ea7c23fe"}]}
