git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] travis-ci: no longer use containers

From
SZEDER Gábor <szeder.dev@gmail.com>
Date
Oct 26, 2018, 01:39 UTC
Message-ID
<20181026013949.GN30222@szeder.dev>
In-Reply-To
<xmqqo9bhfu0j.fsf@gitster-ct.c.googlers.com>
On Fri, Oct 26, 2018 at 09:09:48AM +0900, Junio C Hamano wrote:
Show 18 quoted lines
> Sebastian Staudt <koraktor@gmail.com> writes:
> 
> > Travis CI will soon deprecate the container-based infrastructure
> > enabled by `sudo: false` in ce59dffb34190e780be2fa9f449f842cadee9753.
> >
> > More info:
> > https://blog.travis-ci.com/2018-10-04-combining-linux-infrastructures
> 
> Thanks for posting a patch that would serve as a good discussion
> starter.  This is not a criticism on your patch, but more is a RFD
> to those who helped our use of Travis by contributing to .travis.yml
> and ci/.
> 
> Don't we need to do some other things so that we can run in vm
> environment, rather than in container environment, before doing this
> change?  IOW, aren't we doing in .travis.yml something we can do
> only in container but not in vm (if there is any), and if so,
> shouldn't we be rewriting that something so that we can run in vm?

As far as I understand, the container-based infrastructure has only one benefit over the VMs, the shorter startup time.

OTOH, in VMs we can use sudo, which is not available in the container-based intra. This has the benefit that after switching to VMs, we'll be able to install packages by running 'sudo apt-get install ...'. Currently the necessary packages are listed in '.travis.yml' for Travis CI, while for Azure the whole install command is embedded in '.azure....yml'. After the switch we could consolidate installing packages by 'sudo apt-get...' in 'ci/install-dependencies.sh' for both.

Show 15 quoted lines
> I know ce59dffb ("travis-ci: explicity use container-based
> infrastructure", 2016-01-26) only added "sudo: false" without doing
> anything else (e.g. adding things that are only available to those
> who run in container), but if we added stuff that are not usable in
> vm environment after that commit since then, we need to adjust them
> so that we can migrate to the container-based environment, no?
> 
> To me, removing that "sudo: false" line seems like the least thing
> we need to worry about.  After all, they say that whether we have
> "sudo: false" or not, the CI jobs will start running in vm
> environment and not in container.  So if the rest of .travis.yml is
> ready to run in vm environment, we do not have to do anything ;-).
> 
> In short, my question to Lars and SZEDER is, are we already prepared
> to be thrown into a vm environment?

I think we are. I've run only two builds with this patch, and they run smoothly and finished successfully. After you update 'pu' I'll run more.

> If the answer is "yes", then I think removing "sudo: false" is
> probably still a good thing to do for documentation purposes
> (i.e. showing that we knew we are ready to go through their
> migration).
I agree.
Show 19 quoted lines
> > Signed-off-by: Sebastian Staudt <koraktor@gmail.com>
> > ---
> >  .travis.yml | 2 --
> >  1 file changed, 2 deletions(-)
> >
> > diff --git a/.travis.yml b/.travis.yml
> > index 4d4e26c9df..8d2499739e 100644
> > --- a/.travis.yml
> > +++ b/.travis.yml
> > @@ -1,7 +1,5 @@
> >  language: c
> >
> > -sudo: false
> > -
> >  cache:
> >    directories:
> >      - $HOME/travis-cache
> > --
> > 2.19.1
Previous: Junio C HamanoNext: SZEDER Gábor
Message 3 of 9 in “travis-ci: no longer use containers”
  1. travis-ci: no longer use containersSebastian Staudt, Oct 25, 2018
  2. Junio C HamanoOct 26, 2018
  3. SZEDER GáborOct 26, 2018
  4. travis-ci: install packages in 'ci/install-dependencies.sh'SZEDER Gábor, Nov 1, 2018
  5. Junio C HamanoNov 2, 2018
  6. SZEDER GáborNov 8, 2018
  7. Junio C HamanoNov 9, 2018
  8. Johannes SchindelinNov 9, 2018
  9. Sebastian StaudtOct 26, 2018

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.