Does it need to go to review board though? I generally only post
patches that can actually be applied to reviewboard. This is more or
less just a blueprint for someone who is willing to make it work in
master.

On Wed, Feb 12, 2014 at 12:31 PM, Alex Hitchins
<alex.hitch...@shapeblue.com> wrote:
> Thanks for the patch Marcus! This needs to go on the review board though and 
> not on the Jira site. It's good to add a note to Jira with the link to the 
> review board.
>
> It's a simple process to sign up, go to https://reviews.apache.org/dashboard/ 
> and take a look. It's good to include the Jira reference in there and name 
> your diff with the Jira Id too (CLOUDSTACK-6088.diff).
>
> Thanks for the patch!
>
>
> Regards
>
> Alex Hitchins
>
> D: +44 1892 523 587 | S: +44 20 3603 0540 | M: +44 7788 423 969
>
> alex.hitch...@shapeblue.com
>
> -----Original Message-----
> From: Marcus [mailto:shadow...@gmail.com]
> Sent: 12 February 2014 18:55
> To: dev@cloudstack.apache.org
> Subject: Re: devs looking to get involved?
>
> I dropped a patch into
> https://issues.apache.org/jira/browse/CLOUDSTACK-6088, and if someone can get 
> to it, great, otherwise I'll try to circle back around to it.
>
> On Fri, Feb 7, 2014 at 9:45 PM, Marcus <shadow...@gmail.com> wrote:
>> Yeah, I just don't know where to capture them. If I have a patch for
>> 4.2, but I know it will never get applied as a feature, it seems odd
>> to put it on review board. Perhaps I just dump them on Jira as
>> attachments?
>>
>> Ultimately it behooves me to get this stuff done so I don't have to
>> revisit it later...
>>
>> On Fri, Feb 7, 2014 at 7:37 PM, David Nalley <da...@gnsa.us> wrote:
>>> - Users:
>>>
>>> Regardless of whether someone takes you up on the offer or not, I'd
>>> still love to see these patches hit RB or the mailing list, or Jira
>>> perhaps.
>>>
>>> --David
>>>
>>> On Fri, Feb 7, 2014 at 8:06 PM, Marcus <shadow...@gmail.com> wrote:
>>>> I occasionally have some minor improvement that I need to make to
>>>> whatever version of cloudstack we're currently running. This is
>>>> almost always behind what is currently being developed, and I don't
>>>> always feel like I have time to rebase/refactor it for master. I'm
>>>> wondering if there are any individuals out there who are looking for
>>>> ways to contribute that I can hand off these little projects to and
>>>> mentor a bit. You get an easy project to get your feet wet and I get
>>>> the improvements into master without using up time. :-) Maybe this
>>>> sounds like laziness on my part, but it seemed like a good idea.
>>>>
>>>> I can post a patch that works for one version, and you can rework it
>>>> and test against master. Respond if you're interested, there may be
>>>> others who have easy work to farm off as well.
>>>>
>>>> An example, I've made some improvements to the template downloader,
>>>> when the first 1M of the template is pulled we attempt to verify
>>>> that the image is actually what we think it is (qcow2 or vmdk or
>>>> whatever) by looking at the data. Up until now we just check file
>>>> extension. It also contains a new TemplateUtils class that has:
>>>>
>>>> +    public static boolean isCorrectExtension(String path, String ext) {
>>>> +        if (path.toLowerCase().endsWith(ext)
>>>> +            || path.toLowerCase().endsWith(ext + ".gz")
>>>> +            || path.toLowerCase().endsWith(ext + ".bz2")
>>>> +            || path.toLowerCase().endsWith(ext + ".zip")) {
>>>> +            return true;
>>>> +        }
>>>> +        return false;
>>>> +    }
>>>>
>>>> Which can be used to clean up the likes of:
>>>>
>>>>     private void checkFormat(String format, String url) {
>>>>
>>>> if((!url.toLowerCase().endsWith("vhd"))&&(!url.toLowerCase().endsWit
>>>> h("vhd.zip"))
>>>>
>>>> &&(!url.toLowerCase().endsWith("vhd.bz2"))&&(!url.toLowerCase().ends
>>>> With("vhd.gz"))
>>>>
>>>> &&(!url.toLowerCase().endsWith("qcow2"))&&(!url.toLowerCase().endsWi
>>>> th("qcow2.zip"))
>>>>
>>>> &&(!url.toLowerCase().endsWith("qcow2.bz2"))&&(!url.toLowerCase().en
>>>> dsWith("qcow2.gz"))
>>>>
>>>> &&(!url.toLowerCase().endsWith("ova"))&&(!url.toLowerCase().endsWith
>>>> ("ova.zip"))
>>>>
>>>> &&(!url.toLowerCase().endsWith("ova.bz2"))&&(!url.toLowerCase().ends
>>>> With("ova.gz"))
>>>>
>>>> &&(!url.toLowerCase().endsWith("tar"))&&(!url.toLowerCase().endsWith
>>>> ("tar.zip"))
>>>>
>>>> &&(!url.toLowerCase().endsWith("tar.bz2"))&&(!url.toLowerCase().endsWith("tar.gz"))
>>>>                 &&(!url.toLowerCase().endsWith("vmdk")) &&
>>>> (!url.toLowerCase().endsWith("vmdk.gz"))
>>>>                 &&(!url.toLowerCase().endsWith("vmdk.zip")) &&
>>>> (!url.toLowerCase().endsWith("vmdk.bz2")) &&
>>>> (!url.toLowerCase().endsWith("img"))
>>>>                 &&(!url.toLowerCase().endsWith("img.gz")) &&
>>>> (!url.toLowerCase().endsWith("img.zip")) &&
>>>> (!url.toLowerCase().endsWith("img.bz2"))
>>>>                 &&(!url.toLowerCase().endsWith("raw")) &&
>>>> (!url.toLowerCase().endsWith("raw.gz")) &&
>>>> (!url.toLowerCase().endsWith("raw.bz2"))
>>>>                 &&(!url.toLowerCase().endsWith("raw.zip"))){
>>>>             throw new InvalidParameterValueException("Please specify
>>>> a valid " + format.toLowerCase());
>>>>         }
>>>>         if ((format.equalsIgnoreCase("vhd")
>>>>                  && (!url.toLowerCase().endsWith("vhd")
>>>>                          && !url.toLowerCase().endsWith("vhd.zip")
>>>>                          && !url.toLowerCase().endsWith("vhd.bz2")
>>>>                          && !url.toLowerCase().endsWith("vhd.gz")))
>>>>             || (format.equalsIgnoreCase("vhdx")
>>>>                  && (!url.toLowerCase().endsWith("vhdx")
>>>>                          && !url.toLowerCase().endsWith("vhdx.zip")
>>>>                          && !url.toLowerCase().endsWith("vhdx.bz2")
>>>>                          && !url.toLowerCase().endsWith("vhdx.gz")))
>>>>             || (format.equalsIgnoreCase("qcow2")
>>>>                  && (!url.toLowerCase().endsWith("qcow2")
>>>>                          && !url.toLowerCase().endsWith("qcow2.zip")
>>>>                          && !url.toLowerCase().endsWith("qcow2.bz2")
>>>>                          && !url.toLowerCase().endsWith("qcow2.gz")))
>>>>             || (format.equalsIgnoreCase("ova")
>>>>                  && (!url.toLowerCase().endsWith("ova")
>>>>                          && !url.toLowerCase().endsWith("ova.zip")
>>>>                          && !url.toLowerCase().endsWith("ova.bz2")
>>>>                          && !url.toLowerCase().endsWith("ova.gz")))
>>>>             || (format.equalsIgnoreCase("tar")
>>>>                  && (!url.toLowerCase().endsWith("tar")
>>>>                          && !url.toLowerCase().endsWith("tar.zip")
>>>>                          && !url.toLowerCase().endsWith("tar.bz2")
>>>>                          && !url.toLowerCase().endsWith("tar.gz")))
>>>>             || (format.equalsIgnoreCase("raw")
>>>>                  && (!url.toLowerCase().endsWith("img")
>>>>                          && !url.toLowerCase().endsWith("img.zip")
>>>>                          && !url.toLowerCase().endsWith("img.bz2")
>>>>                          && !url.toLowerCase().endsWith("img.gz")
>>>>                          && !url.toLowerCase().endsWith("raw")
>>>>                          && !url.toLowerCase().endsWith("raw.bz2")
>>>>                          && !url.toLowerCase().endsWith("raw.zip")
>>>>                          && !url.toLowerCase().endsWith("raw.gz")))
>>>>             || (format.equalsIgnoreCase("vmdk")
>>>>                  && (!url.toLowerCase().endsWith("vmdk")
>>>>                          && !url.toLowerCase().endsWith("vmdk.zip")
>>>>                          && !url.toLowerCase().endsWith("vmdk.bz2")
>>>>                          && !url.toLowerCase().endsWith("vmdk.gz")))
>>>>            ) {
>>>>               throw new InvalidParameterValueException("Please
>>>> specify a valid URL. URL:" + url
>>>>                     + " is an invalid for the format " + 
>>>> format.toLowerCase());
>>>>         }
>>>>
>>>>
>>>>     }
> Need Enterprise Grade Support for Apache CloudStack?
> Our CloudStack Infrastructure 
> Support<http://shapeblue.com/cloudstack-infrastructure-support/> offers the 
> best 24/7 SLA for CloudStack Environments.
>
> Apache CloudStack Bootcamp training courses
>
> **NEW!** CloudStack 4.2.1 training<http://shapeblue.com/cloudstack-training/>
> 18th-19th February 2014, Brazil. 
> Classroom<http://shapeblue.com/cloudstack-training/>
> 17th-23rd March 2014, Region A. Instructor led, 
> On-line<http://shapeblue.com/cloudstack-training/>
> 24th-28th March 2014, Region B. Instructor led, 
> On-line<http://shapeblue.com/cloudstack-training/>
> 16th-20th June 2014, Region A. Instructor led, 
> On-line<http://shapeblue.com/cloudstack-training/>
> 23rd-27th June 2014, Region B. Instructor led, 
> On-line<http://shapeblue.com/cloudstack-training/>
>
> This email and any attachments to it may be confidential and are intended 
> solely for the use of the individual to whom it is addressed. Any views or 
> opinions expressed are solely those of the author and do not necessarily 
> represent those of Shape Blue Ltd or related companies. If you are not the 
> intended recipient of this email, you must neither take any action based upon 
> its contents, nor copy or show it to anyone. Please contact the sender if you 
> believe you have received this email in error. Shape Blue Ltd is a company 
> incorporated in England & Wales. ShapeBlue Services India LLP is a company 
> incorporated in India and is operated under license from Shape Blue Ltd. 
> Shape Blue Brasil Consultoria Ltda is a company incorporated in Brasil and is 
> operated under license from Shape Blue Ltd. ShapeBlue is a registered 
> trademark.

Reply via email to