Sure I will take a look.

However, before you dive deeper - there is an interesting announcement few
days ago from GitHub -
https://github.blog/2020-12-18-learn-about-ghapi-a-new-third-party-python-client-for-the-github-api/
- this is a third-party python client for github that also includes
capability of defining workflows entirely in python (no more custom
typescript actions, no more YAML files to define workflows) - everything
is in python.

You might find it much better to start with due to it's flexibility (and it
very much mirrors Airflow's approach for defining workflows, this is why I
love the idea as I know what kind of benefits it brings).

We are looking at rewriting all our custom logic and workflow in python :).
You might want to start with it.

J.


On Mon, Dec 21, 2020 at 2:21 AM Michael A. Smith <mich...@smith-li.com>
wrote:

> The Apache Avro project is looking at switching from a TravisCI/Yetus
> megabuild to GitHub Actions. Avro is a multi-language project with a
> large matrix of tests. In my first attempt, I've already begun to see
> heavy queuing and rate limiting. I'll be looking into the various
> actions repos Jarek linked previously in this thread.
>
> In the meantime, since I've never done this before, Jarek, if you, or
> anyone else on this thread are at all available to comment on the PR
> at https://github.com/apache/avro/pull/1043 or this thread
> (
> https://lists.apache.org/thread.html/r55acc0f2a65cd50fc1ddf8f1ba00da310413c263ddedb6805d9d7de0%40%3Cdev.avro.apache.org%3E
> )
> it would benefit the project and I'd appreciate it.
>
> On Mon, Nov 9, 2020 at 5:26 AM Jarek Potiuk <jarek.pot...@polidea.com>
> wrote:
> >
> > FYI. The optimizations we've implemented worked for us. We've fixed a few
> > teething issues (of course) but after that no problems with the build
> > queuing the whole last week. We are not sure how much we contributed to
> it
> > as we have no stats yet for the whole ASF but for many of our PRs we have
> > minutes of waiting rather than hours now.
> >
> > On Sun, Nov 1, 2020 at 12:31 AM Jarek Potiuk <jarek.pot...@polidea.com>
> > wrote:
> >
> > >
> > > FYI: We've just merged this doc in Apache Airflow: explaining the pull
> > > request workflow we came up with to optimize away our builds - that
> > > includes motivation, reasoning, and the actual steps we've taken to
> improve
> > > that (there are also some algorithms explained including graphical flow
> > > diagram generated from the textual description):
> > >
> > >
> https://github.com/apache/airflow/blob/master/PULL_REQUEST_WORKFLOW.rst
> > >
> > > Also (as part of this effort) - I have just massively improved the
> > > "cancel-workflow-runs" action I created to improve and optimize the
> > > "duplicate" part of the PR workflows. I know other projects
> (Skywalking)
> > > used to have similar "misuse" of the jobs, where quick fixups from the
> > > commiters were causing a lot of out-dated code eating a lot of
> job-time.
> > > The latest version of my workflow -
> > > https://github.com/potiuk/cancel-workflow-runs/releases/tag/v4_1
> should
> > > massively improve that by much more aggressive (but still safe)
> canceling
> > > of all the duplicate runs from all the PRs in a single pass. I'd really
> > > encourage you to give it a try (I also improved much the code and
> JSdocs,
> > > so happy to get any PRs improving it).
> > >
> > > We are going to try it on Beam next, but feel free to try it out on
> your
> > > own.
> > >
> > > J.
> > >
> > >
> > >
> > > On Thu, Oct 29, 2020 at 11:31 AM Jarek Potiuk <
> jarek.pot...@polidea.com>
> > > wrote:
> > >
> > >> Hello,
> > >>
> > >> Together with Tobiasz we've just merged and started to test
> extensively
> > >> the optimization in Airflow. It works slightly differently than
> initially
> > >> planned - we came up with a few more optimizations. It turned out
> that in
> > >> most cases we actually do not need to run full matrix builds and we
> can
> > >> automatically determine those cases that need "full matrix" check.
> Still we
> > >> left the final decisions to committers on that.
> > >>
> > >> This will likely bring the strain from Airflow by a further 50% - 60%
> > >> overall (back-of-the-envelope calculation :)
> > >>
> > >> Here is the description of how it works:
> > >>
> > >> * All the PRs before approval will run either a "small" set of tests
> > >> (only default matrix values) or not at all (in case of doc-only
> changes).
> > >> We have a 'selective checks' script that determines that - based on
> the
> > >> files changed in the PR.
> > >>
> > >> * Then really interesting things happen after PR gets approval from
> the
> > >> committer:
> > >>
> > >> 1) The doc-only tests will get "*okay to merge*" label and this
> comment: *"The
> > >> PR is ready to be merged. No tests are needed!"* :
> > >> https://pasteboard.co/JxMslfA.png
> > >> 2) If the PR is not changing "Core" of airflow, the PR will get *"okay
> > >> to merge" *label and this comment: *"The PR should be OK to be merged
> > >> with just subset of tests as it does not modify Core of Airflow. The
> > >> committers might merge it or can add a label 'full tests needed' and
> re-run
> > >> it to run all tests if they see it is needed!". *
> > >> https://pasteboard.co/JxMsDaC.png
> > >> 3) If the PR is changing "Core" of airflow, the PR will get *"full
> tests
> > >> needed" *label and this comment:  *"This PR requires a full set of
> > >> tests. Please rebase the PR on the latest master or ask a committer to
> > >> re-run the tests". And the "okay to test" label should change to "full
> > >> tests needed"*. We will add the "in-progress" check, to make the
> button
> > >> 'gray' until it gets rebased and the full set of tests will run for
> it. The
> > >> PRs with this label will run "full matrix" tests.
> > >> https://pasteboard.co/JxMsKBM.png
> > >>
> > >> I am going to provide some instructions on how to apply it to any
> other
> > >> project, but I want to make sure we iron-out all issues and maybe try
> it in
> > >> Apache Beam with Tobiasz first.
> > >>
> > >> However, if you want to try it on your own, here is a bunch of links
> you
> > >> can follow to see how we've done it:
> > >>
> > >> * Get Workflow Origin Action -
> > >> https://github.com/potiuk/get-workflow-origin - retrieves PR, labels
> in
> > >> workflow_runs
> > >> * Label When Approved Action -
> > >> https://github.com/TobKed/label-when-approved-action/ - labels PR
> when
> > >> approved/disapproved accordingly and adds appropriate comm
> > >> * Triggering action for approval:
> > >> https://github.com/TobKed/label-when-approved-action/
> > >> * Workflow run action for approval (needed in order to have WRITE
> token)
> > >> https://github.com/TobKed/label-when-approved-action/
> > >> * "Selective checks" script that determines which part of the code
> change
> > >> to determine which of the above cases are applicable and calculates
> > >> dynamically the matrix of CI run accordingly:
> > >>
> https://github.com/apache/airflow/blob/master/scripts/ci/selective_ci_checks.sh
> > >>
> > >> J.
> > >>
> > >>
> > >> On Tue, Oct 27, 2020 at 9:16 PM Jarek Potiuk <
> jarek.pot...@polidea.com>
> > >> wrote:
> > >>
> > >>> BTW. And we are even stuck a bit with hosted runner - we just secured
> > >>> some funds, but after closer inspection this is awfully dangerous to
> run
> > >>> self-hosted runners on GitHub and official documentation from GitHub
> says
> > >>> we should not do it:
> > >>>
> > >>>
> > >>>
> https://docs.github.com/en/free-pro-team@latest/actions/hosting-your-own-runners/about-self-hosted-runners#self-hosted-runner-security-with-public-repositories
> > >>>
> > >>> So we are a bit stuck now and honestly, I am not sure we have any
> viable
> > >>> option now. So some help from the Infra and guidance is I think
> necessary.
> > >>>
> > >>> J.
> > >>>
> > >>>
> > >>> On Tue, Oct 27, 2020 at 9:14 PM Jarek Potiuk <
> jarek.pot...@polidea.com>
> > >>> wrote:
> > >>>
> > >>>> I tried to get this info from infrastructure but I honestly have no
> > >>>> idea - maybe someone from the INFRA team could let us know about
> the stats
> > >>>> (that was the case with Travis previously that we got some usage
> stats for
> > >>>> all projects).
> > >>>>
> > >>>> I do agree, that it is not sustainable at all. I'd love some
> clarity on
> > >>>> that. So far seems that there are a few projects that started using
> it
> > >>>> months ago and all of a sudden we've started to hit the limits.
> > >>>>
> > >>>> But I am afraid no one but the infra team can have any stats on it
> > >>>> (maybe even they do not have it).
> > >>>>
> > >>>> J.
> > >>>>
> > >>>>
> > >>>> On Tue, Oct 27, 2020 at 9:09 PM Chesnay Schepler <
> ches...@apache.org>
> > >>>> wrote:
> > >>>>
> > >>>>> How many projects are already using GitHub actions?
> > >>>>>
> > >>>>> It seems to be fairly new, and I find it concerning that we are
> > >>>>> already
> > >>>>> hitting the limit. If only few projects are using it currently,
> then
> > >>>>> it
> > >>>>> may be futile to rely on it because it would inevitably collapse if
> > >>>>> more
> > >>>>> projects were to use it.
> > >>>>> Unless there is some project using up most of the allocated
> minutes,
> > >>>>> similarly to what is(was?) happening with Travis.
> > >>>>>
> > >>>>> Alternatively, maybe GitHub actions should be reserved for quick
> > >>>>> checks
> > >>>>> and not actual CI pipelines.
> > >>>>>
> > >>>>> On 10/27/2020 8:53 PM, Jarek Potiuk wrote:
> > >>>>> > Hello everyone,
> > >>>>> >
> > >>>>> > The queues have become unbearable during the last two days. This
> is
> > >>>>> not
> > >>>>> > sustainable long-term. I lost hope a bit that any kind of
> > >>>>> optimization will
> > >>>>> > help but we are trying anyway.
> > >>>>> >
> > >>>>> > However, we are still trying :)
> > >>>>> >
> > >>>>> > We are just about to merge and verify the PR that implements this
> > >>>>> "limited
> > >>>>> > matrix tests before approval solution. We implemented it with
> > >>>>> Tobiasz who
> > >>>>> > volunteered to help and once it works we will try to apply it to
> > >>>>> Apache
> > >>>>> > Beam as well. When it works we will be happy to share the
> solution
> > >>>>> with
> > >>>>> > everyone.
> > >>>>> >
> > >>>>> > You can read more on how it works (with screenshot) here:
> > >>>>> >
> https://github.com/apache/airflow/pull/11828#issuecomment-717485938
> > >>>>> >
> > >>>>> > We could not implement automated workflow run due to limitations
> of
> > >>>>> GitHub
> > >>>>> > Actions (you cannot rerun successful workflow via API) but we
> came
> > >>>>> up with
> > >>>>> > something even more flexible:
> > >>>>> >
> > >>>>> > 1) PRs before approval only run one default combination of matrix
> > >>>>> tests.
> > >>>>> > This in our case will save 50%-60% of build time for most PRs.
> > >>>>> > 2) Once PR gets approved, it gets "okay to test" label and
> comment
> > >>>>> in PR
> > >>>>> > "The PR is ready to run all tests! Please rebase it to latest
> master
> > >>>>> or ask
> > >>>>> > committer to re-run it". It also gets an "in-progress" check in
> the
> > >>>>> PR
> > >>>>> > which turns the green "merge" button into a gray one to avoid
> > >>>>> accidental
> > >>>>> > merges. But commiter can still decide to merge at this point (for
> > >>>>> small,
> > >>>>> > low-risk changes).
> > >>>>> > 3) Once the PR gets rebased or re-run it runs full-matrix tests
> and
> > >>>>> > everything follows as usual
> > >>>>> > 4) We also have a special treatment for the case that Allen
> mentioned
> > >>>>> > earlier - the "small" "doc-only" PRs have a special treatment,
> after
> > >>>>> > approval, they get immediately "okay to merge" label and "The PR
> is
> > >>>>> ready
> > >>>>> > to be merged. No tests are needed!."  comment is added by the bot
> > >>>>> >
> > >>>>> > Again - once we find it working, I am happy to describe how to
> add
> > >>>>> it to
> > >>>>> > your GitHub actions and share such information with all other
> > >>>>> projects
> > >>>>> > using Github Actions.
> > >>>>> >
> > >>>>> > J.
> > >>>>> >
> > >>>>> >
> > >>>>> > On Fri, Oct 23, 2020 at 5:29 PM Jarek Potiuk <
> > >>>>> jarek.pot...@polidea.com>
> > >>>>> > wrote:
> > >>>>> >
> > >>>>> >> Started working on this mini-solution for limiting non-approved
> > >>>>> >> matrix builds.
> > >>>>> >>
> > >>>>> >> I am working on it with a colleague of mine -  Tobiasz - who
> worked
> > >>>>> on
> > >>>>> >> Apache Beam infrastructure, so we might test it on two projects.
> > >>>>> >>
> > >>>>> >> I will let you know the progress
> > >>>>> >>
> > >>>>> >> Mini-design doc here:
> > >>>>> >>
> > >>>>> >>
> > >>>>>
> https://docs.google.com/document/d/16rwyCfyDpKWN-DrLYbhjU0B1D58T1RFYan5ltmw4DQg/edit#
> > >>>>> >>
> > >>>>> >> J.
> > >>>>> >>
> > >>>>> >>
> > >>>>> >> On Thu, Oct 22, 2020 at 10:03 PM Jarek Potiuk <
> > >>>>> jarek.pot...@polidea.com>
> > >>>>> >> wrote:
> > >>>>> >>
> > >>>>> >>>
> > >>>>> >>> I believe this problem cannot be really handled by one project,
> > >>>>> but I
> > >>>>> >>> have a proposal.
> > >>>>> >>>
> > >>>>> >>> I looked at the common pattern we have in the ASF projects and
> I
> > >>>>> think
> > >>>>> >>> there is a way that we can help each other.
> > >>>>> >>>
> > >>>>> >>> I think most of the problems come from many PRs submitted that
> run
> > >>>>> a
> > >>>>> >>> matrix of tests before even commiters have time to take a look
> at
> > >>>>> them. We
> > >>>>> >>> discussed how we can approach it and I think I have a proposal
> > >>>>> that we can
> > >>>>> >>> all adopt in the ASF projects. Something that will be easy to
> > >>>>> implement and
> > >>>>> >>> will not impact the process we have. I would love to hear your
> > >>>>> thoughts
> > >>>>> >>> about it - before I start implementing it :).
> > >>>>> >>>
> > >>>>> >>> My proposal is to create a GitHub Action that will allow to run
> > >>>>> only a
> > >>>>> >>> subset of "matrix" test for PRs that are not yet approved by
> > >>>>> committers.
> > >>>>> >>> This should be possible using the current GitHub Actions
> workflows
> > >>>>> and API.
> > >>>>> >>> It boils down to:
> > >>>>> >>> * If PR is not approved, only a subset of matrix (default value
> > >>>>> for each
> > >>>>> >>> matrix component) are run
> > >>>>> >>> * the committers can see the "green" mark of test passing and
> make
> > >>>>> a
> > >>>>> >>> review
> > >>>>> >>> * once the PR gets approved, automatically a new "full matrix"
> > >>>>> check is
> > >>>>> >>> triggered
> > >>>>> >>> * all future approved PR pushes run the "full matrix" check
> > >>>>> >>>
> > >>>>> >>> I think that might significantly reduce the strain on GA jobs
> we
> > >>>>> run, and
> > >>>>> >>> it should very naturally fit in the typical PR workflow for ASF
> > >>>>> projects.
> > >>>>> >>> But I am only guessing now, so I would love to hear what you
> think:
> > >>>>> >>>
> > >>>>> >>> I am willing (together with my colleagues) to implement this
> > >>>>> action and
> > >>>>> >>> add it to Apache Airflow to check it. Together with the
> > >>>>> >>> "cancel-workflow-action" I developed and we deployed it at
> Apache
> > >>>>> Airflow
> > >>>>> >>> and Apache Beam, I think that might help to keep the CI
> "pressure"
> > >>>>> much
> > >>>>> >>> lower - independently if any of the projects manages to get
> their
> > >>>>> credit
> > >>>>> >>> sponsors. I think I can have a working Action/implementation
> done
> > >>>>> over the
> > >>>>> >>> weekend:
> > >>>>> >>>
> > >>>>> >>> More details about the proposal here:
> > >>>>> >>>
> > >>>>>
> https://lists.apache.org/thread.html/r6f6f1420aa6346c9f81bf9d9fff8816e860e49224eb02e25d856c249%40%3Cdev.airflow.apache.org%3E
> > >>>>> >>>
> > >>>>> >>> J,
> > >>>>> >>>
> > >>>>> >>> On Mon, Oct 19, 2020 at 5:28 PM Jarek Potiuk <
> > >>>>> jarek.pot...@polidea.com>
> > >>>>> >>> wrote:
> > >>>>> >>>
> > >>>>> >>>> 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/>
> > >>>>> >>>>
> > >>>>> >>>>
> > >>>>> >>> --
> > >>>>> >>>
> > >>>>> >>> 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/>
> > >>
> > >>
> > >
> > > --
> > >
> > > 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