linux-rdma.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH rdma-core] Add a .travis.yml file
@ 2016-09-28 23:28 Jason Gunthorpe
       [not found] ` <1475105337-18002-1-git-send-email-jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
  0 siblings, 1 reply; 10+ messages in thread
From: Jason Gunthorpe @ 2016-09-28 23:28 UTC (permalink / raw)
  To: linux-rdma-u79uwXL29TY76Z2rM5mHXA, Doug Ledford

Necessary to use the Travis CI service.

Signed-off-by: Jason Gunthorpe <jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
---
 .travis.yml | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)
 create mode 100644 .travis.yml

Now that travis is enabled on repo, we need a yml file to make it run.

Here is a basic one.

I don't test with distros as old as precise and I don't expect that glibc to
be new enough to build this (eg missing timerfd, O_CLOEXEC, etc), and the
cmake certainly isn't. So we use the trusty 'beta' environment and install
gcc 6.2.

See it in action:

https://github.com/linux-rdma/rdma-core/pull/7

diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 000000000000..e09dd32ffa9f
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,28 @@
+language: c
+# We need at least cmake 2.12, this means we need to use trusty.
+# Precise's glibc, etc predates what we are willing to support.
+# No reason for sudo.
+sudo: required
+dist: trusty
+addons:
+  apt:
+    sources:
+      - ubuntu-toolchain-r-test
+    packages:
+      - build-essential
+      - cmake
+      - debhelper
+      - gcc
+      - gcc-6
+      - libnl-3-dev
+      - libnl-route-3-dev
+      - make
+      - ninja-build
+      - pkg-config
+      - python
+      - valgrind
+script:
+  - mkdir build
+  - cd build
+  - CC=gcc-6 cmake -GNinja ..
+  - ninja
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH rdma-core] Add a .travis.yml file
       [not found] ` <1475105337-18002-1-git-send-email-jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
@ 2016-09-29 15:20   ` Doug Ledford
       [not found]     ` <57ED3128.4060509-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
  2016-10-05 11:51   ` Leon Romanovsky
  1 sibling, 1 reply; 10+ messages in thread
From: Doug Ledford @ 2016-09-29 15:20 UTC (permalink / raw)
  To: Jason Gunthorpe,
	linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org


[-- Attachment #1.1: Type: text/plain, Size: 933 bytes --]

On 9/28/16 7:28 PM, Jason Gunthorpe wrote:
> Necessary to use the Travis CI service.
> 
> Signed-off-by: Jason Gunthorpe <jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
> ---
>  .travis.yml | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>  create mode 100644 .travis.yml
> 
> Now that travis is enabled on repo, we need a yml file to make it run.
> 
> Here is a basic one.
> 
> I don't test with distros as old as precise and I don't expect that glibc to
> be new enough to build this (eg missing timerfd, O_CLOEXEC, etc), and the
> cmake certainly isn't. So we use the trusty 'beta' environment and install
> gcc 6.2.
> 
> See it in action:
> 
> https://github.com/linux-rdma/rdma-core/pull/7

Merged, thanks.


-- 
Doug Ledford <dledford-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>    GPG Key ID: 0E572FDD
  Red Hat, Inc.
  100 E. Davie St
  Raleigh, NC 27601 USA


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 907 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH rdma-core] Add a .travis.yml file
       [not found]     ` <57ED3128.4060509-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
