On Sun, Aug 6, 2017 at 4:42 AM, Andrew Lau <[email protected]> wrote:
> > On Fri, 28 Jul 2017 at 01:11 Ben Parees <[email protected]> wrote: > >> On Thu, Jul 27, 2017 at 9:23 AM, Andrew Lau <[email protected]> >> wrote: >> >>> On Thu, 27 Jul 2017 at 22:52 Ben Parees <[email protected]> wrote: >>> >>>> On Thu, Jul 27, 2017 at 1:41 AM, Andrew Lau <[email protected]> >>>> wrote: >>>> >>>>> What is the purpose of the {name} URL parameter for the instantiate in >>>>> BuildRequests? ie. >>>>> POST /oapi/v1/namespaces/{namespace}/buildconfigs/{name}/instantiate >>>>> >>>> >>>> the {name} parameter is the name of the buildconfig you are >>>> instantiating a new build of, not the name of the build being created. >>>> >>>> >>> I don't think that's the case. >>> >>> In my example I have the build config "test" >>> >>> So when I POST /oapi/v1/namespaces/{namespace}/buildconfigs/test/instantiate >>> with the body: >>> >>> { >>> "triggeredBy" : {} >>> } >>> >>> It will return the 403 error: >>> >>> "message": "buildconfigs "Unknown" is forbidden: resource name may not >>> be empty" >>> >>> Then if I post something like: >>> >>> { >>> "metadata": { >>> "name": "test2" >>> }, >>> "triggeredBy" : {} >>> } >>> >>> I still get the error: >>> >>> "message": "buildconfigs "test2" is forbidden: buildconfigs "test2" not >>> found", >>> >>> Only until metadata.name matches the buildconfig will I get the 201 >>> created code. >>> >>> Now the second confusing thing is I can POST /oapi/v1/namespaces/{ >>> namespace}/buildconfigs/idontexist/instantiate >>> >>> { >>> "metadata": { >>> "name": "test" >>> }, >>> "triggeredBy" : {} >>> } >>> >>> Now this is accepted and creates the build for test, even though I >>> posted to the buildconfig"idontexist" which also doesn't exist.. >>> >> >> you're correct, the rest endpoint for instantiate does not actually care >> what resource you invoked it with, all that matters is the name field of >> the buidlrequest object, the name field provides the name of the >> buildconfig you are instantiating. >> >> >> > > Confusing! > > Is there a better way for overwriting the git reference of the build > request? > > { > "kind": "BuildRequest", > "apiVersion": "v1", > "metadata": { > "name": "test", > "creationTimestamp": null > }, > "revision": { > "type": "Source", > "git": { > "commit": "develop" > } > }, > "triggeredBy": [{ > "message": "Manually triggered" > }] > } > > This will tell the build to pull from the "develop" branch but then the > builds revision section will end up with "Source: develop authored by" > Can you provide me an exact paste of what you're referring to? I'm guessing the issue is we treat the value in "commit" as if it's a commit when describing it, even though in your case it's actually a branch ref. > > > >> >>> >>>> >>>>> >>>>> https://docs.openshift.org/latest/rest_api/openshift_v1. >>>>> html#create-instantiate-of-a-buildrequest >>>>> >>>>> The docs seem to suggest it's the name but I can set it to anything >>>>> and the name ends up getting pulled from the JSON body ie.: >>>>> >>>>> { >>>>> "metadata": { >>>>> "name": "test" >>>>> }, >>>>> "triggeredBy" : {} >>>>> } >>>>> >>>>> If my JSON body does not include a name then it complains that there >>>>> is no "name". >>>>> >>>>> _______________________________________________ >>>>> users mailing list >>>>> [email protected] >>>>> http://lists.openshift.redhat.com/openshiftmm/listinfo/users >>>>> >>>>> >>>> >>>> >>>> -- >>>> Ben Parees | OpenShift >>>> >>>> >> >> >> -- >> Ben Parees | OpenShift >> >> -- Ben Parees | OpenShift
_______________________________________________ users mailing list [email protected] http://lists.openshift.redhat.com/openshiftmm/listinfo/users
