ci: update travis to use bionic

Message ID 20191217114259.35575-1-kevin.laatz@intel.com (mailing list archive)
State Accepted, archived
Delegated to: David Marchand
Headers
Series ci: update travis to use bionic |

Checks

Context Check Description
ci/checkpatch warning coding style issues
ci/iol-testing success Testing PASS
ci/iol-mellanox-Performance success Performance Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/travis-robot warning Travis build: failed
ci/Intel-compilation fail apply issues

Commit Message

Kevin Laatz Dec. 17, 2019, 11:42 a.m. UTC
  Currently, the Travis CI is using Ubuntu 16.04 LTS (Xenial) which is
becoming increasingly outdated. This patch updates Travis to use Ubuntu
18.04 LTS (Bionic) which will give us the benefit of more up-to-date
packages being availble and the newer features that come with them.

Signed-off-by: Kevin Laatz <kevin.laatz@intel.com>
---
 .travis.yml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
  

Comments

Aaron Conole Dec. 17, 2019, 2:44 p.m. UTC | #1
Kevin Laatz <kevin.laatz@intel.com> writes:

> Currently, the Travis CI is using Ubuntu 16.04 LTS (Xenial) which is
> becoming increasingly outdated. This patch updates Travis to use Ubuntu
> 18.04 LTS (Bionic) which will give us the benefit of more up-to-date
> packages being availble and the newer features that come with them.
>
> Signed-off-by: Kevin Laatz <kevin.laatz@intel.com>
> ---
>  .travis.yml | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/.travis.yml b/.travis.yml
> index 8f90d06f2..6e0626353 100644
> --- a/.travis.yml
> +++ b/.travis.yml
> @@ -4,7 +4,7 @@ compiler:
>    - gcc
>    - clang
>  
> -dist: xenial
> +dist: bionic

This LGTM.

>  os:
>    - linux
> @@ -21,7 +21,7 @@ aarch64_packages: &aarch64_packages
>  
>  extra_packages: &extra_packages
>    - *required_packages
> -  - [libbsd-dev, libpcap-dev, libcrypto++-dev, libjansson4]
> +  - [libbsd-dev, libpcap-dev, libcrypto++-dev, libjansson4, abigail-tools]

Will adding the abigail-tools automatically invoke the ABI checks?
Otherwise, maybe it's best to save this for a future commit.

I'll look for the robot build when it comes by.  Thanks!

>  build_32b_packages: &build_32b_packages
>    - *required_packages
  
Kevin Laatz Dec. 17, 2019, 3:04 p.m. UTC | #2
On 17/12/2019 14:44, Aaron Conole wrote:
> Kevin Laatz <kevin.laatz@intel.com> writes:
>
>> Currently, the Travis CI is using Ubuntu 16.04 LTS (Xenial) which is
>> becoming increasingly outdated. This patch updates Travis to use Ubuntu
>> 18.04 LTS (Bionic) which will give us the benefit of more up-to-date
>> packages being availble and the newer features that come with them.
>>
>> Signed-off-by: Kevin Laatz <kevin.laatz@intel.com>
>> ---
>>   .travis.yml | 4 ++--
>>   1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/.travis.yml b/.travis.yml
>> index 8f90d06f2..6e0626353 100644
>> --- a/.travis.yml
>> +++ b/.travis.yml
>> @@ -4,7 +4,7 @@ compiler:
>>     - gcc
>>     - clang
>>   
>> -dist: xenial
>> +dist: bionic
> This LGTM.
>
>>   os:
>>     - linux
>> @@ -21,7 +21,7 @@ aarch64_packages: &aarch64_packages
>>   
>>   extra_packages: &extra_packages
>>     - *required_packages
>> -  - [libbsd-dev, libpcap-dev, libcrypto++-dev, libjansson4]
>> +  - [libbsd-dev, libpcap-dev, libcrypto++-dev, libjansson4, abigail-tools]
> Will adding the abigail-tools automatically invoke the ABI checks?
> Otherwise, maybe it's best to save this for a future commit.
>
> I'll look for the robot build when it comes by.  Thanks!

Yes, the meson option that will be introduced with the "Add ABI 
compatibility checks to the meson build" [1] patch set will be set to 
"auto" meaning the checks will run if abidiff is found.

[1] http://patches.dpdk.org/project/dpdk/list/?series=7830

>
>>   build_32b_packages: &build_32b_packages
>>     - *required_packages
  
Andrzej Ostruszka Dec. 17, 2019, 3:26 p.m. UTC | #3
On 12/17/19 12:42 PM, Kevin Laatz wrote:
> Currently, the Travis CI is using Ubuntu 16.04 LTS (Xenial) which is
> becoming increasingly outdated. This patch updates Travis to use Ubuntu
> 18.04 LTS (Bionic) which will give us the benefit of more up-to-date
> packages being availble and the newer features that come with them.