@ 2016-09-29 16:25       ` Jason Gunthorpe
  0 siblings, 0 replies; 10+ messages in thread
From: Jason Gunthorpe @ 2016-09-29 16:25 UTC (permalink / raw)
  To: Doug Ledford; +Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org

On Thu, Sep 29, 2016 at 11:20:08AM -0400, Doug Ledford wrote:
> > https://github.com/linux-rdma/rdma-core/pull/7
> 
> Merged, thanks.

FWIW, I updated the docker stuff in my preview tree to approximate
what travis does:

docker/do_docker.py pkg travis

Jason
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH rdma-core] Add a .travis.yml file
       [not found] ` <1475105337-18002-1-git-send-email-jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
  2016-09-29 15:20   ` Doug Ledford
@ 2016-10-05 11:51   ` Leon Romanovsky
       [not found]     ` <20161005115132.GE9282-2ukJVAZIZ/Y@public.gmane.org>
  1 sibling, 1 reply; 10+ messages in thread
From: Leon Romanovsky @ 2016-10-05 11:51 UTC (permalink / raw)
  To: Jason Gunthorpe; +Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA, Doug Ledford

[-- Attachment #1: Type: text/plain, Size: 1129 bytes --]

On Wed, Sep 28, 2016 at 05:28:57PM -0600, Jason Gunthorpe wrote:
> Necessary to use the Travis CI service.
>
> Signed-off-by: Jason Gunthorpe <jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
> ---
>  .travis.yml | 28 ++++++++++++++++++++++++++++
>  1 file changed, 28 insertions(+)
>  create mode 100644 .travis.yml
>
> Now that travis is enabled on repo, we need a yml file to make it run.
>
> Here is a basic one.
>
> I don't test with distros as old as precise and I don't expect that glibc to
> be new enough to build this (eg missing timerfd, O_CLOEXEC, etc), and the
> cmake certainly isn't. So we use the trusty 'beta' environment and install
> gcc 6.2.

I'm using 16.04 and it has gcc 5.4.0 as a default. Don't you think that
6.2 is too "new" for us and other distributions?

➜  linux-rdma git:(master) gcc --version
gcc (Ubuntu 5.4.0-6ubuntu1~16.04.2) 5.4.0 20160609
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Thanks

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH rdma-core] Add a .travis.yml file
       [not found]     ` <20161005115132.GE9282-2ukJVAZIZ/Y@public.gmane.org>
@ 2016-10-05 16:32       ` Jason Gunthorpe
       [not found]         ` <20161005163250.GB18636-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
  2016-10-05 16:39       ` Bart Van Assche
  1 sibling, 1 reply; 10+ messages in thread
From: Jason Gunthorpe @ 2016-10-05 16:32 UTC (permalink / raw)
  To: Leon Romanovsky; +Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA, Doug Ledford

On Wed, Oct 05, 2016 at 02:51:32PM +0300, Leon Romanovsky wrote:

> I'm using 16.04 and it has gcc 5.4.0 as a default. Don't you think that
> 6.2 is too "new" for us and other distributions?

I don't understand how a compiler can be too new? The next round of
rolling release distros are likely to use this compiler, and those are
the distros that will first pick to up rdma-core.

> gcc (Ubuntu 5.4.0-6ubuntu1~16.04.2) 5.4.0 20160609

This is exactly why the automatic builds should run the latest
compiler, because people are not going to install it on their desktop.

People will test with older compilers on their own. If we want to run
automatic tests from travis with old compilers we can, but my results
basically show that older compilers are just buggy and produce
incorrect warnings.

Jason
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH rdma-core] Add a .travis.yml file
       [not found]     ` <20161005115132.GE9282-2ukJVAZIZ/Y@public.gmane.org>
  2016-10-05 16:32       ` Jason Gunthorpe
@ 2016-10-05 16:39       ` Bart Van Assche
       [not found]         ` <0de7bc15-5e2e-8240-ba84-a5a95dcb2834-XdAiOPVOjttBDgjK7y7TUQ@public.gmane.org>
  1 sibling, 1 reply; 10+ messages in thread
From: Bart Van Assche @ 2016-10-05 16:39 UTC (permalink / raw)
  To: Leon Romanovsky, Jason Gunthorpe
  Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA, Doug Ledford

On 10/05/2016 04:51 AM, Leon Romanovsky wrote:
> On Wed, Sep 28, 2016 at 05:28:57PM -0600, Jason Gunthorpe wrote:
>> Necessary to use the Travis CI service.
>>
>> Signed-off-by: Jason Gunthorpe <jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
>> ---
>>  .travis.yml | 28 ++++++++++++++++++++++++++++
>>  1 file changed, 28 insertions(+)
>>  create mode 100644 .travis.yml
>>
>> Now that travis is enabled on repo, we need a yml file to make it run.
>>
>> Here is a basic one.
>>
>> I don't test with distros as old as precise and I don't expect that glibc to
>> be new enough to build this (eg missing timerfd, O_CLOEXEC, etc), and the
>> cmake certainly isn't. So we use the trusty 'beta' environment and install
>> gcc 6.2.
>
> I'm using 16.04 and it has gcc 5.4.0 as a default. Don't you think that
> 6.2 is too "new" for us and other distributions?

Hi Leon,

The rolling release distro that is running on my laptop includes gcc 6.2.1.

Bart.
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH rdma-core] Add a .travis.yml file
       [not found]         ` <20161005163250.GB18636-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
