thrift-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (THRIFT-4351) Use Travis CI Build Stages to optimize the CI build
Date Thu, 05 Oct 2017 14:24:00 GMT

    [ https://issues.apache.org/jira/browse/THRIFT-4351?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16192942#comment-16192942
] 

ASF GitHub Bot commented on THRIFT-4351:
----------------------------------------

GitHub user jeking3 opened a pull request:

    https://github.com/apache/thrift/pull/1387

    THRIFT-4351: use travis build stages to optimize build,

    avoiding duplicate rebuilds of the same image
    THRIFT-4345: solidify docker build strategy for maximum
    coverage: trusty, xenial, artful as stock as they can be
    THRIFT-4344: add top level language summary markdown and
    update readme with a new image on the layered architecture
    THRIFT-3847: remove VERSION macro from config.h

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/jeking3/thrift THRIFT-4351

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/thrift/pull/1387.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1387
    
----
commit b93f58914937abeacf3914543a195611e452bb7c
Author: James E. King, III <jking@apache.org>
Date:   2017-09-30T22:44:16Z

    THRIFT-4351: use travis build stages to optimize build,
    avoiding duplicate rebuilds of the same image
    THRIFT-4345: solidify docker build strategy for maximum
    coverage: trusty, xenial, artful as stock as they can be
    THRIFT-4344: add top level language summary markdown and
    update readme with a new image on the layered architecture
    THRIFT-3847: remove VERSION macro from config.h

----


> Use Travis CI Build Stages to optimize the CI build
> ---------------------------------------------------
>
>                 Key: THRIFT-4351
>                 URL: https://issues.apache.org/jira/browse/THRIFT-4351
>             Project: Thrift
>          Issue Type: Improvement
>          Components: Build Process
>    Affects Versions: 0.10.0
>         Environment: Travis CI
>            Reporter: James E. King, III
>            Assignee: James E. King, III
>
> Due to the time limit restrictions in Travis, the thrift project leverages many redundant
builds in identical containers:
> # build docker image if needed then make precross and run cross on a subset of protocols
> # build docker image if needed then make precross and run cross on a different subset
of protocols
> # build docker image if needed then make precross and run cross on a third subset of
protocols
> # build docker image if needed then make check
> The first four build jobs build most of the same stuff.
> Alternatively, what if we could do this instead:
> In parallel:
> # build docker image for ubuntu-trusty if needed
> # build docker image for ubuntu-xenial if needed
> then, in parallel:
> # make check on ubuntu-trusty and store the build away
> # make check on ubuntu-xenial and store the build away
> # some other jobs like ubsan can run in parallel here
> then, in parallel:
> # make cross (no bootstrap, no configure) on the ubuntu-trusty build result from above
with all protocols
> # make cross (no bootstrap, no configure) on the ubuntu-xenial build result from above
with all protocols
> Ideally if we could carry the docker image across build jobs that would be ideal.  I'm
actually going to float that idea to the travis team.
> https://docs.travis-ci.com/user/build-stages/



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message