Yep. We still continuously optimize it and we are reaching out to get
funding for self-hosted runners. And I think it would be great to see that
happening. I am happy to help anyone who needs some help there - I've been
already helping Apache Beam with their GitHub Actions settings.

On Mon, Oct 19, 2020 at 6:12 AM Greg Stein <gst...@gmail.com> wrote:

> This is some great news, Jarek.
>
> Given that GitHub build minutes are shared, we need more of this kind of
> work from our many communities.
>
> Thanks,
> Greg
> InfraAdmin, ASF
>
>
> On Sun, Oct 18, 2020 at 2:32 PM Jarek Potiuk <jarek.pot...@polidea.com>
> wrote:
>
> > Hello Allen,
> >
> > I'd really love to give a try to Yetus - how it can actually make our
> > approach better.
> >
> > I just merged the change I planned (finally we got to that), that
> > implements the final optimisation that you mentioned. In the case of a
> > single .md file change we got the build time down to about 1 minute, most
> > of it being GitHub Actions "workflow" overhead.
> >
> > We went-down with the incremental pre-commit tests to ~ 25s.
> >
> > Build here: https://github.com/potiuk/airflow/pull/128/checks. As you
> can
> > see here:
> >
> >
> https://github.com/potiuk/airflow/pull/128/checks?check_run_id=1268353637#step:7:98
> > in
> > this case we run only the relevant static checks:
> >
> >    - "No-tabs checker"
> >    - "Add license for all md files"
> >    - "Add TOC for md files."
> >    - "Check for merge conflicts"
> >    - "Detect Private Key"
> >    - "Fix End of Files"
> >    - "Trim Trailing Whitespace"
> >    - "Check for language that we do not accept as community",
> >
> > All the other checks, image building, and all the extra checks are
> skipped
> > (automatically as pre-commit determined them irrelevant).
> >
> > All this, while we keep really comprehensive tests and optimisation of
> > image building for all the "serious steps". I tried to explain the
> > philosophy and some basic assumptions behind our CI in
> > https://github.com/apache/airflow/blob/master/CI.rst#ci-environment -
> and
> > I'd love to try to see how this plays together with the Yetus tool.
> >
> > Would it be possible to work together with the Yetus team on trying to
> see
> > how it can help to further optimise and possibly simplify the setup we
> > have? I'd love to get some cooperation on those. I am nearly done with
> all
> > optimisations I planned, And we are for years (long before my tenure)
> among
> > top-3 Apache projects when it comes to CI-time use, so that might be a
> good
> > one if we can pull together some improvements.
> >
> >
> > J.
> >
> >
> >
> > On Wed, Oct 14, 2020 at 4:41 PM Jarek Potiuk <jarek.pot...@polidea.com>
> > wrote:
> >
> > > Exactly - > dialectic vs. dislectic for example.
> > >
> > > On Wed, Oct 14, 2020 at 4:40 PM Jarek Potiuk <jarek.pot...@polidea.com
> >
> > > wrote:
> > >
> > >> And really sorry about yatus vs. yetus - I am slightly dialectic and
> > when
> > >> things are not in the dictionary, I tend to do many mistakes. I hope
> > it's
> > >> not something that people can take as a sign of being "worse", but if
> > you
> > >> felt offended by that - apologies.
> > >>
> > >>
> > >>
> > >> On Wed, Oct 14, 2020 at 4:34 PM Jarek Potiuk <
> jarek.pot...@polidea.com>
> > >> wrote:
> > >>
> > >>> Hey Allen,
> > >>>
> > >>> I would be super happy if you could help us to do it properly at
> > Airlfow
> > >>> - would you like to work with us and get the yatus configuration that
> > >>> would work for us ? I am super happy to try it? Maybe you could open
> PR
> > >>> with some basic yatus implementation to start with and we could work
> > >>> together to get it simplified? I would love to learn how to do it.
> > >>>
> > >>> J
> > >>>
> > >>>
> > >>> On Wed, Oct 14, 2020 at 3:37 PM Allen Wittenauer
> > >>> <a...@effectivemachines.com.invalid> wrote:
> > >>>
> > >>>>
> > >>>>
> > >>>> > On Oct 13, 2020, at 11:04 PM, Jarek Potiuk <
> > jarek.pot...@polidea.com>
> > >>>> wrote:
> > >>>> > This is a logic
> > >>>> > that we have to implement regardless - whether we use yatus or
> > >>>> pre-commit
> > >>>> > (please correct me if I am wrong).
> > >>>>
> > >>>>         I'm not sure about yatus, but for yetus, for the most part,
> > >>>> yes, one would like to need to implement custom rules in the
> > personality to
> > >>>> exactly duplicate the overly complicated and over engineered airflow
> > >>>> setup.  The big difference is that one wouldn't be starting from
> > scratch.
> > >>>> The difference engine is already there. The file filter is already
> > there.
> > >>>> full build vs. PR handling is already there. etc etc etc
> > >>>>
> > >>>> > For all others, this is not a big issue because in total all other
> > >>>> > pre-commits take 2-3 minutes at best. And if we find that we need
> to
> > >>>> > optimize it further we can simply disable the '--all-files' switch
> > for
> > >>>> > pre-commit and they will only run on the latest commit-changed
> files
> > >>>> > (pre-commit will only run the tests related to those changed
> files).
> > >>>> But
> > >>>> > since they are pretty fast (except pylint/mypy/flake8) we think
> > >>>> running
> > >>>> > them all, for now, is not a problem.
> > >>>>
> > >>>>         That's what everyone thinks until they start aggregating the
> > >>>> time across all changes...
> > >>>>
> > >>>>
> > >>>
> > >>> --
> > >>>
> > >>> Jarek Potiuk
> > >>> Polidea <https://www.polidea.com/> | Principal Software Engineer
> > >>>
> > >>> M: +48 660 796 129 <+48660796129>
> > >>> [image: Polidea] <https://www.polidea.com/>
> > >>>
> > >>>
> > >>
> > >> --
> > >>
> > >> Jarek Potiuk
> > >> Polidea <https://www.polidea.com/> | Principal Software Engineer
> > >>
> > >> M: +48 660 796 129 <+48660796129>
> > >> [image: Polidea] <https://www.polidea.com/>
> > >>
> > >>
> > >
> > > --
> > >
> > > Jarek Potiuk
> > > Polidea <https://www.polidea.com/> | Principal Software Engineer
> > >
> > > M: +48 660 796 129 <+48660796129>
> > > [image: Polidea] <https://www.polidea.com/>
> > >
> > >
> >
> > --
> >
> > Jarek Potiuk
> > Polidea <https://www.polidea.com/> | Principal Software Engineer
> >
> > M: +48 660 796 129 <+48660796129>
> > [image: Polidea] <https://www.polidea.com/>
> >
>


-- 

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