@ 2016-10-06  4:53           ` Leon Romanovsky
       [not found]             ` <20161006045337.GK9282-2ukJVAZIZ/Y@public.gmane.org>
  0 siblings, 1 reply; 10+ messages in thread
From: Leon Romanovsky @ 2016-10-06  4:53 UTC (permalink / raw)
  To: Jason Gunthorpe; +Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA, Doug Ledford

[-- Attachment #1: Type: text/plain, Size: 1145 bytes --]

On Wed, Oct 05, 2016 at 10:32:50AM -0600, Jason Gunthorpe wrote:
> On Wed, Oct 05, 2016 at 02:51:32PM +0300, Leon Romanovsky wrote:
>
> > I'm using 16.04 and it has gcc 5.4.0 as a default. Don't you think that
> > 6.2 is too "new" for us and other distributions?
>
> I don't understand how a compiler can be too new? The next round of
> rolling release distros are likely to use this compiler, and those are
> the distros that will first pick to up rdma-core.

I have an issue in front of my eyes where kernel fails to build with old
gcc version, while new gcc version works.

I don't want the same situation here.

>
> > gcc (Ubuntu 5.4.0-6ubuntu1~16.04.2) 5.4.0 20160609
>
> This is exactly why the automatic builds should run the latest
> compiler, because people are not going to install it on their desktop.
>
> People will test with older compilers on their own. If we want to run
> automatic tests from travis with old compilers we can, but my results
> basically show that older compilers are just buggy and produce
> incorrect warnings.

My experience shows the same, however I want to minimize the test burden
on the users.

>
> Jason

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH rdma-core] Add a .travis.yml file
       [not found]         ` <0de7bc15-5e2e-8240-ba84-a5a95dcb2834-XdAiOPVOjttBDgjK7y7TUQ@public.gmane.org>
@ 2016-10-06  4:58           ` Leon Romanovsky
  0 siblings, 0 replies; 10+ messages in thread
From: Leon Romanovsky @ 2016-10-06  4:58 UTC (permalink / raw)
  To: Bart Van Assche
  Cc: Jason Gunthorpe, linux-rdma-u79uwXL29TY76Z2rM5mHXA, Doug Ledford