Acked-by: Andrzej Ostruszka <amo@semihalf.com>

But I do have a question - should this come together with removal of
extra sources/packages added just to overcome building problems
resulting from outdated distro?  Or this should be responsibility of
person that added those (e.g. I've added gcc-7 from
ubuntu-toolchain/r-test for LTO builds)

Regards
Andrzej
  
Aaron Conole Dec. 17, 2019, 6:03 p.m. UTC | #4
"Laatz, Kevin" <kevin.laatz@intel.com> writes:

> On 17/12/2019 14:44, Aaron Conole wrote:
>> Kevin Laatz <kevin.laatz@intel.com> writes:
>>
>>> Currently, the Travis CI is using Ubuntu 16.04 LTS (Xenial) which is
>>> becoming increasingly outdated. This patch updates Travis to use Ubuntu
>>> 18.04 LTS (Bionic) which will give us the benefit of more up-to-date
>>> packages being availble and the newer features that come with them.
>>>
>>> Signed-off-by: Kevin Laatz <kevin.laatz@intel.com>
>>> ---
>>>   .travis.yml | 4 ++--
>>>   1 file changed, 2 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/.travis.yml b/.travis.yml
>>> index 8f90d06f2..6e0626353 100644
>>> --- a/.travis.yml
>>> +++ b/.travis.yml
>>> @@ -4,7 +4,7 @@ compiler:
>>>     - gcc
>>>     - clang
>>>   -dist: xenial
>>> +dist: bionic
>> This LGTM.
>>
>>>   os:
>>>     - linux
>>> @@ -21,7 +21,7 @@ aarch64_packages: &aarch64_packages
>>>     extra_packages: &extra_packages
>>>     - *required_packages
>>> -  - [libbsd-dev, libpcap-dev, libcrypto++-dev, libjansson4]
>>> +  - [libbsd-dev, libpcap-dev, libcrypto++-dev, libjansson4, abigail-tools]
>> Will adding the abigail-tools automatically invoke the ABI checks?
>> Otherwise, maybe it's best to save this for a future commit.
>>
>> I'll look for the robot build when it comes by.  Thanks!
>
> Yes, the meson option that will be introduced with the "Add ABI
> compatibility checks to the meson build" [1] patch set will be set to
> "auto" meaning the checks will run if abidiff is found.

Okay.  I'm fine with that change.

> [1] http://patches.dpdk.org/project/dpdk/list/?series=7830

I noticed the shared builds are failing:
  https://travis-ci.com/ovsrobot/dpdk/jobs/268042693

But not sure what the issue is with librte_mempool_ring

Can you see why it would fail under bionic?

>>
>>>   build_32b_packages: &build_32b_packages
>>>     - *required_packages
  
Kevin Laatz Dec. 19, 2019, 4:12 p.m. UTC | #5
On 17/12/2019 18:03, Aaron Conole wrote:
> "Laatz, Kevin" <kevin.laatz@intel.com> writes:
>
>> On 17/12/2019 14:44, Aaron Conole wrote:
>>> Kevin Laatz <kevin.laatz@intel.com> writes:
>>>
>>>> Currently, the Travis CI is using Ubuntu 16.04 LTS (Xenial) which is
>>>> becoming increasingly outdated. This patch updates Travis to use Ubuntu
>>>> 18.04 LTS (Bionic) which will give us the benefit of more up-to-date
>>>> packages being availble and the newer features that come with them.
>>>>
>>>> Signed-off-by: Kevin Laatz <kevin.laatz@intel.com>
>>>> ---
>>>>    .travis.yml | 4 ++--
>>>>    1 file changed, 2 insertions(+), 2 deletions(-)
>>>>
>>>> diff --git a/.travis.yml b/.travis.yml
>>>> index 8f90d06f2..6e0626353 100644
>>>> --- a/.travis.yml
>>>> +++ b/.travis.yml
>>>> @@ -4,7 +4,7 @@ compiler:
>>>>      - gcc
>>>>      - clang
>>>>    -dist: xenial
>>>> +dist: bionic
>>> This LGTM.
>>>
>>>>    os:
>>>>      - linux
>>>> @@ -21,7 +21,7 @@ aarch64_packages: &aarch64_packages
>>>>      extra_packages: &extra_packages
>>>>      - *required_packages
>>>> -  - [libbsd-dev, libpcap-dev, libcrypto++-dev, libjansson4]
>>>> +  - [libbsd-dev, libpcap-dev, libcrypto++-dev, libjansson4, abigail-tools]
>>> Will adding the abigail-tools automatically invoke the ABI checks?
>>> Otherwise, maybe it's best to save this for a future commit.
>>>
>>> I'll look for the robot build when it comes by.  Thanks!
>> Yes, the meson option that will be introduced with the "Add ABI
>> compatibility checks to the meson build" [1] patch set will be set to
>> "auto" meaning the checks will run if abidiff is found.
> Okay.  I'm fine with that change.
>
>> [1] http://patches.dpdk.org/project/dpdk/list/?series=7830
> I noticed the shared builds are failing:
>    https://travis-ci.com/ovsrobot/dpdk/jobs/268042693
>
> But not sure what the issue is with librte_mempool_ring
>
> Can you see why it would fail under bionic?

Between Xenial and Bionic, there has been a slight change (RPATH 
related) in how shared objects are linked causing librte_mempool_ring to 
not be found.

Ruifeng has submitted a patch [1] that addresses this issue.

[1] http://patches.dpdk.org/patch/63978/

>>>>    build_32b_packages: &build_32b_packages
>>>>      - *required_packages
>>>>
  
David Marchand Jan. 19, 2020, 5:36 p.m. UTC | #6
On Tue, Dec 17, 2019 at 4:27 PM Andrzej Ostruszka <amo@semihalf.com> wrote:
>
> On 12/17/19 12:42 PM, Kevin Laatz wrote:
> > Currently, the Travis CI is using Ubuntu 16.04 LTS (Xenial) which is
> > becoming increasingly outdated. This patch updates Travis to use Ubuntu
> > 18.04 LTS (Bionic) which will give us the benefit of more up-to-date
> > packages being availble and the newer features that come with them.
>
> Acked-by: Andrzej Ostruszka <amo@semihalf.com>
>
> But I do have a question - should this come together with removal of
> extra sources/packages added just to overcome building problems
> resulting from outdated distro?  Or this should be responsibility of
> person that added those (e.g. I've added gcc-7 from
> ubuntu-toolchain/r-test for LTO builds)

We disabled the LTO job in Travis on 11/08:
https://git.dpdk.org/dpdk/commit/?id=20d3f48be1d1
Were you referring to something else?

Thanks.
  
David Marchand Jan. 19, 2020, 6:20 p.m. UTC | #7
On Tue, Dec 17, 2019 at 12:43 PM Kevin Laatz <kevin.laatz@intel.com> wrote:
>
> Currently, the Travis CI is using Ubuntu 16.04 LTS (Xenial) which is
> becoming increasingly outdated. This patch updates Travis to use Ubuntu
> 18.04 LTS (Bionic) which will give us the benefit of more up-to-date
> packages being availble and the newer features that come with them.

available*

The Intel CI tests Ubuntu 16.04.
As you mentioned, 18.04 comes with a more recent clang and libabigail
which will be necessary in other series.

I am ok with this change too.

>
> Signed-off-by: Kevin Laatz <kevin.laatz@intel.com>
> ---
>  .travis.yml | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/.travis.yml b/.travis.yml
> index 8f90d06f2..6e0626353 100644
> --- a/.travis.yml
> +++ b/.travis.yml
> @@ -4,7 +4,7 @@ compiler:
>    - gcc
>    - clang
>
> -dist: xenial
> +dist: bionic
>
>  os:
>    - linux
> @@ -21,7 +21,7 @@ aarch64_packages: &aarch64_packages
>
>  extra_packages: &extra_packages
>    - *required_packages
> -  - [libbsd-dev, libpcap-dev, libcrypto++-dev, libjansson4]
> +  - [libbsd-dev, libpcap-dev, libcrypto++-dev, libjansson4, abigail-tools]

I removed this change.
libabigail will be added when needed.

I also removed the distrib field for the aarch64 jobs, that were not
pushed to master yet, at the time this patch had been proposed.

Applied, thanks.


--
David Marchand
  

Patch

diff --git a/.travis.yml b/.travis.yml
index 8f90d06f2..6e0626353 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -4,7 +4,7 @@  compiler:
   - gcc
   - clang
 
-dist: xenial
+dist: bionic
 
 os:
   - linux
@@ -21,7 +21,7 @@  aarch64_packages: &aarch64_packages
 
 extra_packages: &extra_packages
   - *required_packages
-  - [libbsd-dev, libpcap-dev, libcrypto++-dev, libjansson4]
+  - [libbsd-dev, libpcap-dev, libcrypto++-dev, libjansson4, abigail-tools]
 
 build_32b_packages: &build_32b_packages
   - *required_packages