On Fri, Jan 8, 2021 at 10:45 PM Zach Hoffman <zrhoff...@apache.org> wrote:

> One of the biggest ways that Traffic Control benefits from GH Actions is
> that workflows run on forks, which only counts towards that user's 20
> runner limit. As a result, our contributors have less cleanup work to do by
> the time they open a PR.
>

How come? Most people in Airlfow simply open PR to Airflow and it counts
against the Airflow (thus Apache) queue.
How do you do that in Traffic Control ? I'd love to learn that.



>
> Since running on all forks is not an option with Jenkins, that's where my
> preference comes from. Jenkins is still useful for jobs that don't need to
> run on forks, (e.g., periodically checking for Go version updates and
> opening a PR if a minor version update is found)


VAST majority of our traffic comes from PRs from forks.

>
> -Zach
>
> On Fri, Jan 8, 2021 at 2:34 PM Jarek Potiuk <ja...@potiuk.com> wrote:
>
> > Let me just answer from my side.
> >
> > Personally - I hate and love Jenkins at the same time. I am a Jenkins
> user
> > and developer for 15 years or so.  I even developed mobile app plugins
> for
> > jenkins and we run our own jenkins farm for mobile app CI. but some 5
> years
> > ago we switched to GitLab which was so much modern then. It has not
> changed
> > since even after jenkins introduced pipelines.
> >
> > To be perfectly honest - Java and even (once beloved by me) Gradle simply
> > sucks for python and (yes!) javascript developers when it comes to
> > productivity.
> >
> >  But It has nothing to do with love/hate.
> >
> > We moved to GA when we had exactly the same troubles with
> > Apache-organisation run Travis. more than a year ago we got in very much
> > the same situation and GA seemed like an easy win for us.
> >
> > So, we pioneered GA use in Apache > 1 year ago and it worked well for a
> > year or so.
> >
> > We have a rather complex (
> > https://github.com/apache/airflow/blob/master/CI.rst) system built on
> top
> > of it that has a great integration with GitHub repo and allows us to do a
> > number of things:
> > - images are build and share in Github Packages during the build
> > - we can directly make comments and push changes to Github Branches
> > - we do security analysis with CodeQL
> > - we read and update label on PRs that serve us to determine scope of
> tests
> > ("full tests neeed" = all tests, otherwise only one matrix combination)
> > - we push cache images to Github Packages  so that our builds run faster
> > - we update and modify content of Github Issues to keep track of
> > "quarantined" issues - flaky issues that cannot be fixed immediately
> > - we implemented a sophisticated 'cancel workflow" (based on my GH
> Action)
> > that cancels duplicate workflows but also workflows that failed important
> > jobs
> > - we implemented "selective" checks that determine which of the multitude
> > kind of tests (unit, cli, www, heisentests, integration, core, API)
> should
> > be tested depending on which files changed.
> >
> >
> > All this uses GA features and we implemented it over last year or so.
> > Reimplementing it for Jenkins/whatever is probably months of engineering
> > time.
> >
> > And a lot of that requires a lot of custom java/gradle plugins which we
> > have pretty much 0 capacity at Airflow. We are Python devs and we can do
> > some javascript. I personally did the whole set of gradle plugins for
> > mobile app development (
> > https://mvnrepository.com/artifact/com.apphance.ameba/Ameba/0.99.4) but
> > that was > 6 years ago and I moved on to Python/Javascript and never look
> > back.
> >
> > J.
> >
> >
> >
> >
> > On Fri, Jan 8, 2021 at 9:49 PM Chris Lambertus <c...@apache.org> wrote:
> >
> > >
> > >
> > > > On Jan 8, 2021, at 12:11 PM, Kamil Breguła <
> kamil.breg...@polidea.com>
> > > wrote:
> > >
> > > > I would be happy if we could get a tip on what we can do next to
> > improve
> > > > our CI as well as keep our community happy. Is there any solution
> that
> > > > complies with the Apache policy and is more stable?  In Airflow,
> we've
> > > > already tried several solutions, starting with the Travis CI, then
> > trying
> > > > to use GitLab Ci, and now we're trying to use Github Action. Each
> > > solution
> > > > has some kinds of problems and prevents us from working freely.  Does
> > > > anyone have a hint on what we can use now?
> > >
> > > Have you considered the internal and fully supported ASF Jenkins and/or
> > > Buildbot infrastructure? Infra has little control over the free open
> > source
> > > offerings, but we have significantly more resources we can bring to
> bear
> > on
> > > own on CI systems.
> > >
> > > What are the gaps in the ASF CI systems that are pushing people onto
> less
> > > viable platforms such as GA?
> > >
> > >
> > > -Chris
> > > ASF Infra
> >
> >
> >
> > --
> > +48 660 796 129
> >
>


-- 

Jarek Potiuk
Polidea <https://www.polidea.com/> | Principal Software Engineer

M: +48 660 796 129 <+48660796129>
[image: Polidea] <https://www.polidea.com/>

Reply via email to