[-- Attachment #1: Type: text/plain, Size: 1464 bytes --]

On Wed, Oct 05, 2016 at 09:39:42AM -0700, Bart Van Assche wrote:
> On 10/05/2016 04:51 AM, Leon Romanovsky wrote:
> >On Wed, Sep 28, 2016 at 05:28:57PM -0600, Jason Gunthorpe wrote:
> >>Necessary to use the Travis CI service.
> >>
> >>Signed-off-by: Jason Gunthorpe <jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
> >>---
> >> .travis.yml | 28 ++++++++++++++++++++++++++++
> >> 1 file changed, 28 insertions(+)
> >> create mode 100644 .travis.yml
> >>
> >>Now that travis is enabled on repo, we need a yml file to make it run.
> >>
> >>Here is a basic one.
> >>
> >>I don't test with distros as old as precise and I don't expect that glibc to
> >>be new enough to build this (eg missing timerfd, O_CLOEXEC, etc), and the
> >>cmake certainly isn't. So we use the trusty 'beta' environment and install
> >>gcc 6.2.
> >
> >I'm using 16.04 and it has gcc 5.4.0 as a default. Don't you think that
> >6.2 is too "new" for us and other distributions?
>
> Hi Leon,
>
> The rolling release distro that is running on my laptop includes gcc 6.2.1.

I'm not sure if there are many users of this bundle who are running
rolling distros.

Anyway, let's start from the simple (one, latest gcc) and increase
complexity later on.

>
> Bart.
> --
> To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
> the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH rdma-core] Add a .travis.yml file
       [not found]             ` <20161006045337.GK9282-2ukJVAZIZ/Y@public.gmane.org>
@ 2016-10-06 16:10               ` Jason Gunthorpe
       [not found]                 ` <20161006161009.GE1224-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
  0 siblings, 1 reply; 10+ messages in thread
From: Jason Gunthorpe @ 2016-10-06 16:10 UTC (permalink / raw)
  To: Leon Romanovsky; +Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA, Doug Ledford

On Thu, Oct 06, 2016 at 07:53:37AM +0300, Leon Romanovsky wrote:

> > I don't understand how a compiler can be too new? The next round of
> > rolling release distros are likely to use this compiler, and those are
> > the distros that will first pick to up rdma-core.
> 
> I have an issue in front of my eyes where kernel fails to build with old
> gcc version, while new gcc version works.

Heh, last week I had the opposite..

> My experience shows the same, however I want to minimize the test burden
> on the users.

IMHO, it is more valuable to run a build on the full distro stack than
to try and inject old compiler variations into travis. Old system
libraries are just as likely to fail a build as the compiler.

I don't have any way to do that automatically. IMHO Travis is not able to
handle that sort of workload.

Perhaps a pre-release pass through OBS or something like it is the answer here?

Jason
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH rdma-core] Add a .travis.yml file
       [not found]                 ` <20161006161009.GE1224-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
@ 2016-10-06 17:52                   ` Leon Romanovsky
  0 siblings, 0 replies; 10+ messages in thread
From: Leon Romanovsky @ 2016-10-06 17:52 UTC (permalink / raw)
  To: Jason Gunthorpe; +Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA, Doug Ledford

[-- Attachment #1: Type: text/plain, Size: 1065 bytes --]

On Thu, Oct 06, 2016 at 10:10:09AM -0600, Jason Gunthorpe wrote:
> On Thu, Oct 06, 2016 at 07:53:37AM +0300, Leon Romanovsky wrote:
>
> > > I don't understand how a compiler can be too new? The next round of
> > > rolling release distros are likely to use this compiler, and those are
> > > the distros that will first pick to up rdma-core.
> >
> > I have an issue in front of my eyes where kernel fails to build with old
> > gcc version, while new gcc version works.
>
> Heh, last week I had the opposite..
>
> > My experience shows the same, however I want to minimize the test burden
> > on the users.
>
> IMHO, it is more valuable to run a build on the full distro stack than
> to try and inject old compiler variations into travis. Old system
> libraries are just as likely to fail a build as the compiler.
>
> I don't have any way to do that automatically. IMHO Travis is not able to
> handle that sort of workload.
>
> Perhaps a pre-release pass through OBS or something like it is the answer here?

Yeah,
Let's start simple and sort it later on.

>
> Jason

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2016-10-06 17:52 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-28 23:28 [PATCH rdma-core] Add a .travis.yml file Jason Gunthorpe
     [not found] ` <1475105337-18002-1-git-send-email-jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-09-29 15:20   ` Doug Ledford
     [not found]     ` <57ED3128.4060509-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2016-09-29 16:25       ` Jason Gunthorpe
2016-10-05 11:51   ` Leon Romanovsky
     [not found]     ` <20161005115132.GE9282-2ukJVAZIZ/Y@public.gmane.org>
2016-10-05 16:32       ` Jason Gunthorpe
     [not found]         ` <20161005163250.GB18636-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-10-06  4:53           ` Leon Romanovsky
     [not found]             ` <20161006045337.GK9282-2ukJVAZIZ/Y@public.gmane.org>
2016-10-06 16:10               ` Jason Gunthorpe
     [not found]                 ` <20161006161009.GE1224-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-10-06 17:52                   ` Leon Romanovsky
2016-10-05 16:39       ` Bart Van Assche
     [not found]         ` <0de7bc15-5e2e-8240-ba84-a5a95dcb2834-XdAiOPVOjttBDgjK7y7TUQ@public.gmane.org>
2016-10-06  4:58           ` Leon Romanovsky

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).