Hi Edison,
Sorry for the delay.
Please see inline...
Cheers,
Gilles
On 07/09/18 12:03, Edison Xiang wrote:
Hey gilles,
Thanks your introduction for GraphQL and Relay.
> GraphQL and OpenAPI have a different feature scope and both have pros and
cons.
I totally agree with you. They can work together.
Right now, I think we have no more work to adapt OpenStack APIs for
Open API.
Firstly we could sort out Open API schemas base on the current
OpenStack APIs.
and then we can discuss how to use it.
I think a big question is going to be about the effort required to bring
OpenStack API to be Open API v3.0 compliant.
This is challenging because the various projects involved and the need
to validate a new solution across all the projects.
The best approach is likely to first demonstrate a new solution is
viable and then eventually bring it to be accepted globally.
Also because we don't have unlimited resources, I doubt we're going to
be able to bring both Open API and GraphQL to the table(s).
There no doubts how OpenStack APIs can benefit from features such as
schema definitions, self documentation and better performance especially
if they are built-in or derived from a standard.
Meanwhile a practical example shows those features in action (for the
skeptical) but also demonstrate how to do it which clarify the effort
involved along with pros and cons.I want to make clear that I'm not
against OpenAPI, I was actually keen to get it on board because of the
benefits
And it will also helps compare solutions (Open API, GraphQL).
So, what do you think about an Open API proof of concept with Neutron?
About the micro version, we discuss with your team mate dmitry in
another email [1]
Obviously micro version is a point of contention.
My take on this is because consuming them has been proven harder than
developing them.
The beauty of GraphQL is that there is no need to deal with version at all.
New fields appears when needed and old one are marked deprecated.
[1]
http://lists.openstack.org/pipermail/openstack-dev/2018-September/134202.html
Best Regards,
Edison Xiang
On Tue, Sep 4, 2018 at 8:37 AM Gilles Dubreuil <gdubr...@redhat.com
<mailto:gdubr...@redhat.com>> wrote:
On 30/08/18 13:56, Edison Xiang wrote:
Hi Ed Leafe,
Thanks your reply.
Open API defines a standard interface description for REST APIs.
Open API 3.0 can make a description(schema) for current OpenStack
REST API.
It will not change current OpenStack API.
I am not a GraphQL expert. I look up something about GraphQL.
In my understanding, GraphQL will get current OpenAPI together
and provide another APIs based on Relay,
Not sure what you mean here, could you please develop?
and Open API is used to describe REST APIs and GraphQL is used to
describe Relay APIs.
There is no such thing as "Relay APIs".
GraphQL povides a de-facto API Schema and Relay provides
extensions on top to facilitate re-fetching, paging and more.
GraphQL and OpenAPI have a different feature scope and both have
pros and cons.
GraphQL is delivering API without using REST verbs as all requests
are undone using POST and its data.
Beyond that what would be great (and it will ultimately come) is
to have both of them working together.
The idea of the GraphQL Proof of Concept is see what it can bring
and at what cost such as effort and trade-offs.
And to compare this against the effort to adapt OpenStack APIs to
use Open API.
BTW what's the status of Open API 3.0 in regards of Microversion?
Regards,
Gilles
Best Regards,
Edison Xiang
On Wed, Aug 29, 2018 at 9:33 PM Ed Leafe <e...@leafe.com
<mailto:e...@leafe.com>> wrote:
On Aug 29, 2018, at 1:36 AM, Edison Xiang
<xiang.edi...@gmail.com <mailto:xiang.edi...@gmail.com>> wrote:
>
> As we know, Open API 3.0 was released on July, 2017, it is
about one year ago.
> Open API 3.0 support some new features like anyof, oneof
and allof than Open API 2.0(Swagger 2.0).
> Now OpenStack projects do not support Open API.
> Also I found some old emails in the Mail List about
supporting Open API 2.0 in OpenStack.
There is currently an effort by some developers to
investigate the possibility of using GraphQL with OpenStack
APIs. What would Open API 3.0 provide that GraphQL would not?
I’m asking because I don’t know enough about Open API to
compare them.
-- Ed Leafe
__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe:
openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
<http://openstack-dev-requ...@lists.openstack.org?subject:unsubscribe>
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe:openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
<mailto:openstack-dev-requ...@lists.openstack.org?subject:unsubscribe>
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
--
Gilles Dubreuil
Senior Software Engineer - Red Hat - Openstack DFG Integration
Email:gil...@redhat.com <mailto:gil...@redhat.com>
GitHub/IRC: gildub
Mobile: +61 400 894 219
--
Gilles Dubreuil
Senior Software Engineer - Red Hat - Openstack DFG Integration
Email: gil...@redhat.com
GitHub/IRC: gildub
Mobile: +61 400 894 219
__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev