Skip to content

travis: add Bionic (Ubuntu 18.04) to test matrix#3606

Merged
estesp merged 3 commits intocontainerd:masterfrom
thaJeztah:bump_travis_bionic
Sep 3, 2019
Merged

travis: add Bionic (Ubuntu 18.04) to test matrix#3606
estesp merged 3 commits intocontainerd:masterfrom
thaJeztah:bump_travis_bionic

Conversation

@thaJeztah
Copy link
Copy Markdown
Member

Using bionic (current LTS) as default, and adding xenial (Ubuntu 16.04 LTS) to the matrix, to test the previous LTS release as well

(see discussion on rootless-containers/usernetes#111)

@thaJeztah
Copy link
Copy Markdown
Member Author

thaJeztah commented Aug 30, 2019

Okay, not yet there; it's now running the following Linux combinations:

distro TEST_RUNTIME
bionic io.containerd.runc.v1
bionic io.containerd.runc.v2
bionic io.containerd.runtime.v1.linux
xenial io.containerd.runc.v1

So I either have to write-out all combinations, or at least 3 for xenial

@theopenlab-ci
Copy link
Copy Markdown

theopenlab-ci Bot commented Aug 30, 2019

Build succeeded.

@codecov-io
Copy link
Copy Markdown

codecov-io commented Aug 30, 2019

Codecov Report

Merging #3606 into master will increase coverage by 0.04%.
The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #3606      +/-   ##
==========================================
+ Coverage   42.38%   42.43%   +0.04%     
==========================================
  Files         126      126              
  Lines       13900    13919      +19     
==========================================
+ Hits         5891     5906      +15     
- Misses       7123     7125       +2     
- Partials      886      888       +2
Flag Coverage Δ
#linux 45.96% <ø> (+0.05%) ⬆️
#windows 37.2% <ø> (ø) ⬆️
Impacted Files Coverage Δ
cio/io_unix.go 75% <0%> (+0.88%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 95301fe...fa546dc. Read the comment docs.

@thaJeztah
Copy link
Copy Markdown
Member Author

All working now:

distro TEST_RUNTIME
bionic io.containerd.runc.v1
bionic io.containerd.runc.v2
bionic io.containerd.runtime.v1.linux
xenial io.containerd.runc.v1
xenial io.containerd.runc.v2
xenial io.containerd.runtime.v1.linux

@thaJeztah
Copy link
Copy Markdown
Member Author

thaJeztah commented Aug 30, 2019

The only difficulty is that travis doesn't clearly show what distro each build is in the overview page; I added a dummy env (TRAVIS_DISTRO=xenial) for easier identification

@thaJeztah thaJeztah marked this pull request as ready for review August 30, 2019 08:34
@thaJeztah
Copy link
Copy Markdown
Member Author

@AkihiroSuda this is working now; ptal 👍

@theopenlab-ci
Copy link
Copy Markdown

theopenlab-ci Bot commented Aug 30, 2019

Build succeeded.

@thaJeztah
Copy link
Copy Markdown
Member Author

force-pushed to trigger CI again (linter took to long)

@theopenlab-ci
Copy link
Copy Markdown

theopenlab-ci Bot commented Aug 30, 2019

Build succeeded.

@thaJeztah
Copy link
Copy Markdown
Member Author

👍 all green now

@crosbymichael
Copy link
Copy Markdown
Member

This increases test time for a PR from 20min to 40min. I'm not sure its worth the change, we want our PRs to be fast and provide quick feedback to users.

Since containerd does not code to a specific distribution, I don't think it makes sense to have a matrix for this.

@estesp
Copy link
Copy Markdown
Member

estesp commented Aug 30, 2019

This runs 7 jobs per PR and merge to master and we get 5 parallel from Travis; similar to ppc64le (which also had a perf. issue) means longer PR runs especially when we get multiple PRs in process. Any chance we could minimize runs on the older distro (less of the runtime shim variants maybe?)

@thaJeztah
Copy link
Copy Markdown
Member Author

Ah, didn't know there was a limit of 5 parallel.

I initially wanted to update to Bionic, but @AkihiroSuda mentioned we may want to also test on the older LTS, that's why I added the matrix;

I can remove two of those, or create different combinations

@thaJeztah
Copy link
Copy Markdown
Member Author

Any preference which runtime(s) to test on Xenial / Bionic?

@crosbymichael
Copy link
Copy Markdown
Member

Can we make it so that master tests on all of them but PRs only run on the new ones?

@thaJeztah
Copy link
Copy Markdown
Member Author

good one; let me google a bit if travis can do different things based on the branch

@thaJeztah
Copy link
Copy Markdown
Member Author

looks like there's such an option; travis-ci/travis-ci#7149 (comment)

Using bionic (current LTS) as default, and add xenial (Ubuntu 16.04 LTS)
to the matrix, to test the previous LTS release as well on master

Signed-off-by: Sebastiaan van Stijn <[email protected]>
@theopenlab-ci
Copy link
Copy Markdown

theopenlab-ci Bot commented Sep 1, 2019

Build succeeded.

The branch (for pull requests), is the base/target branch, so for pull
requests against master, these would still be run.

From the travis documentation:

> branch (the current branch name; for pull requests: the base branch name)

This patch excludes these jobs by not running them for pull request (event type=pull_request
or event type=push (when rebasing a pull request)).

Signed-off-by: Sebastiaan van Stijn <[email protected]>
@thaJeztah
Copy link
Copy Markdown
Member Author

I think I have it setup correctly now; just filtering on branch apparently doesn't work, because for pull requests, Travis uses the base branch as branch (so they would still run); I added an extra condition to only run on pull_request and push events (assuming the first gets triggered on pull requests, and the second when rebasing/pushing).

Not sure how to test if it now correctly runs on master (without merging this PR)

@theopenlab-ci
Copy link
Copy Markdown

theopenlab-ci Bot commented Sep 1, 2019

Build succeeded.

@thaJeztah
Copy link
Copy Markdown
Member Author

@crosbymichael @estesp ptal

@crosbymichael
Copy link
Copy Markdown
Member

LGTM

Copy link
Copy Markdown
Member

@estesp estesp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@estesp estesp merged commit 48fb479 into containerd:master Sep 3, 2019
@estesp
Copy link
Copy Markdown
Member

estesp commented Sep 3, 2019

hmm.. https://travis-ci.org/containerd/containerd/builds/580419692
(edit: for clarity--this link is the master "merge PR" Travis run after PR merge)

Maybe needs some more tweaking to get master merge runs on xenial added?

@thaJeztah thaJeztah deleted the bump_travis_bionic branch September 3, 2019 23:16
@thaJeztah
Copy link
Copy Markdown
Member Author

Maybe needs some more tweaking to get master merge runs on xenial added?

Ah booh! The docs is quite confusing on this 😞, and I have no idea how to test before actually merging the changes 😢

I wonder what type of event is needed to run in on "master" (would that be a push event?)

Also, looking at this again; filtering on branch may not even be needed (as in; once merged, I think we want to run this on other branches (e.g. release/xxx) as well

if: branch = master AND type NOT IN (push, pull_request)

Perhaps just this would do;

if: type NOT IN (pull_request)

@crosbymichael
Copy link
Copy Markdown
Member

I think it's a push event on master

@thaJeztah
Copy link
Copy Markdown
Member Author

yup; changed it in #3614 and looks like that's working

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants