Re: [ovs-dev] [RFC] cirrus: Add Cirrus CI integration for FreeBSD build
> -Mesaj original- > De la: ovs-dev-boun...@openvswitch.org boun...@openvswitch.org> În numele Ilya Maximets > Trimis: Wednesday, December 12, 2018 6:59 PM > Către: aserd...@ovn.org; 'Ben Pfaff' > Cc: ovs-dev@openvswitch.org > Subiect: Re: [ovs-dev] [RFC] cirrus: Add Cirrus CI integration for FreeBSD build > > On 12.12.2018 19:50, aserd...@ovn.org wrote: > >> -Mesaj original- > >> De la: ovs-dev-boun...@openvswitch.org >> boun...@openvswitch.org> În numele Ilya Maximets > >> Trimis: Wednesday, December 12, 2018 6:36 PM > >> Către: Ben Pfaff > >> Cc: ovs-dev@openvswitch.org; Alin Gabriel Serdean > > >> Subiect: Re: [ovs-dev] [RFC] cirrus: Add Cirrus CI integration for > >> FreeBSD > > build > >> > >> On 12.12.2018 19:24, Ben Pfaff wrote: > >>> On Wed, Dec 12, 2018 at 07:00:28PM +0300, Ilya Maximets wrote: > >>>> On 12.12.2018 0:06, Ben Pfaff wrote: > >>>>> On Tue, Dec 11, 2018 at 05:34:17PM +0300, Ilya Maximets wrote: > >>>>>> CirrusCI [1] is free for open-sorce projects and provides similar > >>>>>> to TravisCI interfaces. One significant difference is ability to > >>>>>> run tasks on FreeBSD instances. > >>>>>> > >>>>>> This patch adds simple configuration file to test OVS build on > >>>>>> two FreeBSD releases with gcc and clang. > >>>>>> Unit tests are commented out because they are broken for now. > >>>>>> > >>>>>> To enable the automated checks Cirrus CI application from GitHub > >>>>>> Marketplace should be installed. See details in Quick Start guide > > [2]. > >>>>>> > >>>>>> [1] https://cirrus-ci.org > >>>>>> [2] https://cirrus-ci.org/guide/quick-start/ > >>>>>> > >>>>>> Signed-off-by: Ilya Maximets > >>>>>> --- > >>>>>> > >>>>>> This could be useful to test FreeBSD build automatically to early > >>>>>> detect issues. CirrusCI looks suitable for that purpose and it's > >>>>>> the only public CI system that I managed to find that supports > >>>>>> FreeBSD images. Sending as RFC to start discussion. > >>>>>> > >>>>>> Few more differentiation points with Travis. Cirrus allows to > >>>>>> configure number of CPUs and the amount of required memory. It > >>>>>> also supports Linux, OSX and Windows containers. So, maybe, if > >>>>>> we'll like it, we could drop Travis and AppVeyor and use single > >>>>>> CI system for all the tests. > >>>>>> > >>>>>> I'm not advertising and not trying to convince to replace our > >>>>>> current CI systems. I found CirrusCI just few days ago by a mail > >>>>>> [3] in qemu-devel list. I just think that it's the only option > >>>>>> for now to test BSD builds with public CI. And it worked fine for > >>>>>> me with below configuration. > >>>>>> > >>>>>> Thoughts ? > >>>>>> > >>>>>> As a note: I just spotted that TravisCI adds windows support. > >>>>>> Maybe we could use it in the future for windows builds. > >>>>>> > >>>>>> [3] > >>>>>> https://lists.nongnu.org/archive/html/qemu-devel/2018- > >> 12/msg00935.h > >>>>>> tml > >>>>> > >>>>> Good idea. It's hard for me to see what harm this would cause, so > >>>>> I enabled cirrus-ci at github and applied this to master. > >>>>> > >>>>> The big weakness with appveyor is that its limits are too low to > >>>>> run the whole OVS testsuite. I wonder whether cirrus-ci has > >>>>> better limits for this purpose. > >>>> > >>>> As far as I know, the upper limit for resources is 8CPU + 24GB RAM. > >>>> Default timeout for tasks is 60 minutes and it, probably, could be > >>>> extended using special config in .yml file. > >>> > >>> I think that the issue with appveyor is the time limit of 60 minutes. > >>> If cirrus-ci can allow for a longer build time, it would probably > >>> make a big difference. > >> > >> There is a field 'timeout_in' in .cirrus.yml that could be used to > >> extend > > the > >> time limit: > >> https://cirrus-ci.org/faq/#instance-timed-out > >> > >> We could try it out. > >> > >> It'll be better if someone with "OVS on Windows" experience could > >> look at this. > > > > Sorry for the delay. > > > > I'll play a bit with it tonight and send out updates. > > Cool. Thanks. > > I just wanted to mention that even without extending the timeout we can > just split the test suite into separate tasks like this: > > env: > matrix: > TESTSUITEFLAGS: -1000 > TESTSUITEFLAGS: 1001-2000 > TESTSUITEFLAGS: 2001- > > check_script: > - make -j8 check TESTSUITEFLAGS="-j8 $TESTSUITEFLAGS" > > And each of three tasks will have its own 60 minutes limit. > This could help if the testsuite is the main time consuming issue. Thanks a lot for the pointers! ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [RFC] cirrus: Add Cirrus CI integration for FreeBSD build
On 12.12.2018 19:50, aserd...@ovn.org wrote: >> -Mesaj original- >> De la: ovs-dev-boun...@openvswitch.org > boun...@openvswitch.org> În numele Ilya Maximets >> Trimis: Wednesday, December 12, 2018 6:36 PM >> Către: Ben Pfaff >> Cc: ovs-dev@openvswitch.org; Alin Gabriel Serdean >> Subiect: Re: [ovs-dev] [RFC] cirrus: Add Cirrus CI integration for FreeBSD > build >> >> On 12.12.2018 19:24, Ben Pfaff wrote: >>> On Wed, Dec 12, 2018 at 07:00:28PM +0300, Ilya Maximets wrote: >>>> On 12.12.2018 0:06, Ben Pfaff wrote: >>>>> On Tue, Dec 11, 2018 at 05:34:17PM +0300, Ilya Maximets wrote: >>>>>> CirrusCI [1] is free for open-sorce projects and provides similar >>>>>> to TravisCI interfaces. One significant difference is ability to >>>>>> run tasks on FreeBSD instances. >>>>>> >>>>>> This patch adds simple configuration file to test OVS build on two >>>>>> FreeBSD releases with gcc and clang. >>>>>> Unit tests are commented out because they are broken for now. >>>>>> >>>>>> To enable the automated checks Cirrus CI application from GitHub >>>>>> Marketplace should be installed. See details in Quick Start guide > [2]. >>>>>> >>>>>> [1] https://cirrus-ci.org >>>>>> [2] https://cirrus-ci.org/guide/quick-start/ >>>>>> >>>>>> Signed-off-by: Ilya Maximets >>>>>> --- >>>>>> >>>>>> This could be useful to test FreeBSD build automatically to early >>>>>> detect issues. CirrusCI looks suitable for that purpose and it's >>>>>> the only public CI system that I managed to find that supports >>>>>> FreeBSD images. Sending as RFC to start discussion. >>>>>> >>>>>> Few more differentiation points with Travis. Cirrus allows to >>>>>> configure number of CPUs and the amount of required memory. It also >>>>>> supports Linux, OSX and Windows containers. So, maybe, if we'll >>>>>> like it, we could drop Travis and AppVeyor and use single CI system >>>>>> for all the tests. >>>>>> >>>>>> I'm not advertising and not trying to convince to replace our >>>>>> current CI systems. I found CirrusCI just few days ago by a mail >>>>>> [3] in qemu-devel list. I just think that it's the only option for >>>>>> now to test BSD builds with public CI. And it worked fine for me >>>>>> with below configuration. >>>>>> >>>>>> Thoughts ? >>>>>> >>>>>> As a note: I just spotted that TravisCI adds windows support. >>>>>> Maybe we could use it in the future for windows builds. >>>>>> >>>>>> [3] >>>>>> https://lists.nongnu.org/archive/html/qemu-devel/2018- >> 12/msg00935.h >>>>>> tml >>>>> >>>>> Good idea. It's hard for me to see what harm this would cause, so I >>>>> enabled cirrus-ci at github and applied this to master. >>>>> >>>>> The big weakness with appveyor is that its limits are too low to run >>>>> the whole OVS testsuite. I wonder whether cirrus-ci has better >>>>> limits for this purpose. >>>> >>>> As far as I know, the upper limit for resources is 8CPU + 24GB RAM. >>>> Default timeout for tasks is 60 minutes and it, probably, could be >>>> extended using special config in .yml file. >>> >>> I think that the issue with appveyor is the time limit of 60 minutes. >>> If cirrus-ci can allow for a longer build time, it would probably make >>> a big difference. >> >> There is a field 'timeout_in' in .cirrus.yml that could be used to extend > the >> time limit: >> https://cirrus-ci.org/faq/#instance-timed-out >> >> We could try it out. >> >> It'll be better if someone with "OVS on Windows" experience could look at >> this. > > Sorry for the delay. > > I'll play a bit with it tonight and send out updates. Cool. Thanks. I just wanted to mention that even without extending the timeout we can just split the test suite into separate tasks like this: env: matrix: TESTSUITEFLAGS: -1000 TESTSUITEFLAGS: 1001-2000 TESTSUITEFLAGS: 2001- check_script: - make -j8 check TESTSUITEFLAGS="-j8 $TESTSUITEFLAGS" And each of three tasks will have its own 60 minutes limit. This could help if the testsuite is the main time consuming issue. ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [RFC] cirrus: Add Cirrus CI integration for FreeBSD build
> -Mesaj original- > De la: ovs-dev-boun...@openvswitch.org boun...@openvswitch.org> În numele Ilya Maximets > Trimis: Wednesday, December 12, 2018 6:36 PM > Către: Ben Pfaff > Cc: ovs-dev@openvswitch.org; Alin Gabriel Serdean > Subiect: Re: [ovs-dev] [RFC] cirrus: Add Cirrus CI integration for FreeBSD build > > On 12.12.2018 19:24, Ben Pfaff wrote: > > On Wed, Dec 12, 2018 at 07:00:28PM +0300, Ilya Maximets wrote: > >> On 12.12.2018 0:06, Ben Pfaff wrote: > >>> On Tue, Dec 11, 2018 at 05:34:17PM +0300, Ilya Maximets wrote: > >>>> CirrusCI [1] is free for open-sorce projects and provides similar > >>>> to TravisCI interfaces. One significant difference is ability to > >>>> run tasks on FreeBSD instances. > >>>> > >>>> This patch adds simple configuration file to test OVS build on two > >>>> FreeBSD releases with gcc and clang. > >>>> Unit tests are commented out because they are broken for now. > >>>> > >>>> To enable the automated checks Cirrus CI application from GitHub > >>>> Marketplace should be installed. See details in Quick Start guide [2]. > >>>> > >>>> [1] https://cirrus-ci.org > >>>> [2] https://cirrus-ci.org/guide/quick-start/ > >>>> > >>>> Signed-off-by: Ilya Maximets > >>>> --- > >>>> > >>>> This could be useful to test FreeBSD build automatically to early > >>>> detect issues. CirrusCI looks suitable for that purpose and it's > >>>> the only public CI system that I managed to find that supports > >>>> FreeBSD images. Sending as RFC to start discussion. > >>>> > >>>> Few more differentiation points with Travis. Cirrus allows to > >>>> configure number of CPUs and the amount of required memory. It also > >>>> supports Linux, OSX and Windows containers. So, maybe, if we'll > >>>> like it, we could drop Travis and AppVeyor and use single CI system > >>>> for all the tests. > >>>> > >>>> I'm not advertising and not trying to convince to replace our > >>>> current CI systems. I found CirrusCI just few days ago by a mail > >>>> [3] in qemu-devel list. I just think that it's the only option for > >>>> now to test BSD builds with public CI. And it worked fine for me > >>>> with below configuration. > >>>> > >>>> Thoughts ? > >>>> > >>>> As a note: I just spotted that TravisCI adds windows support. > >>>> Maybe we could use it in the future for windows builds. > >>>> > >>>> [3] > >>>> https://lists.nongnu.org/archive/html/qemu-devel/2018- > 12/msg00935.h > >>>> tml > >>> > >>> Good idea. It's hard for me to see what harm this would cause, so I > >>> enabled cirrus-ci at github and applied this to master. > >>> > >>> The big weakness with appveyor is that its limits are too low to run > >>> the whole OVS testsuite. I wonder whether cirrus-ci has better > >>> limits for this purpose. > >> > >> As far as I know, the upper limit for resources is 8CPU + 24GB RAM. > >> Default timeout for tasks is 60 minutes and it, probably, could be > >> extended using special config in .yml file. > > > > I think that the issue with appveyor is the time limit of 60 minutes. > > If cirrus-ci can allow for a longer build time, it would probably make > > a big difference. > > There is a field 'timeout_in' in .cirrus.yml that could be used to extend the > time limit: > https://cirrus-ci.org/faq/#instance-timed-out > > We could try it out. > > It'll be better if someone with "OVS on Windows" experience could look at > this. Sorry for the delay. I'll play a bit with it tonight and send out updates. ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [RFC] cirrus: Add Cirrus CI integration for FreeBSD build
On 12.12.2018 19:24, Ben Pfaff wrote: > On Wed, Dec 12, 2018 at 07:00:28PM +0300, Ilya Maximets wrote: >> On 12.12.2018 0:06, Ben Pfaff wrote: >>> On Tue, Dec 11, 2018 at 05:34:17PM +0300, Ilya Maximets wrote: CirrusCI [1] is free for open-sorce projects and provides similar to TravisCI interfaces. One significant difference is ability to run tasks on FreeBSD instances. This patch adds simple configuration file to test OVS build on two FreeBSD releases with gcc and clang. Unit tests are commented out because they are broken for now. To enable the automated checks Cirrus CI application from GitHub Marketplace should be installed. See details in Quick Start guide [2]. [1] https://cirrus-ci.org [2] https://cirrus-ci.org/guide/quick-start/ Signed-off-by: Ilya Maximets --- This could be useful to test FreeBSD build automatically to early detect issues. CirrusCI looks suitable for that purpose and it's the only public CI system that I managed to find that supports FreeBSD images. Sending as RFC to start discussion. Few more differentiation points with Travis. Cirrus allows to configure number of CPUs and the amount of required memory. It also supports Linux, OSX and Windows containers. So, maybe, if we'll like it, we could drop Travis and AppVeyor and use single CI system for all the tests. I'm not advertising and not trying to convince to replace our current CI systems. I found CirrusCI just few days ago by a mail [3] in qemu-devel list. I just think that it's the only option for now to test BSD builds with public CI. And it worked fine for me with below configuration. Thoughts ? As a note: I just spotted that TravisCI adds windows support. Maybe we could use it in the future for windows builds. [3] https://lists.nongnu.org/archive/html/qemu-devel/2018-12/msg00935.html >>> >>> Good idea. It's hard for me to see what harm this would cause, so I >>> enabled cirrus-ci at github and applied this to master. >>> >>> The big weakness with appveyor is that its limits are too low to run the >>> whole OVS testsuite. I wonder whether cirrus-ci has better limits for >>> this purpose. >> >> As far as I know, the upper limit for resources is 8CPU + 24GB RAM. Default >> timeout for tasks is 60 minutes and it, probably, could be extended using >> special config in .yml file. > > I think that the issue with appveyor is the time limit of 60 minutes. > If cirrus-ci can allow for a longer build time, it would probably make a > big difference. There is a field 'timeout_in' in .cirrus.yml that could be used to extend the time limit: https://cirrus-ci.org/faq/#instance-timed-out We could try it out. It'll be better if someone with "OVS on Windows" experience could look at this. ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [RFC] cirrus: Add Cirrus CI integration for FreeBSD build
On Wed, Dec 12, 2018 at 07:00:28PM +0300, Ilya Maximets wrote: > On 12.12.2018 0:06, Ben Pfaff wrote: > > On Tue, Dec 11, 2018 at 05:34:17PM +0300, Ilya Maximets wrote: > >> CirrusCI [1] is free for open-sorce projects and provides similar > >> to TravisCI interfaces. One significant difference is ability > >> to run tasks on FreeBSD instances. > >> > >> This patch adds simple configuration file to test OVS build > >> on two FreeBSD releases with gcc and clang. > >> Unit tests are commented out because they are broken for now. > >> > >> To enable the automated checks Cirrus CI application from GitHub > >> Marketplace should be installed. See details in Quick Start guide [2]. > >> > >> [1] https://cirrus-ci.org > >> [2] https://cirrus-ci.org/guide/quick-start/ > >> > >> Signed-off-by: Ilya Maximets > >> --- > >> > >> This could be useful to test FreeBSD build automatically to early > >> detect issues. CirrusCI looks suitable for that purpose and it's > >> the only public CI system that I managed to find that supports > >> FreeBSD images. Sending as RFC to start discussion. > >> > >> Few more differentiation points with Travis. Cirrus allows to > >> configure number of CPUs and the amount of required memory. It > >> also supports Linux, OSX and Windows containers. So, maybe, if > >> we'll like it, we could drop Travis and AppVeyor and use single > >> CI system for all the tests. > >> > >> I'm not advertising and not trying to convince to replace our > >> current CI systems. I found CirrusCI just few days ago by a mail [3] > >> in qemu-devel list. I just think that it's the only option for > >> now to test BSD builds with public CI. And it worked fine for me > >> with below configuration. > >> > >> Thoughts ? > >> > >> As a note: I just spotted that TravisCI adds windows support. > >> Maybe we could use it in the future for windows builds. > >> > >> [3] https://lists.nongnu.org/archive/html/qemu-devel/2018-12/msg00935.html > > > > Good idea. It's hard for me to see what harm this would cause, so I > > enabled cirrus-ci at github and applied this to master. > > > > The big weakness with appveyor is that its limits are too low to run the > > whole OVS testsuite. I wonder whether cirrus-ci has better limits for > > this purpose. > > As far as I know, the upper limit for resources is 8CPU + 24GB RAM. Default > timeout for tasks is 60 minutes and it, probably, could be extended using > special config in .yml file. I think that the issue with appveyor is the time limit of 60 minutes. If cirrus-ci can allow for a longer build time, it would probably make a big difference. ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [RFC] cirrus: Add Cirrus CI integration for FreeBSD build
On 11.12.2018 21:25, Aaron Conole wrote: > Ilya Maximets writes: > >> CirrusCI [1] is free for open-sorce projects and provides similar >> to TravisCI interfaces. One significant difference is ability >> to run tasks on FreeBSD instances. >> >> This patch adds simple configuration file to test OVS build >> on two FreeBSD releases with gcc and clang. >> Unit tests are commented out because they are broken for now. >> >> To enable the automated checks Cirrus CI application from GitHub >> Marketplace should be installed. See details in Quick Start guide [2]. >> >> [1] https://cirrus-ci.org >> [2] https://cirrus-ci.org/guide/quick-start/ >> >> Signed-off-by: Ilya Maximets >> --- >> >> This could be useful to test FreeBSD build automatically to early >> detect issues. CirrusCI looks suitable for that purpose and it's >> the only public CI system that I managed to find that supports >> FreeBSD images. Sending as RFC to start discussion. > > Awesome find. Thanks, Ilya! > >> Few more differentiation points with Travis. Cirrus allows to >> configure number of CPUs and the amount of required memory. It >> also supports Linux, OSX and Windows containers. So, maybe, if >> we'll like it, we could drop Travis and AppVeyor and use single >> CI system for all the tests. >> >> I'm not advertising and not trying to convince to replace our >> current CI systems. I found CirrusCI just few days ago by a mail [3] >> in qemu-devel list. I just think that it's the only option for >> now to test BSD builds with public CI. And it worked fine for me >> with below configuration. >> >> Thoughts ? > > I'm not married to technology for a reason :) If it seems better, then > it is worth checking out. I can play around with it a little bit, but > I'll be AFK until Jan, so it might be better for someone else who has > the recent time to take a look. > > One thing I really find painful with Travis is the difficulty running > the alternate test suites (make check-*). Travis can run them, but we > need to request privileged containers, and that will add to the build > time. Not sure if there's some kind of custom privilege support from > Cirrus that would let us run the alternate test suites - or even let us > run them by requesting privileges. Didn't find any information about privileges in CirrusCI docs. Maybe we need to try and find out the real restrictions. > > Another thing I'm not sure about is the polling. At least Travis does > have a RESTful API that we can poll with. I hope the CirrusCI system > would as well. Currently, I am looking into getting the robot to poll > the Travis system and respond to a series if there is a problem. Did you thought about using github webhooks for 'Check suite' events? They will be independent from the exact CI system. > >> As a note: I just spotted that TravisCI adds windows support. >> Maybe we could use it in the future for windows builds. >> >> [3] https://lists.nongnu.org/archive/html/qemu-devel/2018-12/msg00935.html >> >> .cirrus.yml | 30 ++ >> Makefile.am | 1 + >> 2 files changed, 31 insertions(+) >> create mode 100644 .cirrus.yml >> >> diff --git a/.cirrus.yml b/.cirrus.yml >> new file mode 100644 >> index 0..4902fd370 >> --- /dev/null >> +++ b/.cirrus.yml >> @@ -0,0 +1,30 @@ >> +freebsd_build_task: >> + >> + freebsd_instance: >> +matrix: >> + image: freebsd-12-0-release-amd64 >> + image: freebsd-11-2-release-amd64 >> +cpu: 4 >> +memory: 8G >> + >> + env: >> +matrix: >> + COMPILER: gcc >> + COMPILER: clang >> + >> + prepare_script: >> +- pkg install -y automake libtool gmake gcc wget >> + python py27-six py27-sphinx >> + >> + configure_script: >> +- ./boot.sh >> +- ./configure CC=$COMPILER MAKE=gmake OVS_CFLAGS='-Wall' --enable-Werror >> + || { cat config.log; exit 1; } >> + >> + build_script: >> +- gmake -j8 >> + >> +# TODO(i.maximets): Uncomment the test suite execution when it is fixed. >> +# check_script: >> +#- gmake -j8 check TESTSUITEFLAGS=-j8 RECHECK=yes >> +#|| { cat ./tests/testsuite.log; exit 1; } >> diff --git a/Makefile.am b/Makefile.am >> index 64725654c..8408509c9 100644 >> --- a/Makefile.am >> +++ b/Makefile.am >> @@ -76,6 +76,7 @@ EXTRA_DIST = \ >> MAINTAINERS.rst \ >> README.rst \ >> NOTICE \ >> +.cirrus.yml \ >> .travis.yml \ >> .travis/linux-build.sh \ >> .travis/linux-prepare.sh \ > > ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [RFC] cirrus: Add Cirrus CI integration for FreeBSD build
On 12.12.2018 0:06, Ben Pfaff wrote: > On Tue, Dec 11, 2018 at 05:34:17PM +0300, Ilya Maximets wrote: >> CirrusCI [1] is free for open-sorce projects and provides similar >> to TravisCI interfaces. One significant difference is ability >> to run tasks on FreeBSD instances. >> >> This patch adds simple configuration file to test OVS build >> on two FreeBSD releases with gcc and clang. >> Unit tests are commented out because they are broken for now. >> >> To enable the automated checks Cirrus CI application from GitHub >> Marketplace should be installed. See details in Quick Start guide [2]. >> >> [1] https://cirrus-ci.org >> [2] https://cirrus-ci.org/guide/quick-start/ >> >> Signed-off-by: Ilya Maximets >> --- >> >> This could be useful to test FreeBSD build automatically to early >> detect issues. CirrusCI looks suitable for that purpose and it's >> the only public CI system that I managed to find that supports >> FreeBSD images. Sending as RFC to start discussion. >> >> Few more differentiation points with Travis. Cirrus allows to >> configure number of CPUs and the amount of required memory. It >> also supports Linux, OSX and Windows containers. So, maybe, if >> we'll like it, we could drop Travis and AppVeyor and use single >> CI system for all the tests. >> >> I'm not advertising and not trying to convince to replace our >> current CI systems. I found CirrusCI just few days ago by a mail [3] >> in qemu-devel list. I just think that it's the only option for >> now to test BSD builds with public CI. And it worked fine for me >> with below configuration. >> >> Thoughts ? >> >> As a note: I just spotted that TravisCI adds windows support. >> Maybe we could use it in the future for windows builds. >> >> [3] https://lists.nongnu.org/archive/html/qemu-devel/2018-12/msg00935.html > > Good idea. It's hard for me to see what harm this would cause, so I > enabled cirrus-ci at github and applied this to master. > > The big weakness with appveyor is that its limits are too low to run the > whole OVS testsuite. I wonder whether cirrus-ci has better limits for > this purpose. As far as I know, the upper limit for resources is 8CPU + 24GB RAM. Default timeout for tasks is 60 minutes and it, probably, could be extended using special config in .yml file. ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [RFC] cirrus: Add Cirrus CI integration for FreeBSD build
On Tue, 11 Dec 2018 13:06:36 -0800, Ben Pfaff wrote: > On Tue, Dec 11, 2018 at 05:34:17PM +0300, Ilya Maximets wrote: >> CirrusCI [1] is free for open-sorce projects and provides similar >> to TravisCI interfaces. One significant difference is ability >> to run tasks on FreeBSD instances. >> >> This patch adds simple configuration file to test OVS build >> on two FreeBSD releases with gcc and clang. >> Unit tests are commented out because they are broken for now. >> >> To enable the automated checks Cirrus CI application from GitHub >> Marketplace should be installed. See details in Quick Start guide [2]. >> >> [1] https://cirrus-ci.org >> [2] https://cirrus-ci.org/guide/quick-start/ >> >> Signed-off-by: Ilya Maximets >> --- >> >> This could be useful to test FreeBSD build automatically to early >> detect issues. CirrusCI looks suitable for that purpose and it's >> the only public CI system that I managed to find that supports >> FreeBSD images. Sending as RFC to start discussion. >> >> Few more differentiation points with Travis. Cirrus allows to >> configure number of CPUs and the amount of required memory. It >> also supports Linux, OSX and Windows containers. So, maybe, if >> we'll like it, we could drop Travis and AppVeyor and use single >> CI system for all the tests. >> >> I'm not advertising and not trying to convince to replace our >> current CI systems. I found CirrusCI just few days ago by a mail [3] >> in qemu-devel list. I just think that it's the only option for >> now to test BSD builds with public CI. And it worked fine for me >> with below configuration. >> >> Thoughts ? >> >> As a note: I just spotted that TravisCI adds windows support. >> Maybe we could use it in the future for windows builds. >> >> [3] https://lists.nongnu.org/archive/html/qemu-devel/2018-12/msg00935.html > > Good idea. It's hard for me to see what harm this would cause, so I > enabled cirrus-ci at github and applied this to master. FYI, I've also enabled the cirrus-ci under the ovsrobot, in tandem. > The big weakness with appveyor is that its limits are too low to run the > whole OVS testsuite. I wonder whether cirrus-ci has better limits for > this purpose. ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [RFC] cirrus: Add Cirrus CI integration for FreeBSD build
On Tue, Dec 11, 2018 at 05:34:17PM +0300, Ilya Maximets wrote: > CirrusCI [1] is free for open-sorce projects and provides similar > to TravisCI interfaces. One significant difference is ability > to run tasks on FreeBSD instances. > > This patch adds simple configuration file to test OVS build > on two FreeBSD releases with gcc and clang. > Unit tests are commented out because they are broken for now. > > To enable the automated checks Cirrus CI application from GitHub > Marketplace should be installed. See details in Quick Start guide [2]. > > [1] https://cirrus-ci.org > [2] https://cirrus-ci.org/guide/quick-start/ > > Signed-off-by: Ilya Maximets > --- > > This could be useful to test FreeBSD build automatically to early > detect issues. CirrusCI looks suitable for that purpose and it's > the only public CI system that I managed to find that supports > FreeBSD images. Sending as RFC to start discussion. > > Few more differentiation points with Travis. Cirrus allows to > configure number of CPUs and the amount of required memory. It > also supports Linux, OSX and Windows containers. So, maybe, if > we'll like it, we could drop Travis and AppVeyor and use single > CI system for all the tests. > > I'm not advertising and not trying to convince to replace our > current CI systems. I found CirrusCI just few days ago by a mail [3] > in qemu-devel list. I just think that it's the only option for > now to test BSD builds with public CI. And it worked fine for me > with below configuration. > > Thoughts ? > > As a note: I just spotted that TravisCI adds windows support. > Maybe we could use it in the future for windows builds. > > [3] https://lists.nongnu.org/archive/html/qemu-devel/2018-12/msg00935.html Good idea. It's hard for me to see what harm this would cause, so I enabled cirrus-ci at github and applied this to master. The big weakness with appveyor is that its limits are too low to run the whole OVS testsuite. I wonder whether cirrus-ci has better limits for this purpose. ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Re: [ovs-dev] [RFC] cirrus: Add Cirrus CI integration for FreeBSD build
Ilya Maximets writes: > CirrusCI [1] is free for open-sorce projects and provides similar > to TravisCI interfaces. One significant difference is ability > to run tasks on FreeBSD instances. > > This patch adds simple configuration file to test OVS build > on two FreeBSD releases with gcc and clang. > Unit tests are commented out because they are broken for now. > > To enable the automated checks Cirrus CI application from GitHub > Marketplace should be installed. See details in Quick Start guide [2]. > > [1] https://cirrus-ci.org > [2] https://cirrus-ci.org/guide/quick-start/ > > Signed-off-by: Ilya Maximets > --- > > This could be useful to test FreeBSD build automatically to early > detect issues. CirrusCI looks suitable for that purpose and it's > the only public CI system that I managed to find that supports > FreeBSD images. Sending as RFC to start discussion. Awesome find. Thanks, Ilya! > Few more differentiation points with Travis. Cirrus allows to > configure number of CPUs and the amount of required memory. It > also supports Linux, OSX and Windows containers. So, maybe, if > we'll like it, we could drop Travis and AppVeyor and use single > CI system for all the tests. > > I'm not advertising and not trying to convince to replace our > current CI systems. I found CirrusCI just few days ago by a mail [3] > in qemu-devel list. I just think that it's the only option for > now to test BSD builds with public CI. And it worked fine for me > with below configuration. > > Thoughts ? I'm not married to technology for a reason :) If it seems better, then it is worth checking out. I can play around with it a little bit, but I'll be AFK until Jan, so it might be better for someone else who has the recent time to take a look. One thing I really find painful with Travis is the difficulty running the alternate test suites (make check-*). Travis can run them, but we need to request privileged containers, and that will add to the build time. Not sure if there's some kind of custom privilege support from Cirrus that would let us run the alternate test suites - or even let us run them by requesting privileges. Another thing I'm not sure about is the polling. At least Travis does have a RESTful API that we can poll with. I hope the CirrusCI system would as well. Currently, I am looking into getting the robot to poll the Travis system and respond to a series if there is a problem. > As a note: I just spotted that TravisCI adds windows support. > Maybe we could use it in the future for windows builds. > > [3] https://lists.nongnu.org/archive/html/qemu-devel/2018-12/msg00935.html > > .cirrus.yml | 30 ++ > Makefile.am | 1 + > 2 files changed, 31 insertions(+) > create mode 100644 .cirrus.yml > > diff --git a/.cirrus.yml b/.cirrus.yml > new file mode 100644 > index 0..4902fd370 > --- /dev/null > +++ b/.cirrus.yml > @@ -0,0 +1,30 @@ > +freebsd_build_task: > + > + freebsd_instance: > +matrix: > + image: freebsd-12-0-release-amd64 > + image: freebsd-11-2-release-amd64 > +cpu: 4 > +memory: 8G > + > + env: > +matrix: > + COMPILER: gcc > + COMPILER: clang > + > + prepare_script: > +- pkg install -y automake libtool gmake gcc wget > + python py27-six py27-sphinx > + > + configure_script: > +- ./boot.sh > +- ./configure CC=$COMPILER MAKE=gmake OVS_CFLAGS='-Wall' --enable-Werror > + || { cat config.log; exit 1; } > + > + build_script: > +- gmake -j8 > + > +# TODO(i.maximets): Uncomment the test suite execution when it is fixed. > +# check_script: > +#- gmake -j8 check TESTSUITEFLAGS=-j8 RECHECK=yes > +#|| { cat ./tests/testsuite.log; exit 1; } > diff --git a/Makefile.am b/Makefile.am > index 64725654c..8408509c9 100644 > --- a/Makefile.am > +++ b/Makefile.am > @@ -76,6 +76,7 @@ EXTRA_DIST = \ > MAINTAINERS.rst \ > README.rst \ > NOTICE \ > + .cirrus.yml \ > .travis.yml \ > .travis/linux-build.sh \ > .travis/linux-prepare.sh \ ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev
[ovs-dev] [RFC] cirrus: Add Cirrus CI integration for FreeBSD build
CirrusCI [1] is free for open-sorce projects and provides similar to TravisCI interfaces. One significant difference is ability to run tasks on FreeBSD instances. This patch adds simple configuration file to test OVS build on two FreeBSD releases with gcc and clang. Unit tests are commented out because they are broken for now. To enable the automated checks Cirrus CI application from GitHub Marketplace should be installed. See details in Quick Start guide [2]. [1] https://cirrus-ci.org [2] https://cirrus-ci.org/guide/quick-start/ Signed-off-by: Ilya Maximets --- This could be useful to test FreeBSD build automatically to early detect issues. CirrusCI looks suitable for that purpose and it's the only public CI system that I managed to find that supports FreeBSD images. Sending as RFC to start discussion. Few more differentiation points with Travis. Cirrus allows to configure number of CPUs and the amount of required memory. It also supports Linux, OSX and Windows containers. So, maybe, if we'll like it, we could drop Travis and AppVeyor and use single CI system for all the tests. I'm not advertising and not trying to convince to replace our current CI systems. I found CirrusCI just few days ago by a mail [3] in qemu-devel list. I just think that it's the only option for now to test BSD builds with public CI. And it worked fine for me with below configuration. Thoughts ? As a note: I just spotted that TravisCI adds windows support. Maybe we could use it in the future for windows builds. [3] https://lists.nongnu.org/archive/html/qemu-devel/2018-12/msg00935.html .cirrus.yml | 30 ++ Makefile.am | 1 + 2 files changed, 31 insertions(+) create mode 100644 .cirrus.yml diff --git a/.cirrus.yml b/.cirrus.yml new file mode 100644 index 0..4902fd370 --- /dev/null +++ b/.cirrus.yml @@ -0,0 +1,30 @@ +freebsd_build_task: + + freebsd_instance: +matrix: + image: freebsd-12-0-release-amd64 + image: freebsd-11-2-release-amd64 +cpu: 4 +memory: 8G + + env: +matrix: + COMPILER: gcc + COMPILER: clang + + prepare_script: +- pkg install -y automake libtool gmake gcc wget + python py27-six py27-sphinx + + configure_script: +- ./boot.sh +- ./configure CC=$COMPILER MAKE=gmake OVS_CFLAGS='-Wall' --enable-Werror + || { cat config.log; exit 1; } + + build_script: +- gmake -j8 + +# TODO(i.maximets): Uncomment the test suite execution when it is fixed. +# check_script: +#- gmake -j8 check TESTSUITEFLAGS=-j8 RECHECK=yes +#|| { cat ./tests/testsuite.log; exit 1; } diff --git a/Makefile.am b/Makefile.am index 64725654c..8408509c9 100644 --- a/Makefile.am +++ b/Makefile.am @@ -76,6 +76,7 @@ EXTRA_DIST = \ MAINTAINERS.rst \ README.rst \ NOTICE \ + .cirrus.yml \ .travis.yml \ .travis/linux-build.sh \ .travis/linux-prepare.sh \ -- 2.17.1 ___ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev