| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-sdks - 2018-01-08 | |||
| 18:42:05 | cdent | frequently the representation is not complete | |
| 18:42:20 | cdent | or at least not consistent, which is how we ended up looking for a different solution | |
| 18:42:24 | edleafe | cdent: sure, but how does adding a header change that? | |
| 18:42:40 | edleafe | ah, the consistent part is the holy grail | |
| 18:42:49 | cdent | it means we aren't "forcing" the representations to cohere | |
| 18:42:56 | mordred | aren't pagination links temporal in nature anyway? or were you thinking about it in the more general case of links headers for things like a 'server' | |
| 18:42:57 | edleafe | cdent: we can't | |
| 18:43:13 | cdent | thus the quotes | |
| 18:43:20 | cdent | like I said, I'm okay with it. | |
| 18:43:56 | edleafe | OK, new APIs: follow our guides. Existing, non-conformant APIs: add the headers | |
| 18:44:10 | elmiko | seems like pagination in specific is in a little bit of a grey area for the headers/representation issue | |
| 18:44:11 | edleafe | I'm not sure where you see the problem | |
| 18:44:18 | cdent | mordred: I was thinking about the representation passing through various code boundaries, but still being the "now" representation | |
| 18:44:47 | cdent | edleafe: what I just said to mordred: if next is only the headers and not in the json, when it passes from library X to thing Y... | |
| 18:44:57 | cdent | which maybe is not something we care about | |
| 18:45:36 | cdent | and is certainly not something worth stopping this good idea over | |
| 18:45:51 | cdent | (merely something to be aware of) | |
| 18:46:33 | edleafe | cdent: if it's not in the json, then a project has a choice: change the API, or add a header | |
| 18:46:48 | edleafe | the header thing is a workaround only | |
| 18:47:28 | cdent | right, and if they add the header, then when the client gets a representation the body will, in a sense, be incomplete after it passes away from the part of the system paying attention to headers | |
| 18:47:32 | cdent | which may not matter | |
| 18:48:02 | mordred | yah - I mean, the header is a nice thing to add since it's a known thing and even already parsed by things like requests - and is usable for corner cases like listing the objects in a swift container | |
| 18:48:30 | mordred | but having the links in the json body for new apis is the recommendation for well formed json | |
| 18:48:42 | edleafe | I guess I'm understanding it in reverse. Client checks the body and either a) there are no links or b) the links do not follow the standard. Then, as a last resort, it checks the headers | |
| 18:49:50 | cdent | I gotta go, will check the logs for more, if it happens, but overall, seems a good thing. | |
| 18:50:03 | mordred | oh - I was thinking look for the headers first, since it's an rfc 'standard' thing, and if there are no links there, then look for content in body - at least for things like following pagination | |
| 18:50:05 | mordred | BUT | |
| 18:50:24 | mordred | for the love of all that is holy, we should DEFINITELY not be ok with the links headers and links in the body being out of sync | |
| 18:50:38 | mordred | so a client could also totally implement it in either direction and be accurate | |
| 18:50:58 | edleafe | mordred: from an API-SIG POV, we want to encourage projects to form pagination links correctly in the body | |
| 18:51:03 | mordred | yah | |
| 18:51:07 | elmiko | +1 | |
| 18:51:08 | mordred | I tihnk we always want links in the body | |
| 18:51:34 | elmiko | the dual header/body issue seems like it could be a total pita if someone try to implement both or gets caught between the two | |
| 18:51:48 | edleafe | if they are there but in the wrong format, they should update it to be correct, but that requires an API break (or microversion) | |
| 18:51:58 | elmiko | but, i like the idea of recommending the rfc for older projects to gain some sort of consistency | |
| 18:52:27 | edleafe | elmiko: yeah, which is why I saw things happening in the order I mentioned | |
| 18:52:42 | elmiko | plus, it seems to me that header addition can be done on minor version bump, so it doesn't need to upset the whole apple cart. is that an accurate asessment? | |
| 18:52:52 | elmiko | edleafe: ack | |
| 18:52:53 | mordred | I don't think the header addition needs a version bump | |
| 18:53:17 | elmiko | well, it should carry a minor version bump to denote the change though, shouldn't it? | |
| 18:53:21 | mordred | there is NO WAY clients are consuming headers strictly | |
| 18:53:42 | mordred | no - because clients have to account for proxies/api gateways/whatever in between | |
| 18:53:56 | mordred | so there's always the possibilities of more keys being in the header tahn theAPI says will be there | |
| 18:54:07 | elmiko | true that | |
| 18:55:29 | mordred | so, I mean, people could bump a min, but I don't think it would be valuable to anyone - nor do I think doing a microversion dance to know if you can request a microversion that adds links headers would benefit anyone, since the consumption is "if 'links' in response.headers:" | |
| 18:56:10 | elmiko | that makes sense | |
| 18:56:41 | elmiko | i guess, i tend to think about bumping the version to represent changes. but i think you're absolutely correct about not needing to do the "dance" for this type of feature | |
| 19:34:33 | openstackgerrit | Michael Johnson proposed openstack/python-openstacksdk master: Add an octavia functional test gate https://review.openstack.org/531514 | |
| 19:35:34 | openstackgerrit | Michael Johnson proposed openstack/python-openstacksdk master: Add an octavia functional test gate https://review.openstack.org/531514 | |
| 19:37:29 | openstackgerrit | Michael Johnson proposed openstack/python-openstacksdk master: Add an octavia functional test gate https://review.openstack.org/531514 | |
| 21:38:29 | mordred | elmiko, edleafe: the existing guideline actually already references rfc5988 | |
| 21:44:58 | edleafe | mordred: well, waddya know - guess I should have reviewed that before discussion :) | |
| 21:46:02 | edleafe | So no change to the guideline is needed for this. Easy! | |
| 21:46:13 | edleafe | cdent: elmiko: ^^^ | |
| 21:46:50 | mordred | edleafe: :) | |
| 21:47:11 | mordred | edleafe: I'm adding a little text and a sub-heading so that it's easy to deep-link to real quick | |
| 21:51:14 | elmiko | mordred: sweet! thanks for doing all the leg work =) | |
| 21:52:56 | edleafe | mordred: yeah, what elmiko said. I'm heads down in other stuff right now | |
| 21:53:03 | openstackgerrit | Monty Taylor proposed openstack/api-wg master: Expand note about rfc5988 link header https://review.openstack.org/531914 | |
| 22:30:26 | openstackgerrit | Monty Taylor proposed openstack/python-openstacksdk master: Add function to make CloudRegion from session https://review.openstack.org/531612 | |
| 22:30:26 | openstackgerrit | Monty Taylor proposed openstack/python-openstacksdk master: Port wait_for_ methods to use iterate_timeout https://review.openstack.org/531268 | |
| 22:30:27 | openstackgerrit | Monty Taylor proposed openstack/python-openstacksdk master: Prefer links dicts for pagination https://review.openstack.org/530769 | |
| 22:36:03 | openstackgerrit | Michael Johnson proposed openstack/python-openstacksdk master: Add an octavia functional test gate https://review.openstack.org/531514 | |
| 22:46:51 | openstackgerrit | Monty Taylor proposed openstack-infra/shade master: List ansible/ansible in required-projects https://review.openstack.org/531919 | |
| 23:05:18 | openstackgerrit | Michael Johnson proposed openstack/python-openstacksdk master: Add an octavia functional test gate https://review.openstack.org/531514 | |
| #openstack-sdks - 2018-01-09 | |||
| 00:03:51 | openstackgerrit | Monty Taylor proposed openstack-infra/shade master: List ansible/ansible in required-projects https://review.openstack.org/531919 | |
| 00:06:37 | openstackgerrit | Monty Taylor proposed openstack-infra/shade master: List ansible/ansible in required-projects https://review.openstack.org/531919 | |
| 00:24:40 | openstackgerrit | Monty Taylor proposed openstack-infra/shade master: List ansible/ansible in required-projects https://review.openstack.org/531919 | |
| 00:48:18 | openstackgerrit | Michael Johnson proposed openstack/python-openstacksdk master: Add an octavia functional test gate https://review.openstack.org/531514 | |
| 02:36:13 | openstackgerrit | OpenStack Proposal Bot proposed openstack/python-openstacksdk master: Updated from global requirements https://review.openstack.org/531974 | |
| 04:45:58 | openstackgerrit | Michael Johnson proposed openstack/python-openstacksdk master: Add an octavia functional test gate https://review.openstack.org/531514 | |
| 06:35:06 | chenyb4 | briancurtin, Hi, I have a question, "openstack.config.exceptions.OpenStackConfigException: Cloud defaults was not found." why not? | |
| 09:13:57 | openstackgerrit | lei zhang proposed openstack/python-openstackclient master: Fix the incorrect git.openstack.org source URL https://review.openstack.org/532108 | |
| 12:47:02 | briancurtin | chenyb4: no idea. what did you do? | |
| 16:12:44 | openstackgerrit | Monty Taylor proposed openstack/python-openstacksdk master: Add function to make CloudRegion from session https://review.openstack.org/531612 | |
| 16:12:44 | openstackgerrit | Monty Taylor proposed openstack/python-openstacksdk master: Port wait_for_ methods to use iterate_timeout https://review.openstack.org/531268 | |
| 16:12:45 | openstackgerrit | Monty Taylor proposed openstack/python-openstacksdk master: Prefer links dicts for pagination https://review.openstack.org/530769 | |
| 16:15:09 | openstackgerrit | OpenStack Proposal Bot proposed openstack/openstackclient master: Updated from global requirements https://review.openstack.org/521902 | |
| 16:21:53 | openstackgerrit | OpenStack Proposal Bot proposed openstack/python-openstackclient master: Updated from global requirements https://review.openstack.org/531089 | |
| 16:26:10 | fabian_ | briancurtin, hi, online ? | |
| 16:26:27 | briancurtin | fabian_: yes | |
| 16:30:26 | fabian_ | briancurtin, when i use pyton-openstacksdk master branch, execute 'senlin cluster node list' appear error. the error rais "Cloud {name} was not found." error | |
| 16:32:16 | fabian_ | briancurtin, the name is defaults, but self.cloud_config['clouds'] default is envvars | |
| 16:32:36 | briancurtin | fabian_: i don’t know what any of that is | |
| 16:32:45 | briancurtin | what is self.cloud_config? where is this? | |
| 16:33:58 | fabian_ | self.cloud_config save in "python-openstacksdk/openstack/config/load.py" module | |
| 16:34:59 | briancurtin | fabian_: im not familiar with that code. perhaps mordred may know | |
| 16:35:41 | fabian_ | briancurtin, ok, thanks | |
| 16:35:49 | umbSublime | does anyone know why with openstack-cli, we need to specify a hostname when doing live-migration, when with nova-cli we could let the scheduler choose one ? | |
| 16:36:09 | umbSublime | why has this been removed from openstack-cli ? is probably a better question | |
| 16:36:51 | fabian_ | mordred, on line? | |
| 16:43:07 | mordred | fabian_: on a phone call - will help in a few minutes | |
| 16:43:23 | fabian_ | mordred, ok | |
| 17:00:17 | fabian_ | mordred, ? | |
| 17:10:22 | mordred | fabian_: just got off - where are you seeing this? in a job somewhere? | |
| 17:10:36 | mordred | oh - I see now - master branch of osc | |
| 17:10:50 | fabian_ | mordred, yes. | |
| 17:11:16 | fabian_ | mordred, https://github.com/openstack/python-openstacksdk/blob/master/openstack/connection.py#L206 https://github.com/openstack/python-openstacksdk/blob/master/openstack/config/loader.py#L468 | |
| 17:12:29 | mordred | fabian_: sweet, thanks. lemme look at that flow real quick | |