On Aug 25, 2014, at 8:26 AM, Wido den Hollander <w...@widodh.nl> wrote:
> On 08/25/2014 02:25 PM, Sebastien Goasguen wrote: >> >> On Aug 25, 2014, at 8:16 AM, Wido den Hollander <w...@widodh.nl> wrote: >> >>> On 08/25/2014 01:33 PM, Nux! wrote: >>>> Thanks Erik! >>>> >>> >>> Indeed! >>> >>>> Hopefully this change will be incorporated soon so we don't need to patch >>>> cloud-init. >>>> >>> >>> I came up with a very small patch: >>> https://git-wip-us.apache.org/repos/asf?p=cloudstack.git;a=commitdiff;h=1499972804b6de4fade5c84436e29f9904165e18 >>> >>> Tested it on my local env and worked fine. Both the old and new URL work >>> with the same output. >>> >> >> thanks folks, I will pull that in 4.3 >> > > Hmm. I didn't make a separate branch as a hotfix for 4.4, so how do we get > this in 4.4.1 as well? > > We shouldn't cherry-pick anymore, right? Ideally no, if you make a hotfix/4.4-7405 branch for it you can ask Daan to merge it in 4.4 branch I will also merge it in 4.3 > > Wido > >> >> >>> Wido >>> >>>> >>>> >>>> -- >>>> Sent from the Delta quadrant using Borg technology! >>>> >>>> Nux! >>>> www.nux.ro >>>> >>>> >>>> ----- Original Message ----- >>>>> From: "Erik Weber" <terbol...@gmail.com> >>>>> To: "dev" <dev@cloudstack.apache.org> >>>>> Sent: Monday, 25 August, 2014 12:34:10 PM >>>>> Subject: Re: cloud-init issue >>>>> >>>>> On Mon, Aug 25, 2014 at 1:27 PM, Erik Weber <terbol...@gmail.com> wrote: >>>>> >>>>>> On Mon, Aug 25, 2014 at 1:16 PM, Wido den Hollander <w...@widodh.nl> >>>>>> wrote: >>>>>> >>>>>>> On 08/25/2014 12:12 PM, Sebastien Goasguen wrote: >>>>>>> >>>>>>>> Folks, >>>>>>>> >>>>>>>> There is an outstanding issue with cloud-init compatibility. >>>>>>>> The VR serves the instance metadata through a web server but there is a >>>>>>>> trailing slash issue: >>>>>>>> >>>>>>>> https://issues.apache.org/jira/browse/CLOUDSTACK-7405 >>>>>>>> >>>>>>>> Does anyone know where the settings for this web server are located in >>>>>>>> the cloudstack code ? >>>>>>>> >>>>>>>> >>>>>>> So I think that is done in systemvm/patches/debian/ >>>>>>> config/opt/cloud/bin/vmdata.py >>>>>>> >>>>>>> It adds a RewriteRule to the .htaccess like: >>>>>>> >>>>>>> entry = "RewriteRule ^meta-data/(.+)$ ../" + folder + >>>>>>> "/%{REMOTE_ADDR}/$1 [L,NC,QSA]" >>>>>>> >>>>>>> I'm not a big mod_rewrite guru however. >>>>>>> >>>>>>> >>>>>> Adding a line with "RewriteRule ^meta-data$ ../" + folder >>>>>> +"/%{REMOTE_ADDR}/$1 [L,NC,QSA]" >>>>>> should suffice. >>>>>> >>>>>> small typo there... >>>>> >>>>> >>>>> >>>>>> >>>>>> Tested on a VR with this config: >>>>>> >>>>>> RewriteRule ^meta-data/(.+)$ ../metadata/%{REMOTE_ADDR}/$1 [L,NC,QSA] >>>>>> >>>>>> RewriteRule ^meta-data/$ ../metadata/%{REMOTE_ADDR}/meta-data [L,NC,QSA] >>>>>> >>>>>> RewriteRule ^meta-data$ ../metadata/%{REMOTE_ADDR}/meta-data [L,NC,QSA] >>>>>> >>>>>> >>>>>> >>>>> A better solution is probably to make the last slash conditional, like >>>>> this: >>>>> RewriteRule ^meta-data/?$ ../metadata/%{REMOTE_ADDR}/meta-data [L,NC,QSA] >>>>> >>>>> tested: >>>>> [root@jenkins ~]# curl -I -s 10.30.81.1/latest/meta-data/ | grep HTTP >>>>> >>>>> HTTP/1.1 200 OK >>>>> >>>>> [root@jenkins ~]# curl -I -s 10.30.81.1/latest/meta-data | grep HTTP >>>>> >>>>> HTTP/1.1 200 OK >>>>> >>>>> Erik >>>>> >>> >> >