)]}'
{"id":"openstack%2Fceilometer~180929","triplet_id":"openstack%2Fceilometer~master~Ic25df94252e72504f987a9c326af12722b6c2b93","project":"openstack/ceilometer","branch":"master","topic":"bug/1384379","hashtags":[],"change_id":"Ic25df94252e72504f987a9c326af12722b6c2b93","subject":"Add SSL middleware to fix incorrect version host_url","status":"ABANDONED","created":"2015-05-07 10:26:37.000000000","updated":"2016-01-13 19:26:28.000000000","total_comment_count":2,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"3f38d4da12410225e3f3b2ee388d91fbfab19d1f","_number":180929,"virtual_id_number":180929,"owner":{"_account_id":12929,"name":"Deliang Fan","email":"vanderliang@gmail.com","username":"DeliangFan"},"actions":{},"labels":{"Verified":{"recommended":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"all":[{"_account_id":12929,"name":"Deliang Fan","email":"vanderliang@gmail.com","username":"DeliangFan"},{"value":1,"date":"2015-05-08 02:50:48.000000000","_account_id":3,"name":"Jenkins","username":"jenkins"},{"date":"2015-05-08 02:16:37.000000000","_account_id":15843,"name":"Intel Hardware-Meters CI","email":"ipmi-ci@intel.com","username":"ipmici"},{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},{"_account_id":10987,"name":"Igor Degtiarov","username":"tovstun","inactive":true},{"date":"2015-05-11 13:15:35.000000000","_account_id":8124,"name":"cbrandily","email":"zzelle@gmail.com","username":"cbrandily"},{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","value":1,"default_value":0,"optional":true},"Code-Review":{"disliked":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":12929,"name":"Deliang Fan","email":"vanderliang@gmail.com","username":"DeliangFan"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":15843,"name":"Intel Hardware-Meters CI","email":"ipmi-ci@intel.com","username":"ipmici"},{"value":-1,"date":"2015-05-11 12:41:09.000000000","permitted_voting_range":{"min":-1,"max":1},"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":10987,"name":"Igor Degtiarov","username":"tovstun","inactive":true},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":8124,"name":"cbrandily","email":"zzelle@gmail.com","username":"cbrandily"},{"value":-1,"date":"2015-05-11 11:02:03.000000000","permitted_voting_range":{"min":-1,"max":1},"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","value":-1,"default_value":0,"optional":true},"Workflow":{"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":0},"_account_id":12929,"name":"Deliang Fan","email":"vanderliang@gmail.com","username":"DeliangFan"},{"_account_id":3,"name":"Jenkins","username":"jenkins"},{"_account_id":15843,"name":"Intel Hardware-Meters CI","email":"ipmi-ci@intel.com","username":"ipmici"},{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},{"date":"2015-05-25 15:27:21.000000000","_account_id":10987,"name":"Igor Degtiarov","username":"tovstun","inactive":true},{"_account_id":8124,"name":"cbrandily","email":"zzelle@gmail.com","username":"cbrandily"},{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":3,"name":"Jenkins","username":"jenkins"},{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},{"_account_id":8124,"name":"cbrandily","email":"zzelle@gmail.com","username":"cbrandily"},{"_account_id":10987,"name":"Igor Degtiarov","username":"tovstun","inactive":true},{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},{"_account_id":12929,"name":"Deliang Fan","email":"vanderliang@gmail.com","username":"DeliangFan"},{"_account_id":15843,"name":"Intel Hardware-Meters CI","email":"ipmi-ci@intel.com","username":"ipmici"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2015-05-08 02:16:37.000000000","updated_by":{"_account_id":15843,"name":"Intel Hardware-Meters CI","email":"ipmi-ci@intel.com","username":"ipmici"},"reviewer":{"_account_id":15843,"name":"Intel Hardware-Meters CI","email":"ipmi-ci@intel.com","username":"ipmici"},"state":"REVIEWER"},{"updated":"2015-05-08 02:50:48.000000000","updated_by":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"reviewer":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"state":"REVIEWER"},{"updated":"2015-05-11 11:02:03.000000000","updated_by":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"reviewer":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"state":"REVIEWER"},{"updated":"2015-05-11 12:41:09.000000000","updated_by":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"reviewer":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"state":"REVIEWER"},{"updated":"2015-05-11 13:15:35.000000000","updated_by":{"_account_id":8124,"name":"cbrandily","email":"zzelle@gmail.com","username":"cbrandily"},"reviewer":{"_account_id":8124,"name":"cbrandily","email":"zzelle@gmail.com","username":"cbrandily"},"state":"REVIEWER"},{"updated":"2015-05-25 15:27:21.000000000","updated_by":{"_account_id":10987,"name":"Igor Degtiarov","username":"tovstun","inactive":true},"reviewer":{"_account_id":10987,"name":"Igor Degtiarov","username":"tovstun","inactive":true},"state":"REVIEWER"}],"messages":[{"id":"d43d35724fc59c7125baf7051d901473e6eda188","author":{"_account_id":12929,"name":"Deliang Fan","email":"vanderliang@gmail.com","username":"DeliangFan"},"date":"2015-05-07 10:26:37.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"d7461f4d857f0ac10a3e81b5e11342e403bc1bea","author":{"_account_id":12929,"name":"Deliang Fan","email":"vanderliang@gmail.com","username":"DeliangFan"},"date":"2015-05-07 10:32:32.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"e40ba8d2e5d945235436a4ba7731c664a5ffe52b","author":{"_account_id":15843,"name":"Intel Hardware-Meters CI","email":"ipmi-ci@intel.com","username":"ipmici"},"date":"2015-05-07 10:32:39.000000000","message":"Patch Set 1:\n\n* ipmi-test http://198.175.100.33/ipmi/180929/1 : FAILURE","accounts_in_message":[],"_revision_number":1},{"id":"b3b5c8c03f7dac9ad7984aeaf3e04698eaa16e60","author":{"_account_id":15843,"name":"Intel Hardware-Meters CI","email":"ipmi-ci@intel.com","username":"ipmici"},"date":"2015-05-07 10:39:54.000000000","message":"Patch Set 2:\n\n* ipmi-test http://198.175.100.33/ipmi/180929/2 : FAILURE","accounts_in_message":[],"_revision_number":2},{"id":"2419cf6c0e60a6e1735634cbe4bdcedffc9bf2c6","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-05-07 11:19:33.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-ceilometer-pep8 http://logs.openstack.org/29/180929/2/check/gate-ceilometer-pep8/40c80eb/ : SUCCESS in 3m 50s\n- gate-ceilometer-docs http://docs-draft.openstack.org/29/180929/2/check/gate-ceilometer-docs/71d2626//doc/build/html/ : SUCCESS in 6m 12s\n- gate-ceilometer-python27 http://logs.openstack.org/29/180929/2/check/gate-ceilometer-python27/7852480/ : SUCCESS in 8m 31s\n- gate-ceilometer-python34 http://logs.openstack.org/29/180929/2/check/gate-ceilometer-python34/5ce94d9/ : SUCCESS in 6m 49s\n- check-tempest-dsvm-full http://logs.openstack.org/29/180929/2/check/check-tempest-dsvm-full/33231da/ : SUCCESS in 36m 58s\n- check-tempest-dsvm-postgres-full http://logs.openstack.org/29/180929/2/check/check-tempest-dsvm-postgres-full/65b331d/ : SUCCESS in 36m 06s\n- check-tempest-dsvm-neutron-full http://logs.openstack.org/29/180929/2/check/check-tempest-dsvm-neutron-full/516074d/ : SUCCESS in 46m 40s\n- check-grenade-dsvm http://logs.openstack.org/29/180929/2/check/check-grenade-dsvm/5727d06/ : SUCCESS in 38m 51s\n- check-devstack-dsvm-cells http://logs.openstack.org/29/180929/2/check/check-devstack-dsvm-cells/051e6e7/ : SUCCESS in 18m 38s\n- check-swift-dsvm-functional http://logs.openstack.org/29/180929/2/check/check-swift-dsvm-functional/4298458/ : SUCCESS in 24m 17s\n- gate-tempest-dsvm-ceilometer-mongodb-full http://logs.openstack.org/29/180929/2/check/gate-tempest-dsvm-ceilometer-mongodb-full/eb2b88d/ : SUCCESS in 40m 48s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"f672dd96a629e91ed63b9e39e51ad330f5ef900d","author":{"_account_id":12929,"name":"Deliang Fan","email":"vanderliang@gmail.com","username":"DeliangFan"},"date":"2015-05-07 12:42:33.000000000","message":"Patch Set 2: Code-Review-1\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"d041743fd297f31a8ab60f4eef09b07cf6eba4f4","author":{"_account_id":12929,"name":"Deliang Fan","email":"vanderliang@gmail.com","username":"DeliangFan"},"date":"2015-05-08 02:05:12.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"26c68910be4e29669477cea7e2446f9eb4337723","author":{"_account_id":15843,"name":"Intel Hardware-Meters CI","email":"ipmi-ci@intel.com","username":"ipmici"},"date":"2015-05-08 02:16:37.000000000","message":"Patch Set 3:\n\n* ipmi-test http://198.175.100.33/ipmi/180929/3 : SUCCESS","accounts_in_message":[],"_revision_number":3},{"id":"5e8ec067929741b0ccb10e21505d57d4cfbf6e5c","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-05-08 02:50:48.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-ceilometer-pep8 http://logs.openstack.org/29/180929/3/check/gate-ceilometer-pep8/511b859/ : SUCCESS in 3m 59s\n- gate-ceilometer-docs http://docs-draft.openstack.org/29/180929/3/check/gate-ceilometer-docs/ecd63c6//doc/build/html/ : SUCCESS in 4m 06s\n- gate-ceilometer-python27 http://logs.openstack.org/29/180929/3/check/gate-ceilometer-python27/3c5a438/ : SUCCESS in 8m 19s\n- gate-ceilometer-python34 http://logs.openstack.org/29/180929/3/check/gate-ceilometer-python34/fc50458/ : SUCCESS in 4m 38s\n- check-tempest-dsvm-full http://logs.openstack.org/29/180929/3/check/check-tempest-dsvm-full/daf9291/ : SUCCESS in 38m 38s\n- check-tempest-dsvm-postgres-full http://logs.openstack.org/29/180929/3/check/check-tempest-dsvm-postgres-full/5953227/ : SUCCESS in 39m 22s\n- check-tempest-dsvm-neutron-full http://logs.openstack.org/29/180929/3/check/check-tempest-dsvm-neutron-full/304cfda/ : SUCCESS in 45m 26s\n- check-grenade-dsvm http://logs.openstack.org/29/180929/3/check/check-grenade-dsvm/d0c0285/ : SUCCESS in 33m 12s\n- check-devstack-dsvm-cells http://logs.openstack.org/29/180929/3/check/check-devstack-dsvm-cells/15da83b/ : SUCCESS in 16m 42s\n- check-swift-dsvm-functional http://logs.openstack.org/29/180929/3/check/check-swift-dsvm-functional/2a36fbe/ : SUCCESS in 22m 43s\n- gate-tempest-dsvm-ceilometer-mongodb-full http://logs.openstack.org/29/180929/3/check/gate-tempest-dsvm-ceilometer-mongodb-full/4ca01a3/ : SUCCESS in 37m 00s (non-voting)","accounts_in_message":[],"_revision_number":3},{"id":"0089384ed086bb2ed2c7218e2782ee7f6abd4d09","author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"date":"2015-05-11 11:02:03.000000000","message":"Patch Set 3: Code-Review-1\n\nI don\u0027t think this is the best way to solve this problem. It is insufficiently generic, overly complex and quite brittle. Better to have the version url set from config. This way the service can behind a variety of proxies, load balancers, miscellaneous systems of all sorts, and always know it publishes the right URL because it has been made explicit.\n\nSee the glance fix: https://review.openstack.org/#/c/130311/\n\nWhatever the solution that is used, the test that is included with the fix needs to test the actual bug (the value of the version url), not just the code that is being added.","accounts_in_message":[],"_revision_number":3},{"id":"14c127dcc50e9bc16bc69e1f8596a327f7bec655","author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"date":"2015-05-11 12:41:09.000000000","message":"Patch Set 3: Code-Review-1\n\nwe should be pulling it in from oslo.middleware lib. we\u0027ll need to wait for it to merge and a release is made\n\ncdent, if you want, you can comment on this https://review.openstack.org/#/c/174025/ in case you have concerns with the implementation.","accounts_in_message":[],"_revision_number":3},{"id":"adf21a9323d4e4f24b9494a19b2ad143492abb47","author":{"_account_id":8124,"name":"cbrandily","email":"zzelle@gmail.com","username":"cbrandily"},"date":"2015-05-11 13:15:35.000000000","message":"Patch Set 3:\n\n@chris: glance approach hardcodes the url, it implies you cannot expose the same glance behind multiple names (typically: external natted and internal/admin non-natted dns names) ... that\u0027s why we should http headers defined for such case?","accounts_in_message":[],"_revision_number":3},{"id":"5d118d722c89620fa7b76f41f9824619fb498b18","author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"date":"2015-05-11 13:39:06.000000000","message":"Patch Set 3:\n\nTheoretically, if I wanted to expose the same glance information with different names I\u0027d run two different api servers using the same persistence layer.\n\nThis really feels like an invitation to complexity and a cascade of little bits of middleware that cook the wsgi environment such that a) it no longer actually represents the truth of the incoming request b) it\u0027s hard to tell where the app is in the full stack.","accounts_in_message":[],"_revision_number":3},{"id":"5491e7aaa095a710897a161b266c87d2a9ae8b80","author":{"_account_id":8124,"name":"cbrandily","email":"zzelle@gmail.com","username":"cbrandily"},"date":"2015-05-11 19:37:09.000000000","message":"Patch Set 3:\n\n(1 comment)","accounts_in_message":[],"_revision_number":3},{"id":"d021f1fcafd4614819a01debc12c02fcc63bd44b","author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"date":"2016-01-13 19:26:28.000000000","message":"Abandoned\n\nNo activity in over six months. If it still matters feel free to restore.","accounts_in_message":[],"_revision_number":3}],"current_revision_number":3,"current_revision":"ad79f77845b95fcc6acd0a0b9c2e51dfd17b57a8","revisions":{"b516295553079bfd0a49e5bd00c6f054c09f54ae":{"kind":"REWORK","_number":1,"created":"2015-05-07 10:26:37.000000000","uploader":{"_account_id":12929,"name":"Deliang Fan","email":"vanderliang@gmail.com","username":"DeliangFan"},"ref":"refs/changes/29/180929/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/ceilometer","ref":"refs/changes/29/180929/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/ceilometer refs/changes/29/180929/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/ceilometer refs/changes/29/180929/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/ceilometer refs/changes/29/180929/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/ceilometer refs/changes/29/180929/1"}}},"commit":{"parents":[{"commit":"b89972d74f92367b5595eef63be734884b2e851c","subject":"Merge \"empty non-string values are returned as string traits\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ceilometer/commit/b89972d74f92367b5595eef63be734884b2e851c"}]}],"author":{"name":"Deliang Fan","email":"fandeliang@letv.com","date":"2015-05-07 10:19:51.000000000","tz":480},"committer":{"name":"Deliang Fan","email":"fandeliang@letv.com","date":"2015-05-07 10:26:33.000000000","tz":480},"subject":"Add SSL middleware to fix incorrect version host_url","message":"Add SSL middleware to fix incorrect version host_url\n\nThe Ceilometer API does not behave properly if it is behind an SSL\ntermination proxy. If this is the case, the host_url in version\nresource are build using http protocol instead of https.\n\nTo handle to correct host_url with proxy, first, we should enable\nX-Forwarded-Host in proxy so that Ceilometer can get the right client\nip. Second, we should enable X-Forwarded-Proto, with the new SSL\nmiddleware, Ceilometer will get original protocol.\n\nChange-Id: Ic25df94252e72504f987a9c326af12722b6c2b93\nCloses-Bug: #1384379\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ceilometer/commit/b516295553079bfd0a49e5bd00c6f054c09f54ae"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ceilometer/commit/b516295553079bfd0a49e5bd00c6f054c09f54ae"}]},"branch":"refs/heads/master"},"1bfb03436f1f292157f5c3fae220c26ed8236bb9":{"kind":"REWORK","_number":2,"created":"2015-05-07 10:32:32.000000000","uploader":{"_account_id":12929,"name":"Deliang Fan","email":"vanderliang@gmail.com","username":"DeliangFan"},"ref":"refs/changes/29/180929/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/ceilometer","ref":"refs/changes/29/180929/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/ceilometer refs/changes/29/180929/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/ceilometer refs/changes/29/180929/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/ceilometer refs/changes/29/180929/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/ceilometer refs/changes/29/180929/2"}}},"commit":{"parents":[{"commit":"b89972d74f92367b5595eef63be734884b2e851c","subject":"Merge \"empty non-string values are returned as string traits\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ceilometer/commit/b89972d74f92367b5595eef63be734884b2e851c"}]}],"author":{"name":"Deliang Fan","email":"fandeliang@letv.com","date":"2015-05-07 10:19:51.000000000","tz":480},"committer":{"name":"Deliang Fan","email":"fandeliang@letv.com","date":"2015-05-07 10:32:04.000000000","tz":480},"subject":"Add SSL middleware to fix incorrect version host_url","message":"Add SSL middleware to fix incorrect version host_url\n\nThe Ceilometer API does not behave properly if it is behind an SSL\ntermination proxy. If this is the case, the host_url in version\nresource are build using http protocol instead of https.\n\nTo handle to correct host_url with proxy, first, we should enable\nX-Forwarded-Host in proxy so that Ceilometer can get the right client\nip. Second, we should enable X-Forwarded-Proto, with the new SSL\nmiddleware, Ceilometer will get original protocol.\n\nChange-Id: Ic25df94252e72504f987a9c326af12722b6c2b93\nCloses-Bug: #1384379\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ceilometer/commit/1bfb03436f1f292157f5c3fae220c26ed8236bb9"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ceilometer/commit/1bfb03436f1f292157f5c3fae220c26ed8236bb9"}]},"branch":"refs/heads/master"},"ad79f77845b95fcc6acd0a0b9c2e51dfd17b57a8":{"kind":"REWORK","_number":3,"created":"2015-05-08 02:05:12.000000000","uploader":{"_account_id":12929,"name":"Deliang Fan","email":"vanderliang@gmail.com","username":"DeliangFan"},"ref":"refs/changes/29/180929/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/ceilometer","ref":"refs/changes/29/180929/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/ceilometer refs/changes/29/180929/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/ceilometer refs/changes/29/180929/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/ceilometer refs/changes/29/180929/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/ceilometer refs/changes/29/180929/3"}}},"commit":{"parents":[{"commit":"b89972d74f92367b5595eef63be734884b2e851c","subject":"Merge \"empty non-string values are returned as string traits\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ceilometer/commit/b89972d74f92367b5595eef63be734884b2e851c"}]}],"author":{"name":"Deliang Fan","email":"fandeliang@letv.com","date":"2015-05-07 10:19:51.000000000","tz":480},"committer":{"name":"Deliang Fan","email":"fandeliang@letv.com","date":"2015-05-08 02:04:51.000000000","tz":480},"subject":"Add SSL middleware to fix incorrect version host_url","message":"Add SSL middleware to fix incorrect version host_url\n\nThe Ceilometer API does not behave properly if it is behind an SSL\ntermination proxy. If this is the case, the host_url in version\nresource are build using http protocol instead of https.\n\nTo handle to correct host_url with proxy, first, we should enable\nX-Forwarded-Host in proxy so that Ceilometer can get the right client\nip. Second, we should enable X-Forwarded-Proto, with the new SSL\nmiddleware, Ceilometer will get original protocol.\n\nChange-Id: Ic25df94252e72504f987a9c326af12722b6c2b93\nCloses-Bug: #1384379\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ceilometer/commit/ad79f77845b95fcc6acd0a0b9c2e51dfd17b57a8"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ceilometer/commit/ad79f77845b95fcc6acd0a0b9c2e51dfd17b57a8"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
