You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mesos.apache.org by Jie Yu <yu...@gmail.com> on 2016/03/03 18:10:02 UTC

Making 'curl' a prerequisite for installing Mesos

Hi,

I am proposing making 'curl' a prerequisite when installing Mesos.
Currently, we require 'libcurl' being present when installing Mesos (
http://mesos.apache.org/gettingstarted/). However, we found that it does
not compose well with our asynchronous runtime environment (i.e., it'll
block the current worker thread).

Recent work on URI fetcher
<https://issues.apache.org/jira/browse/MESOS-3918> uses 'curl' directly,
instead of using 'libcurl' to fetch artifacts, because it composes well
with our async runtime env. 'curl' is installed by default in most systems
(e.g., OSX, centos, RHEL).

So I am proposing adding 'curl' to our prerequisite list. Let me know if
you have any concern on this. I'll update the Getting Started doc if you
are OK with this change.

Thanks,
- Jie

Re: Making 'curl' a prerequisite for installing Mesos

Posted by Radoslaw Gruchalski <ra...@gruchalski.com>.
Shouldn't be a problem. +1

Sent from Outlook Mobile




On Thu, Mar 3, 2016 at 9:13 AM -0800, "Bernd Mathiske" <be...@mesosphere.io> wrote:










+1
On Mar 3, 2016, at 6:10 PM, Jie Yu <yu...@gmail.com> wrote:
Hi,
I am proposing making 'curl' a prerequisite when installing Mesos. Currently, we require 'libcurl' being present when installing Mesos (http://mesos.apache.org/gettingstarted/). However, we found that it does not compose well with our asynchronous runtime environment (i.e., it'll block the current worker thread).
Recent work on URI fetcher uses 'curl' directly, instead of using 'libcurl' to fetch artifacts, because it composes well with our async runtime env. 'curl' is installed by default in most systems (e.g., OSX, centos, RHEL).
So I am proposing adding 'curl' to our prerequisite list. Let me know if you have any concern on this. I'll update the Getting Started doc if you are OK with this change.
Thanks,- Jie








Re: Making 'curl' a prerequisite for installing Mesos

Posted by haosdent <ha...@gmail.com>.
We also use curl.exe[1] in Windows?

1. http://www.paehl.com/open_source/?CURL_7.47.1

On Fri, Mar 4, 2016 at 1:13 AM, Bernd Mathiske <be...@mesosphere.io> wrote:

> +1
>
> On Mar 3, 2016, at 6:10 PM, Jie Yu <yu...@gmail.com> wrote:
>
> Hi,
>
> I am proposing making 'curl' a prerequisite when installing Mesos.
> Currently, we require 'libcurl' being present when installing Mesos (
> http://mesos.apache.org/gettingstarted/). However, we found that it does
> not compose well with our asynchronous runtime environment (i.e., it'll
> block the current worker thread).
>
> Recent work on URI fetcher
> <https://issues.apache.org/jira/browse/MESOS-3918> uses 'curl' directly,
> instead of using 'libcurl' to fetch artifacts, because it composes well
> with our async runtime env. 'curl' is installed by default in most systems
> (e.g., OSX, centos, RHEL).
>
> So I am proposing adding 'curl' to our prerequisite list. Let me know if
> you have any concern on this. I'll update the Getting Started doc if you
> are OK with this change.
>
> Thanks,
> - Jie
>
>
>


-- 
Best Regards,
Haosdent Huang

Re: Making 'curl' a prerequisite for installing Mesos

Posted by haosdent <ha...@gmail.com>.
We also use curl.exe[1] in Windows?

1. http://www.paehl.com/open_source/?CURL_7.47.1

On Fri, Mar 4, 2016 at 1:13 AM, Bernd Mathiske <be...@mesosphere.io> wrote:

> +1
>
> On Mar 3, 2016, at 6:10 PM, Jie Yu <yu...@gmail.com> wrote:
>
> Hi,
>
> I am proposing making 'curl' a prerequisite when installing Mesos.
> Currently, we require 'libcurl' being present when installing Mesos (
> http://mesos.apache.org/gettingstarted/). However, we found that it does
> not compose well with our asynchronous runtime environment (i.e., it'll
> block the current worker thread).
>
> Recent work on URI fetcher
> <https://issues.apache.org/jira/browse/MESOS-3918> uses 'curl' directly,
> instead of using 'libcurl' to fetch artifacts, because it composes well
> with our async runtime env. 'curl' is installed by default in most systems
> (e.g., OSX, centos, RHEL).
>
> So I am proposing adding 'curl' to our prerequisite list. Let me know if
> you have any concern on this. I'll update the Getting Started doc if you
> are OK with this change.
>
> Thanks,
> - Jie
>
>
>


-- 
Best Regards,
Haosdent Huang

Re: Making 'curl' a prerequisite for installing Mesos

Posted by Gilbert Song <gi...@mesosphere.io>.
+1

On Thu, Mar 3, 2016 at 9:13 AM, Bernd Mathiske <be...@mesosphere.io> wrote:

> +1
>
> On Mar 3, 2016, at 6:10 PM, Jie Yu <yu...@gmail.com> wrote:
>
> Hi,
>
> I am proposing making 'curl' a prerequisite when installing Mesos.
> Currently, we require 'libcurl' being present when installing Mesos (
> http://mesos.apache.org/gettingstarted/). However, we found that it does
> not compose well with our asynchronous runtime environment (i.e., it'll
> block the current worker thread).
>
> Recent work on URI fetcher
> <https://issues.apache.org/jira/browse/MESOS-3918> uses 'curl' directly,
> instead of using 'libcurl' to fetch artifacts, because it composes well
> with our async runtime env. 'curl' is installed by default in most systems
> (e.g., OSX, centos, RHEL).
>
> So I am proposing adding 'curl' to our prerequisite list. Let me know if
> you have any concern on this. I'll update the Getting Started doc if you
> are OK with this change.
>
> Thanks,
> - Jie
>
>
>

Re: Making 'curl' a prerequisite for installing Mesos

Posted by Bernd Mathiske <be...@mesosphere.io>.
+1

> On Mar 3, 2016, at 6:10 PM, Jie Yu <yu...@gmail.com> wrote:
> 
> Hi,
> 
> I am proposing making 'curl' a prerequisite when installing Mesos. Currently, we require 'libcurl' being present when installing Mesos (http://mesos.apache.org/gettingstarted/ <http://mesos.apache.org/gettingstarted/>). However, we found that it does not compose well with our asynchronous runtime environment (i.e., it'll block the current worker thread).
> 
> Recent work on URI fetcher <https://issues.apache.org/jira/browse/MESOS-3918> uses 'curl' directly, instead of using 'libcurl' to fetch artifacts, because it composes well with our async runtime env. 'curl' is installed by default in most systems (e.g., OSX, centos, RHEL).
> 
> So I am proposing adding 'curl' to our prerequisite list. Let me know if you have any concern on this. I'll update the Getting Started doc if you are OK with this change.
> 
> Thanks,
> - Jie
> 


Re: Making 'curl' a prerequisite for installing Mesos

Posted by Jojy Varghese <jo...@mesosphere.io>.
Wanted to add another data point to the discussion.

libprocess + libevent was first used for solving the same problems as curl is now being used for. But “libevent” was not a favored library as far as I know and had to be replaced with curl based implementation. 

-jojy 

> On Mar 6, 2016, at 3:54 PM, Benjamin Mahler <bm...@apache.org> wrote:
> 
> Also would be great to understand where libprocess is currently
> insufficient in terms of the HTTP support you need.
> 
> On Fri, Mar 4, 2016 at 12:17 PM, Jie Yu <yu...@gmail.com> wrote:
> 
>> Thanks for the feedback, guys!
>> 
>> I think we all agree that using libcurl is the ideal solution. I've already
>> created a ticket for this:
>> https://issues.apache.org/jira/browse/MESOS-4853
>> 
>> Currently, only docker/appc image puller is using 'curl' directly. I guess
>> it's not a problem on Windows yet.
>> 
>> Based on the discussion, I won't add a 'curl' dependency to Mesos. Instead,
>> I'll mention the 'curl' dependency in the doc of container image support
>> for now. Hopefully, we can remove that dependency soon when MESOS-4853 is
>> addressed.
>> 
>> Thanks,
>> - Jie
>> 
>> On Fri, Mar 4, 2016 at 12:00 PM, Alexander Rojas <al...@mesosphere.io>
>> wrote:
>> 
>>> I also have my doubts about this idea. Given that we support some legacy
>>> systems and the user interface tends to be less stable than an API
>> (though
>>> comparing the flags between curl 7.38.0 in Debian 8 and curl 7.19.7 in
>>> CentOS 6.7, I don’t see a lot of differences in the important ones).
>>> 
>>> So I guess what I am trying to say is, if we go this route, let’s make
>>> sure it is fully compatible across versions and the behavior is uniform.
>>> 
>>> 
>>>> On 03 Mar 2016, at 18:39, Alex Clemmer <cl...@gmail.com>
>>> wrote:
>>>> 
>>>> Looks like the relevant review is this one:
>>>> https://reviews.apache.org/r/40418/diff/3#4
>>>> 
>>>> I _suspect_ this will work with Windows, but am not positive.
>>>> Optimistically, it's not clear to me whether it makes sense to add it
>>>> as a dependency, because I don't know how to get its location reliably
>>>> on Windows. Because Windows has no package manager, we actually rope
>>>> it in the libcurl dependency from CMake, at build time. Seems like the
>>>> thing to do might be to just build the exe as well and dispatch to
>>>> that but this will require some modifications to this code.
>>>> 
>>>> On Thu, Mar 3, 2016 at 5:46 PM, Guangya Liu <gy...@gmail.com>
>> wrote:
>>>>> libcurl can automatically picks up certain environment variables and
>>>>> adjusts its settings accordingly, so libcurl support enabling
>> http_proxy
>>>>> and https_proxy by default, this is important feature for someone who
>>> want
>>>>> to use a proxy to connect internet. One example is that I cannot get
>>> google
>>>>> docker images but need a proxy set in China.
>>>>> 
>>>>> If we depend on "curl" (I saw that we already finished the this in
>>>>> MESOS-2840) when using fetcher, I think that we may also need to
>> enable
>>>>> slave to pass a proxy to fetch curl to enable someone can pull google
>>>>> docker images under a firewall. Does it make sense file a JIRA to
>>> support
>>>>> http proxy?
>>>>> 
>>>>> Thanks,
>>>>> 
>>>>> Guangya
>>>>> 
>>>>> On Fri, Mar 4, 2016 at 9:39 AM, Klaus Ma <kl...@gmail.com>
>>> wrote:
>>>>> 
>>>>>> +1 to add 'curl' dependency firstly.
>>>>>> 
>>>>>> ----
>>>>>> Da (Klaus), Ma (马达) | PMP® | Advisory Software Engineer
>>>>>> Platform OpenSource Technology, STG, IBM GCG
>>>>>> +86-10-8245 4084 | klaus1982.cn@gmail.com | http://k82.me
>>>>>> 
>>>>>> On Fri, Mar 4, 2016 at 5:04 AM, Jojy Varghese <jo...@mesosphere.io>
>>> wrote:
>>>>>> 
>>>>>>> +1
>>>>>>> 
>>>>>>> On Thu, Mar 3, 2016 at 12:52 PM Jake Farrell <jf...@apache.org>
>>>>>> wrote:
>>>>>>> 
>>>>>>>> +1
>>>>>>>> 
>>>>>>>> -Jake
>>>>>>>> 
>>>>>>>> On Thu, Mar 3, 2016 at 12:10 PM, Jie Yu <yu...@gmail.com>
>> wrote:
>>>>>>>> 
>>>>>>>>> Hi,
>>>>>>>>> 
>>>>>>>>> I am proposing making 'curl' a prerequisite when installing Mesos.
>>>>>>>>> Currently, we require 'libcurl' being present when installing
>> Mesos
>>> (
>>>>>>>>> http://mesos.apache.org/gettingstarted/). However, we found that
>> it
>>>>>>> does
>>>>>>>>> not compose well with our asynchronous runtime environment (i.e.,
>>>>>> it'll
>>>>>>>>> block the current worker thread).
>>>>>>>>> 
>>>>>>>>> Recent work on URI fetcher
>>>>>>>>> <https://issues.apache.org/jira/browse/MESOS-3918> uses 'curl'
>>>>>>> directly,
>>>>>>>>> instead of using 'libcurl' to fetch artifacts, because it composes
>>>>>> well
>>>>>>>>> with our async runtime env. 'curl' is installed by default in most
>>>>>>>> systems
>>>>>>>>> (e.g., OSX, centos, RHEL).
>>>>>>>>> 
>>>>>>>>> So I am proposing adding 'curl' to our prerequisite list. Let me
>>> know
>>>>>>> if
>>>>>>>>> you have any concern on this. I'll update the Getting Started doc
>> if
>>>>>>> you
>>>>>>>>> are OK with this change.
>>>>>>>>> 
>>>>>>>>> Thanks,
>>>>>>>>> - Jie
>>>>>>>>> 
>>>>>>>> 
>>>>>>> 
>>>>>> 
>>>> 
>>>> 
>>>> 
>>>> --
>>>> Alex
>>>> 
>>>> Theory is the first term in the Taylor series of practice. -- Thomas M
>>>> Cover (1992)
>>> 
>>> 
>> 


Re: Making 'curl' a prerequisite for installing Mesos

Posted by Benjamin Mahler <bm...@apache.org>.
Also would be great to understand where libprocess is currently
insufficient in terms of the HTTP support you need.

On Fri, Mar 4, 2016 at 12:17 PM, Jie Yu <yu...@gmail.com> wrote:

> Thanks for the feedback, guys!
>
> I think we all agree that using libcurl is the ideal solution. I've already
> created a ticket for this:
> https://issues.apache.org/jira/browse/MESOS-4853
>
> Currently, only docker/appc image puller is using 'curl' directly. I guess
> it's not a problem on Windows yet.
>
> Based on the discussion, I won't add a 'curl' dependency to Mesos. Instead,
> I'll mention the 'curl' dependency in the doc of container image support
> for now. Hopefully, we can remove that dependency soon when MESOS-4853 is
> addressed.
>
> Thanks,
> - Jie
>
> On Fri, Mar 4, 2016 at 12:00 PM, Alexander Rojas <al...@mesosphere.io>
> wrote:
>
> > I also have my doubts about this idea. Given that we support some legacy
> > systems and the user interface tends to be less stable than an API
> (though
> > comparing the flags between curl 7.38.0 in Debian 8 and curl 7.19.7 in
> > CentOS 6.7, I don’t see a lot of differences in the important ones).
> >
> > So I guess what I am trying to say is, if we go this route, let’s make
> > sure it is fully compatible across versions and the behavior is uniform.
> >
> >
> > > On 03 Mar 2016, at 18:39, Alex Clemmer <cl...@gmail.com>
> > wrote:
> > >
> > > Looks like the relevant review is this one:
> > > https://reviews.apache.org/r/40418/diff/3#4
> > >
> > > I _suspect_ this will work with Windows, but am not positive.
> > > Optimistically, it's not clear to me whether it makes sense to add it
> > > as a dependency, because I don't know how to get its location reliably
> > > on Windows. Because Windows has no package manager, we actually rope
> > > it in the libcurl dependency from CMake, at build time. Seems like the
> > > thing to do might be to just build the exe as well and dispatch to
> > > that but this will require some modifications to this code.
> > >
> > > On Thu, Mar 3, 2016 at 5:46 PM, Guangya Liu <gy...@gmail.com>
> wrote:
> > >> libcurl can automatically picks up certain environment variables and
> > >> adjusts its settings accordingly, so libcurl support enabling
> http_proxy
> > >> and https_proxy by default, this is important feature for someone who
> > want
> > >> to use a proxy to connect internet. One example is that I cannot get
> > google
> > >> docker images but need a proxy set in China.
> > >>
> > >> If we depend on "curl" (I saw that we already finished the this in
> > >> MESOS-2840) when using fetcher, I think that we may also need to
> enable
> > >> slave to pass a proxy to fetch curl to enable someone can pull google
> > >> docker images under a firewall. Does it make sense file a JIRA to
> > support
> > >> http proxy?
> > >>
> > >> Thanks,
> > >>
> > >> Guangya
> > >>
> > >> On Fri, Mar 4, 2016 at 9:39 AM, Klaus Ma <kl...@gmail.com>
> > wrote:
> > >>
> > >>> +1 to add 'curl' dependency firstly.
> > >>>
> > >>> ----
> > >>> Da (Klaus), Ma (马达) | PMP® | Advisory Software Engineer
> > >>> Platform OpenSource Technology, STG, IBM GCG
> > >>> +86-10-8245 4084 | klaus1982.cn@gmail.com | http://k82.me
> > >>>
> > >>> On Fri, Mar 4, 2016 at 5:04 AM, Jojy Varghese <jo...@mesosphere.io>
> > wrote:
> > >>>
> > >>>> +1
> > >>>>
> > >>>> On Thu, Mar 3, 2016 at 12:52 PM Jake Farrell <jf...@apache.org>
> > >>> wrote:
> > >>>>
> > >>>>> +1
> > >>>>>
> > >>>>> -Jake
> > >>>>>
> > >>>>> On Thu, Mar 3, 2016 at 12:10 PM, Jie Yu <yu...@gmail.com>
> wrote:
> > >>>>>
> > >>>>>> Hi,
> > >>>>>>
> > >>>>>> I am proposing making 'curl' a prerequisite when installing Mesos.
> > >>>>>> Currently, we require 'libcurl' being present when installing
> Mesos
> > (
> > >>>>>> http://mesos.apache.org/gettingstarted/). However, we found that
> it
> > >>>> does
> > >>>>>> not compose well with our asynchronous runtime environment (i.e.,
> > >>> it'll
> > >>>>>> block the current worker thread).
> > >>>>>>
> > >>>>>> Recent work on URI fetcher
> > >>>>>> <https://issues.apache.org/jira/browse/MESOS-3918> uses 'curl'
> > >>>> directly,
> > >>>>>> instead of using 'libcurl' to fetch artifacts, because it composes
> > >>> well
> > >>>>>> with our async runtime env. 'curl' is installed by default in most
> > >>>>> systems
> > >>>>>> (e.g., OSX, centos, RHEL).
> > >>>>>>
> > >>>>>> So I am proposing adding 'curl' to our prerequisite list. Let me
> > know
> > >>>> if
> > >>>>>> you have any concern on this. I'll update the Getting Started doc
> if
> > >>>> you
> > >>>>>> are OK with this change.
> > >>>>>>
> > >>>>>> Thanks,
> > >>>>>> - Jie
> > >>>>>>
> > >>>>>
> > >>>>
> > >>>
> > >
> > >
> > >
> > > --
> > > Alex
> > >
> > > Theory is the first term in the Taylor series of practice. -- Thomas M
> > > Cover (1992)
> >
> >
>

Re: Making 'curl' a prerequisite for installing Mesos

Posted by Jie Yu <yu...@gmail.com>.
Thanks for the feedback, guys!

I think we all agree that using libcurl is the ideal solution. I've already
created a ticket for this:
https://issues.apache.org/jira/browse/MESOS-4853

Currently, only docker/appc image puller is using 'curl' directly. I guess
it's not a problem on Windows yet.

Based on the discussion, I won't add a 'curl' dependency to Mesos. Instead,
I'll mention the 'curl' dependency in the doc of container image support
for now. Hopefully, we can remove that dependency soon when MESOS-4853 is
addressed.

Thanks,
- Jie

On Fri, Mar 4, 2016 at 12:00 PM, Alexander Rojas <al...@mesosphere.io>
wrote:

> I also have my doubts about this idea. Given that we support some legacy
> systems and the user interface tends to be less stable than an API (though
> comparing the flags between curl 7.38.0 in Debian 8 and curl 7.19.7 in
> CentOS 6.7, I don’t see a lot of differences in the important ones).
>
> So I guess what I am trying to say is, if we go this route, let’s make
> sure it is fully compatible across versions and the behavior is uniform.
>
>
> > On 03 Mar 2016, at 18:39, Alex Clemmer <cl...@gmail.com>
> wrote:
> >
> > Looks like the relevant review is this one:
> > https://reviews.apache.org/r/40418/diff/3#4
> >
> > I _suspect_ this will work with Windows, but am not positive.
> > Optimistically, it's not clear to me whether it makes sense to add it
> > as a dependency, because I don't know how to get its location reliably
> > on Windows. Because Windows has no package manager, we actually rope
> > it in the libcurl dependency from CMake, at build time. Seems like the
> > thing to do might be to just build the exe as well and dispatch to
> > that but this will require some modifications to this code.
> >
> > On Thu, Mar 3, 2016 at 5:46 PM, Guangya Liu <gy...@gmail.com> wrote:
> >> libcurl can automatically picks up certain environment variables and
> >> adjusts its settings accordingly, so libcurl support enabling http_proxy
> >> and https_proxy by default, this is important feature for someone who
> want
> >> to use a proxy to connect internet. One example is that I cannot get
> google
> >> docker images but need a proxy set in China.
> >>
> >> If we depend on "curl" (I saw that we already finished the this in
> >> MESOS-2840) when using fetcher, I think that we may also need to enable
> >> slave to pass a proxy to fetch curl to enable someone can pull google
> >> docker images under a firewall. Does it make sense file a JIRA to
> support
> >> http proxy?
> >>
> >> Thanks,
> >>
> >> Guangya
> >>
> >> On Fri, Mar 4, 2016 at 9:39 AM, Klaus Ma <kl...@gmail.com>
> wrote:
> >>
> >>> +1 to add 'curl' dependency firstly.
> >>>
> >>> ----
> >>> Da (Klaus), Ma (马达) | PMP® | Advisory Software Engineer
> >>> Platform OpenSource Technology, STG, IBM GCG
> >>> +86-10-8245 4084 | klaus1982.cn@gmail.com | http://k82.me
> >>>
> >>> On Fri, Mar 4, 2016 at 5:04 AM, Jojy Varghese <jo...@mesosphere.io>
> wrote:
> >>>
> >>>> +1
> >>>>
> >>>> On Thu, Mar 3, 2016 at 12:52 PM Jake Farrell <jf...@apache.org>
> >>> wrote:
> >>>>
> >>>>> +1
> >>>>>
> >>>>> -Jake
> >>>>>
> >>>>> On Thu, Mar 3, 2016 at 12:10 PM, Jie Yu <yu...@gmail.com> wrote:
> >>>>>
> >>>>>> Hi,
> >>>>>>
> >>>>>> I am proposing making 'curl' a prerequisite when installing Mesos.
> >>>>>> Currently, we require 'libcurl' being present when installing Mesos
> (
> >>>>>> http://mesos.apache.org/gettingstarted/). However, we found that it
> >>>> does
> >>>>>> not compose well with our asynchronous runtime environment (i.e.,
> >>> it'll
> >>>>>> block the current worker thread).
> >>>>>>
> >>>>>> Recent work on URI fetcher
> >>>>>> <https://issues.apache.org/jira/browse/MESOS-3918> uses 'curl'
> >>>> directly,
> >>>>>> instead of using 'libcurl' to fetch artifacts, because it composes
> >>> well
> >>>>>> with our async runtime env. 'curl' is installed by default in most
> >>>>> systems
> >>>>>> (e.g., OSX, centos, RHEL).
> >>>>>>
> >>>>>> So I am proposing adding 'curl' to our prerequisite list. Let me
> know
> >>>> if
> >>>>>> you have any concern on this. I'll update the Getting Started doc if
> >>>> you
> >>>>>> are OK with this change.
> >>>>>>
> >>>>>> Thanks,
> >>>>>> - Jie
> >>>>>>
> >>>>>
> >>>>
> >>>
> >
> >
> >
> > --
> > Alex
> >
> > Theory is the first term in the Taylor series of practice. -- Thomas M
> > Cover (1992)
>
>

Re: Making 'curl' a prerequisite for installing Mesos

Posted by Alexander Rojas <al...@mesosphere.io>.
I also have my doubts about this idea. Given that we support some legacy systems and the user interface tends to be less stable than an API (though comparing the flags between curl 7.38.0 in Debian 8 and curl 7.19.7 in CentOS 6.7, I don’t see a lot of differences in the important ones).

So I guess what I am trying to say is, if we go this route, let’s make sure it is fully compatible across versions and the behavior is uniform.


> On 03 Mar 2016, at 18:39, Alex Clemmer <cl...@gmail.com> wrote:
> 
> Looks like the relevant review is this one:
> https://reviews.apache.org/r/40418/diff/3#4
> 
> I _suspect_ this will work with Windows, but am not positive.
> Optimistically, it's not clear to me whether it makes sense to add it
> as a dependency, because I don't know how to get its location reliably
> on Windows. Because Windows has no package manager, we actually rope
> it in the libcurl dependency from CMake, at build time. Seems like the
> thing to do might be to just build the exe as well and dispatch to
> that but this will require some modifications to this code.
> 
> On Thu, Mar 3, 2016 at 5:46 PM, Guangya Liu <gy...@gmail.com> wrote:
>> libcurl can automatically picks up certain environment variables and
>> adjusts its settings accordingly, so libcurl support enabling http_proxy
>> and https_proxy by default, this is important feature for someone who want
>> to use a proxy to connect internet. One example is that I cannot get google
>> docker images but need a proxy set in China.
>> 
>> If we depend on "curl" (I saw that we already finished the this in
>> MESOS-2840) when using fetcher, I think that we may also need to enable
>> slave to pass a proxy to fetch curl to enable someone can pull google
>> docker images under a firewall. Does it make sense file a JIRA to support
>> http proxy?
>> 
>> Thanks,
>> 
>> Guangya
>> 
>> On Fri, Mar 4, 2016 at 9:39 AM, Klaus Ma <kl...@gmail.com> wrote:
>> 
>>> +1 to add 'curl' dependency firstly.
>>> 
>>> ----
>>> Da (Klaus), Ma (马达) | PMP® | Advisory Software Engineer
>>> Platform OpenSource Technology, STG, IBM GCG
>>> +86-10-8245 4084 | klaus1982.cn@gmail.com | http://k82.me
>>> 
>>> On Fri, Mar 4, 2016 at 5:04 AM, Jojy Varghese <jo...@mesosphere.io> wrote:
>>> 
>>>> +1
>>>> 
>>>> On Thu, Mar 3, 2016 at 12:52 PM Jake Farrell <jf...@apache.org>
>>> wrote:
>>>> 
>>>>> +1
>>>>> 
>>>>> -Jake
>>>>> 
>>>>> On Thu, Mar 3, 2016 at 12:10 PM, Jie Yu <yu...@gmail.com> wrote:
>>>>> 
>>>>>> Hi,
>>>>>> 
>>>>>> I am proposing making 'curl' a prerequisite when installing Mesos.
>>>>>> Currently, we require 'libcurl' being present when installing Mesos (
>>>>>> http://mesos.apache.org/gettingstarted/). However, we found that it
>>>> does
>>>>>> not compose well with our asynchronous runtime environment (i.e.,
>>> it'll
>>>>>> block the current worker thread).
>>>>>> 
>>>>>> Recent work on URI fetcher
>>>>>> <https://issues.apache.org/jira/browse/MESOS-3918> uses 'curl'
>>>> directly,
>>>>>> instead of using 'libcurl' to fetch artifacts, because it composes
>>> well
>>>>>> with our async runtime env. 'curl' is installed by default in most
>>>>> systems
>>>>>> (e.g., OSX, centos, RHEL).
>>>>>> 
>>>>>> So I am proposing adding 'curl' to our prerequisite list. Let me know
>>>> if
>>>>>> you have any concern on this. I'll update the Getting Started doc if
>>>> you
>>>>>> are OK with this change.
>>>>>> 
>>>>>> Thanks,
>>>>>> - Jie
>>>>>> 
>>>>> 
>>>> 
>>> 
> 
> 
> 
> -- 
> Alex
> 
> Theory is the first term in the Taylor series of practice. -- Thomas M
> Cover (1992)


Re: Making 'curl' a prerequisite for installing Mesos

Posted by Alex Clemmer <cl...@gmail.com>.
Looks like the relevant review is this one:
https://reviews.apache.org/r/40418/diff/3#4

I _suspect_ this will work with Windows, but am not positive.
Optimistically, it's not clear to me whether it makes sense to add it
as a dependency, because I don't know how to get its location reliably
on Windows. Because Windows has no package manager, we actually rope
it in the libcurl dependency from CMake, at build time. Seems like the
thing to do might be to just build the exe as well and dispatch to
that but this will require some modifications to this code.

On Thu, Mar 3, 2016 at 5:46 PM, Guangya Liu <gy...@gmail.com> wrote:
> libcurl can automatically picks up certain environment variables and
> adjusts its settings accordingly, so libcurl support enabling http_proxy
> and https_proxy by default, this is important feature for someone who want
> to use a proxy to connect internet. One example is that I cannot get google
> docker images but need a proxy set in China.
>
> If we depend on "curl" (I saw that we already finished the this in
> MESOS-2840) when using fetcher, I think that we may also need to enable
> slave to pass a proxy to fetch curl to enable someone can pull google
> docker images under a firewall. Does it make sense file a JIRA to support
> http proxy?
>
> Thanks,
>
> Guangya
>
> On Fri, Mar 4, 2016 at 9:39 AM, Klaus Ma <kl...@gmail.com> wrote:
>
>> +1 to add 'curl' dependency firstly.
>>
>> ----
>> Da (Klaus), Ma (马达) | PMP® | Advisory Software Engineer
>> Platform OpenSource Technology, STG, IBM GCG
>> +86-10-8245 4084 | klaus1982.cn@gmail.com | http://k82.me
>>
>> On Fri, Mar 4, 2016 at 5:04 AM, Jojy Varghese <jo...@mesosphere.io> wrote:
>>
>> > +1
>> >
>> > On Thu, Mar 3, 2016 at 12:52 PM Jake Farrell <jf...@apache.org>
>> wrote:
>> >
>> > > +1
>> > >
>> > > -Jake
>> > >
>> > > On Thu, Mar 3, 2016 at 12:10 PM, Jie Yu <yu...@gmail.com> wrote:
>> > >
>> > > > Hi,
>> > > >
>> > > > I am proposing making 'curl' a prerequisite when installing Mesos.
>> > > > Currently, we require 'libcurl' being present when installing Mesos (
>> > > > http://mesos.apache.org/gettingstarted/). However, we found that it
>> > does
>> > > > not compose well with our asynchronous runtime environment (i.e.,
>> it'll
>> > > > block the current worker thread).
>> > > >
>> > > > Recent work on URI fetcher
>> > > > <https://issues.apache.org/jira/browse/MESOS-3918> uses 'curl'
>> > directly,
>> > > > instead of using 'libcurl' to fetch artifacts, because it composes
>> well
>> > > > with our async runtime env. 'curl' is installed by default in most
>> > > systems
>> > > > (e.g., OSX, centos, RHEL).
>> > > >
>> > > > So I am proposing adding 'curl' to our prerequisite list. Let me know
>> > if
>> > > > you have any concern on this. I'll update the Getting Started doc if
>> > you
>> > > > are OK with this change.
>> > > >
>> > > > Thanks,
>> > > > - Jie
>> > > >
>> > >
>> >
>>



-- 
Alex

Theory is the first term in the Taylor series of practice. -- Thomas M
Cover (1992)

Re: Making 'curl' a prerequisite for installing Mesos

Posted by Guangya Liu <gy...@gmail.com>.
libcurl can automatically picks up certain environment variables and
adjusts its settings accordingly, so libcurl support enabling http_proxy
and https_proxy by default, this is important feature for someone who want
to use a proxy to connect internet. One example is that I cannot get google
docker images but need a proxy set in China.

If we depend on "curl" (I saw that we already finished the this in
MESOS-2840) when using fetcher, I think that we may also need to enable
slave to pass a proxy to fetch curl to enable someone can pull google
docker images under a firewall. Does it make sense file a JIRA to support
http proxy?

Thanks,

Guangya

On Fri, Mar 4, 2016 at 9:39 AM, Klaus Ma <kl...@gmail.com> wrote:

> +1 to add 'curl' dependency firstly.
>
> ----
> Da (Klaus), Ma (马达) | PMP® | Advisory Software Engineer
> Platform OpenSource Technology, STG, IBM GCG
> +86-10-8245 4084 | klaus1982.cn@gmail.com | http://k82.me
>
> On Fri, Mar 4, 2016 at 5:04 AM, Jojy Varghese <jo...@mesosphere.io> wrote:
>
> > +1
> >
> > On Thu, Mar 3, 2016 at 12:52 PM Jake Farrell <jf...@apache.org>
> wrote:
> >
> > > +1
> > >
> > > -Jake
> > >
> > > On Thu, Mar 3, 2016 at 12:10 PM, Jie Yu <yu...@gmail.com> wrote:
> > >
> > > > Hi,
> > > >
> > > > I am proposing making 'curl' a prerequisite when installing Mesos.
> > > > Currently, we require 'libcurl' being present when installing Mesos (
> > > > http://mesos.apache.org/gettingstarted/). However, we found that it
> > does
> > > > not compose well with our asynchronous runtime environment (i.e.,
> it'll
> > > > block the current worker thread).
> > > >
> > > > Recent work on URI fetcher
> > > > <https://issues.apache.org/jira/browse/MESOS-3918> uses 'curl'
> > directly,
> > > > instead of using 'libcurl' to fetch artifacts, because it composes
> well
> > > > with our async runtime env. 'curl' is installed by default in most
> > > systems
> > > > (e.g., OSX, centos, RHEL).
> > > >
> > > > So I am proposing adding 'curl' to our prerequisite list. Let me know
> > if
> > > > you have any concern on this. I'll update the Getting Started doc if
> > you
> > > > are OK with this change.
> > > >
> > > > Thanks,
> > > > - Jie
> > > >
> > >
> >
>

Re: Making 'curl' a prerequisite for installing Mesos

Posted by Klaus Ma <kl...@gmail.com>.
+1 to add 'curl' dependency firstly.

----
Da (Klaus), Ma (马达) | PMP® | Advisory Software Engineer
Platform OpenSource Technology, STG, IBM GCG
+86-10-8245 4084 | klaus1982.cn@gmail.com | http://k82.me

On Fri, Mar 4, 2016 at 5:04 AM, Jojy Varghese <jo...@mesosphere.io> wrote:

> +1
>
> On Thu, Mar 3, 2016 at 12:52 PM Jake Farrell <jf...@apache.org> wrote:
>
> > +1
> >
> > -Jake
> >
> > On Thu, Mar 3, 2016 at 12:10 PM, Jie Yu <yu...@gmail.com> wrote:
> >
> > > Hi,
> > >
> > > I am proposing making 'curl' a prerequisite when installing Mesos.
> > > Currently, we require 'libcurl' being present when installing Mesos (
> > > http://mesos.apache.org/gettingstarted/). However, we found that it
> does
> > > not compose well with our asynchronous runtime environment (i.e., it'll
> > > block the current worker thread).
> > >
> > > Recent work on URI fetcher
> > > <https://issues.apache.org/jira/browse/MESOS-3918> uses 'curl'
> directly,
> > > instead of using 'libcurl' to fetch artifacts, because it composes well
> > > with our async runtime env. 'curl' is installed by default in most
> > systems
> > > (e.g., OSX, centos, RHEL).
> > >
> > > So I am proposing adding 'curl' to our prerequisite list. Let me know
> if
> > > you have any concern on this. I'll update the Getting Started doc if
> you
> > > are OK with this change.
> > >
> > > Thanks,
> > > - Jie
> > >
> >
>

Re: Making 'curl' a prerequisite for installing Mesos

Posted by Jojy Varghese <jo...@mesosphere.io>.
+1

On Thu, Mar 3, 2016 at 12:52 PM Jake Farrell <jf...@apache.org> wrote:

> +1
>
> -Jake
>
> On Thu, Mar 3, 2016 at 12:10 PM, Jie Yu <yu...@gmail.com> wrote:
>
> > Hi,
> >
> > I am proposing making 'curl' a prerequisite when installing Mesos.
> > Currently, we require 'libcurl' being present when installing Mesos (
> > http://mesos.apache.org/gettingstarted/). However, we found that it does
> > not compose well with our asynchronous runtime environment (i.e., it'll
> > block the current worker thread).
> >
> > Recent work on URI fetcher
> > <https://issues.apache.org/jira/browse/MESOS-3918> uses 'curl' directly,
> > instead of using 'libcurl' to fetch artifacts, because it composes well
> > with our async runtime env. 'curl' is installed by default in most
> systems
> > (e.g., OSX, centos, RHEL).
> >
> > So I am proposing adding 'curl' to our prerequisite list. Let me know if
> > you have any concern on this. I'll update the Getting Started doc if you
> > are OK with this change.
> >
> > Thanks,
> > - Jie
> >
>

Re: Making 'curl' a prerequisite for installing Mesos

Posted by Jake Farrell <jf...@apache.org>.
+1

-Jake

On Thu, Mar 3, 2016 at 12:10 PM, Jie Yu <yu...@gmail.com> wrote:

> Hi,
>
> I am proposing making 'curl' a prerequisite when installing Mesos.
> Currently, we require 'libcurl' being present when installing Mesos (
> http://mesos.apache.org/gettingstarted/). However, we found that it does
> not compose well with our asynchronous runtime environment (i.e., it'll
> block the current worker thread).
>
> Recent work on URI fetcher
> <https://issues.apache.org/jira/browse/MESOS-3918> uses 'curl' directly,
> instead of using 'libcurl' to fetch artifacts, because it composes well
> with our async runtime env. 'curl' is installed by default in most systems
> (e.g., OSX, centos, RHEL).
>
> So I am proposing adding 'curl' to our prerequisite list. Let me know if
> you have any concern on this. I'll update the Getting Started doc if you
> are OK with this change.
>
> Thanks,
> - Jie
>

Re: Making 'curl' a prerequisite for installing Mesos

Posted by Jake Farrell <jf...@apache.org>.
+1

-Jake

On Thu, Mar 3, 2016 at 12:10 PM, Jie Yu <yu...@gmail.com> wrote:

> Hi,
>
> I am proposing making 'curl' a prerequisite when installing Mesos.
> Currently, we require 'libcurl' being present when installing Mesos (
> http://mesos.apache.org/gettingstarted/). However, we found that it does
> not compose well with our asynchronous runtime environment (i.e., it'll
> block the current worker thread).
>
> Recent work on URI fetcher
> <https://issues.apache.org/jira/browse/MESOS-3918> uses 'curl' directly,
> instead of using 'libcurl' to fetch artifacts, because it composes well
> with our async runtime env. 'curl' is installed by default in most systems
> (e.g., OSX, centos, RHEL).
>
> So I am proposing adding 'curl' to our prerequisite list. Let me know if
> you have any concern on this. I'll update the Getting Started doc if you
> are OK with this change.
>
> Thanks,
> - Jie
>

Re: Making 'curl' a prerequisite for installing Mesos

Posted by Vinod Kone <vi...@apache.org>.
sgtm

On Thu, Mar 3, 2016 at 10:01 AM, Jie Yu <yu...@gmail.com> wrote:

> Neil, thanks for the comments and the pointer!
>
> Just looked at the curl_multi_xxx() API. Yeah, I think we should be able
> to use that API in our async environment.  But we need to hook this with
> our underlying libev/libevent based runtime, which might take a while to
> finish. I'll create a ticket to track.
>
> In the meantime, I want to unblock people from using some of the new
> features built on top of the 'curl' based fetcher. Since this is a pretty
> simple dependency to add, I would suggest that we still proceed adding this
> dependency.
>
> - Jie
>
> On Thu, Mar 3, 2016 at 9:37 AM, Neil Conway <ne...@gmail.com> wrote:
>
>> No objection to about the additional dependency, but using 'curl'
>> instead of 'libcurl' seems unfortunate. Can you share some more
>> detailed information about the problems that have been encountered
>> using libcurl? e.g., was using the curl_multi_xxx() APIs explored?
>>
>> Neil
>>
>> On Thu, Mar 3, 2016 at 9:10 AM, Jie Yu <yu...@gmail.com> wrote:
>> > Hi,
>> >
>> > I am proposing making 'curl' a prerequisite when installing Mesos.
>> > Currently, we require 'libcurl' being present when installing Mesos
>> > (http://mesos.apache.org/gettingstarted/). However, we found that it
>> does
>> > not compose well with our asynchronous runtime environment (i.e., it'll
>> > block the current worker thread).
>> >
>> > Recent work on URI fetcher uses 'curl' directly, instead of using
>> 'libcurl'
>> > to fetch artifacts, because it composes well with our async runtime env.
>> > 'curl' is installed by default in most systems (e.g., OSX, centos,
>> RHEL).
>> >
>> > So I am proposing adding 'curl' to our prerequisite list. Let me know
>> if you
>> > have any concern on this. I'll update the Getting Started doc if you
>> are OK
>> > with this change.
>> >
>> > Thanks,
>> > - Jie
>> >
>>
>
>

Re: Making 'curl' a prerequisite for installing Mesos

Posted by Vinod Kone <vi...@apache.org>.
sgtm

On Thu, Mar 3, 2016 at 10:01 AM, Jie Yu <yu...@gmail.com> wrote:

> Neil, thanks for the comments and the pointer!
>
> Just looked at the curl_multi_xxx() API. Yeah, I think we should be able
> to use that API in our async environment.  But we need to hook this with
> our underlying libev/libevent based runtime, which might take a while to
> finish. I'll create a ticket to track.
>
> In the meantime, I want to unblock people from using some of the new
> features built on top of the 'curl' based fetcher. Since this is a pretty
> simple dependency to add, I would suggest that we still proceed adding this
> dependency.
>
> - Jie
>
> On Thu, Mar 3, 2016 at 9:37 AM, Neil Conway <ne...@gmail.com> wrote:
>
>> No objection to about the additional dependency, but using 'curl'
>> instead of 'libcurl' seems unfortunate. Can you share some more
>> detailed information about the problems that have been encountered
>> using libcurl? e.g., was using the curl_multi_xxx() APIs explored?
>>
>> Neil
>>
>> On Thu, Mar 3, 2016 at 9:10 AM, Jie Yu <yu...@gmail.com> wrote:
>> > Hi,
>> >
>> > I am proposing making 'curl' a prerequisite when installing Mesos.
>> > Currently, we require 'libcurl' being present when installing Mesos
>> > (http://mesos.apache.org/gettingstarted/). However, we found that it
>> does
>> > not compose well with our asynchronous runtime environment (i.e., it'll
>> > block the current worker thread).
>> >
>> > Recent work on URI fetcher uses 'curl' directly, instead of using
>> 'libcurl'
>> > to fetch artifacts, because it composes well with our async runtime env.
>> > 'curl' is installed by default in most systems (e.g., OSX, centos,
>> RHEL).
>> >
>> > So I am proposing adding 'curl' to our prerequisite list. Let me know
>> if you
>> > have any concern on this. I'll update the Getting Started doc if you
>> are OK
>> > with this change.
>> >
>> > Thanks,
>> > - Jie
>> >
>>
>
>

Re: Making 'curl' a prerequisite for installing Mesos

Posted by Jie Yu <yu...@gmail.com>.
Neil, thanks for the comments and the pointer!

Just looked at the curl_multi_xxx() API. Yeah, I think we should be able to
use that API in our async environment.  But we need to hook this with our
underlying libev/libevent based runtime, which might take a while to
finish. I'll create a ticket to track.

In the meantime, I want to unblock people from using some of the new
features built on top of the 'curl' based fetcher. Since this is a pretty
simple dependency to add, I would suggest that we still proceed adding this
dependency.

- Jie

On Thu, Mar 3, 2016 at 9:37 AM, Neil Conway <ne...@gmail.com> wrote:

> No objection to about the additional dependency, but using 'curl'
> instead of 'libcurl' seems unfortunate. Can you share some more
> detailed information about the problems that have been encountered
> using libcurl? e.g., was using the curl_multi_xxx() APIs explored?
>
> Neil
>
> On Thu, Mar 3, 2016 at 9:10 AM, Jie Yu <yu...@gmail.com> wrote:
> > Hi,
> >
> > I am proposing making 'curl' a prerequisite when installing Mesos.
> > Currently, we require 'libcurl' being present when installing Mesos
> > (http://mesos.apache.org/gettingstarted/). However, we found that it
> does
> > not compose well with our asynchronous runtime environment (i.e., it'll
> > block the current worker thread).
> >
> > Recent work on URI fetcher uses 'curl' directly, instead of using
> 'libcurl'
> > to fetch artifacts, because it composes well with our async runtime env.
> > 'curl' is installed by default in most systems (e.g., OSX, centos, RHEL).
> >
> > So I am proposing adding 'curl' to our prerequisite list. Let me know if
> you
> > have any concern on this. I'll update the Getting Started doc if you are
> OK
> > with this change.
> >
> > Thanks,
> > - Jie
> >
>

Re: Making 'curl' a prerequisite for installing Mesos

Posted by Jie Yu <yu...@gmail.com>.
Neil, thanks for the comments and the pointer!

Just looked at the curl_multi_xxx() API. Yeah, I think we should be able to
use that API in our async environment.  But we need to hook this with our
underlying libev/libevent based runtime, which might take a while to
finish. I'll create a ticket to track.

In the meantime, I want to unblock people from using some of the new
features built on top of the 'curl' based fetcher. Since this is a pretty
simple dependency to add, I would suggest that we still proceed adding this
dependency.

- Jie

On Thu, Mar 3, 2016 at 9:37 AM, Neil Conway <ne...@gmail.com> wrote:

> No objection to about the additional dependency, but using 'curl'
> instead of 'libcurl' seems unfortunate. Can you share some more
> detailed information about the problems that have been encountered
> using libcurl? e.g., was using the curl_multi_xxx() APIs explored?
>
> Neil
>
> On Thu, Mar 3, 2016 at 9:10 AM, Jie Yu <yu...@gmail.com> wrote:
> > Hi,
> >
> > I am proposing making 'curl' a prerequisite when installing Mesos.
> > Currently, we require 'libcurl' being present when installing Mesos
> > (http://mesos.apache.org/gettingstarted/). However, we found that it
> does
> > not compose well with our asynchronous runtime environment (i.e., it'll
> > block the current worker thread).
> >
> > Recent work on URI fetcher uses 'curl' directly, instead of using
> 'libcurl'
> > to fetch artifacts, because it composes well with our async runtime env.
> > 'curl' is installed by default in most systems (e.g., OSX, centos, RHEL).
> >
> > So I am proposing adding 'curl' to our prerequisite list. Let me know if
> you
> > have any concern on this. I'll update the Getting Started doc if you are
> OK
> > with this change.
> >
> > Thanks,
> > - Jie
> >
>

Re: Making 'curl' a prerequisite for installing Mesos

Posted by Neil Conway <ne...@gmail.com>.
No objection to about the additional dependency, but using 'curl'
instead of 'libcurl' seems unfortunate. Can you share some more
detailed information about the problems that have been encountered
using libcurl? e.g., was using the curl_multi_xxx() APIs explored?

Neil

On Thu, Mar 3, 2016 at 9:10 AM, Jie Yu <yu...@gmail.com> wrote:
> Hi,
>
> I am proposing making 'curl' a prerequisite when installing Mesos.
> Currently, we require 'libcurl' being present when installing Mesos
> (http://mesos.apache.org/gettingstarted/). However, we found that it does
> not compose well with our asynchronous runtime environment (i.e., it'll
> block the current worker thread).
>
> Recent work on URI fetcher uses 'curl' directly, instead of using 'libcurl'
> to fetch artifacts, because it composes well with our async runtime env.
> 'curl' is installed by default in most systems (e.g., OSX, centos, RHEL).
>
> So I am proposing adding 'curl' to our prerequisite list. Let me know if you
> have any concern on this. I'll update the Getting Started doc if you are OK
> with this change.
>
> Thanks,
> - Jie
>

Re: Making 'curl' a prerequisite for installing Mesos

Posted by Neil Conway <ne...@gmail.com>.
No objection to about the additional dependency, but using 'curl'
instead of 'libcurl' seems unfortunate. Can you share some more
detailed information about the problems that have been encountered
using libcurl? e.g., was using the curl_multi_xxx() APIs explored?

Neil

On Thu, Mar 3, 2016 at 9:10 AM, Jie Yu <yu...@gmail.com> wrote:
> Hi,
>
> I am proposing making 'curl' a prerequisite when installing Mesos.
> Currently, we require 'libcurl' being present when installing Mesos
> (http://mesos.apache.org/gettingstarted/). However, we found that it does
> not compose well with our asynchronous runtime environment (i.e., it'll
> block the current worker thread).
>
> Recent work on URI fetcher uses 'curl' directly, instead of using 'libcurl'
> to fetch artifacts, because it composes well with our async runtime env.
> 'curl' is installed by default in most systems (e.g., OSX, centos, RHEL).
>
> So I am proposing adding 'curl' to our prerequisite list. Let me know if you
> have any concern on this. I'll update the Getting Started doc if you are OK
> with this change.
>
> Thanks,
> - Jie
>

Re: Making 'curl' a prerequisite for installing Mesos

Posted by Bernd Mathiske <be...@mesosphere.io>.
+1

> On Mar 3, 2016, at 6:10 PM, Jie Yu <yu...@gmail.com> wrote:
> 
> Hi,
> 
> I am proposing making 'curl' a prerequisite when installing Mesos. Currently, we require 'libcurl' being present when installing Mesos (http://mesos.apache.org/gettingstarted/ <http://mesos.apache.org/gettingstarted/>). However, we found that it does not compose well with our asynchronous runtime environment (i.e., it'll block the current worker thread).
> 
> Recent work on URI fetcher <https://issues.apache.org/jira/browse/MESOS-3918> uses 'curl' directly, instead of using 'libcurl' to fetch artifacts, because it composes well with our async runtime env. 'curl' is installed by default in most systems (e.g., OSX, centos, RHEL).
> 
> So I am proposing adding 'curl' to our prerequisite list. Let me know if you have any concern on this. I'll update the Getting Started doc if you are OK with this change.
> 
> Thanks,
> - Jie
>