Are we using HTTP PATCH method for partially update the resource Kubernetes host? As for the email thread[1] it is listed there , but I think we didn't implement that.
[1] Use of create instead of deploy within Stratos Thanks, Gayan On Wed, Apr 15, 2015 at 12:38 AM, Chamila De Alwis <chami...@wso2.com> wrote: > I think the API endpoint "/kubernetes/update/host" was to be modified to > "/kubernetesClusters/{kubernetesClusterId}/minions/{minionId}" in the > earlier REST API refactoring[1]. But it seems this particular method has > been excluded for the update. The use of this endpoint has been questioned > earlier[2], but it has gone down in the thread discussions. > > [1] - Mail Thread - "Re-designing Stratos REST API" > [2] - Mail Thread - "Use of create instead of deploy within Stratos" > > > Regards, > Chamila de Alwis > Software Engineer | WSO2 | +94772207163 > Blog: code.chamiladealwis.com > > > > On Tue, Apr 14, 2015 at 11:31 PM, Imesh Gunaratne <im...@apache.org> > wrote: > >> I think this confusion has made because a Kubernetes Host can be a Master >> or a Minion. We should be able to update both master and minion nodes. >> >> In terms of the API endpoint, it could say >> /kubernetesCluster/{kubernetesClusterId}/hosts and each host could be >> either a master or a minion. >> >> Thanks >> >> On Mon, Apr 13, 2015 at 12:02 AM, Chamila De Alwis <chami...@wso2.com> >> wrote: >> >>> Hi Mary, >>> >>> Thanks for reporting this! I can't find the exact commit which might >>> have deleted the existing API method. However I noticed some irregularities >>> in the API methods related to Kubernetes Hosts. >>> >>> As you have pointed out earlier for documentation, the terms, "minion" >>> and "host" seem to be used interchangeably. For example to add a Kubernetes >>> host the method is as follows. >>> >>> @PUT >>> @Path("/kubernetesClusters/{kubernetesClusterId}/minion") >>> @Produces("application/json") >>> @Consumes("application/json") >>> @AuthorizationAction("/permission/admin/manage/addKubernetesHost") >>> public Response addKubernetesHost( >>> >>> >>> However the resource path for Kubernetes host removal is as follows. IMO >>> we should drop the usage of the term minion in the resource paths. >>> >>> @DELETE >>> @Path("/kubernetesClusters/{kubernetesClusterId}/hosts/{hostId}") >>> @Produces("application/json") >>> @Consumes("application/json") >>> @AuthorizationAction("/permission/admin/manage/removeKubernetesHostCluster") >>> public Response removeKubernetesHostOfKubernetesCluster( >>> >>> >>> Furthermore, the first method, to add a Kubernetes host should be a POST >>> method AFAIU. A PUT/PATCH method is supposed to update an existing >>> resource, whereas here, the name of the method itself defeats the purpose. >>> >>> To address the initial issue, the PUT method should be implemented with >>> a resource path of >>> */kubernetesClusters/{kubernetesClusterId}/hosts/{hostId}* to update >>> the host. The existing method is a left over from the initial >>> implementation of API methods for Kubernetes. >>> >>> >>> Regards, >>> Chamila de Alwis >>> Software Engineer | WSO2 | +94772207163 >>> Blog: code.chamiladealwis.com >>> >>> >>> >>> On Tue, Apr 7, 2015 at 2:45 PM, Mariangela Hills <mariang...@wso2.com> >>> wrote: >>> >>>> I have created a JIRA [1] regarding these issues. >>>> >>>> [1] https://issues.apache.org/jira/browse/STRATOS-1319 >>>> >>>> Regards, >>>> Mariangela >>>> >>>> >>>> >>>> >>>> *--* >>>> Mariangela Hills >>>> Senior Technical Writer >>>> >>>> *WSO2, Inc.*lean.enterprise.middleware. >>>> m: +94 773 500185 >>>> w: http://wso2.com >>>> <http://wso2.com/events/> >>>> >>>> On Tue, Apr 7, 2015 at 2:21 PM, Mariangela Hills <mariang...@wso2.com> >>>> wrote: >>>> >>>>> Hi Devs, >>>>> >>>>> Previously, the following resource was used to update the >>>>> Kubernetes-CoreOS Host via REST API: >>>>> PATCH kubernetesClusters/{kubernetesClusterId}/minion/{minionId} >>>>> >>>>> However, now the above resource path can not be found in the code >>>>> base. Instead, now the following resource path is available: >>>>> PUT /kubernetes/update/host >>>>> >>>>> I had to pass the "clusterId" property as well in the JSON that >>>>> defined the Kubernetes-CoreOS host. >>>>> >>>>> Q1 - >>>>> How come the following resource does not follow the REST API standard >>>>> format that has been used for all Stratos API resource paths? >>>>> /kubernetes/update/host >>>>> >>>>> Q2 - >>>>> Is it correct that the "clusterId" property has to be passed in the >>>>> Kubernetes-CoreOS host payload, when the "clusterId" property has not >>>>> been defined in the KubernetesHostBean? >>>>> >>>>> Regards, >>>>> Mariangela >>>>> >>>>> >>>>> >>>>> >>>>> *--* >>>>> Mariangela Hills >>>>> Senior Technical Writer >>>>> >>>>> *WSO2, Inc.*lean.enterprise.middleware. >>>>> m: +94 773 500185 >>>>> w: http://wso2.com >>>>> <http://wso2.com/events/> >>>>> >>>> >>>> >>> >> >> >> -- >> Imesh Gunaratne >> >> Technical Lead, WSO2 >> Committer & PMC Member, Apache Stratos >> > > -- Gayan Gunarathne Technical Lead WSO2 Inc. (http://wso2.com) email : gay...@wso2.com | mobile : +94 766819985