Thank you Chaitanya and Marco for helping the MXNet community. On Mon, Mar 23, 2020 at 12:56 PM Marco de Abreu <marco.g.ab...@gmail.com> wrote:
> Sure, already done. > > -Marco > > On Mon, Mar 23, 2020 at 8:53 PM Chaitanya Bapat <chai.ba...@gmail.com> > wrote: > > > Hello, > > Update: Apache Infra Ticket for MXNet Bot > > Thanks once again, Marco for opening the ticket. But turns out, Apache > > Infra folks closed it stating: "Security concerns around allowing unknown > > person to submit PR and run our hardware". Furthermore, it goes onto > state > > that bot circumvents the dependence on Jenkins Admins which is like > solving > > a problem that doesn't exist. > > > > I sense there is some confusion in the communication (maybe on my part). > It > > turns out the security concerns aren't actually correct. > > > > 1. Unknown person can submit a PR (before & after bot proposal), and run > > our hardware (pre as well as post bot). > > 2. Code should be reviewed by somebody with an ICLA on file. This doesn't > > change either. Prior to merging a PR, code has to be approved by a > > committer just like before. > > Overall it looks like the job of the bot isn't clear to folks in Apache > > Infra. Bot simply is a means for triggering CI (which could be done > > manually by Log In to Jenkins -> PR -> Job -> Build) and doesn't quite > > tweak with merging procedure. Yes, only addition is now unknown person > (PR > > Author) can trigger CI with a message (but that was possible anyway by > > pushing a commit. Bot just prevents users from pushing empty commits and > > building entire suite). > > > > As can be seen from last 10 open PRs as of Monday 23rd March, 12pm PT > most > > PRs fail on 1/2 jobs. In such a scenario, the proposed MXNet bot would > come > > in handy for just invoking CI on that specific build (instead of a > > non-committer PR Author to push empty commit : hurting on the resource, > > time & cost considerations apart from undesirable dev experience) > > > > @Marco Since I am a non-committer, I guess these 2 clarifications need to > > be conveyed to the Apache Infra by someone with Committer access. > > > > What do you think? > > > > Thanks, > > Chai > > > > On Sat, 21 Mar 2020 at 16:08, Marco de Abreu <marco.g.ab...@gmail.com> > > wrote: > > > > > Hello, > > > > > > the ticket has been created: > > > https://issues.apache.org/jira/browse/INFRA-20005 > > > > > > Best regards, > > > Marco > > > > > > On Thu, Mar 19, 2020 at 11:49 PM Marco de Abreu < > marco.g.ab...@gmail.com > > > > > > wrote: > > > > > > > Sounds like a good plan! > > > > > > > > Please send me the URL (please make sure it's backed by DNS and not > > just > > > > the gateway URL) of the webhook handler, GitHub events you're > > interested > > > in > > > > and the shared secret in a private email to my personal email > address. > > I > > > > will then create the ticket with Apache infra. > > > > > > > > -Marco > > > > > > > > Chaitanya Bapat <chai.ba...@gmail.com> schrieb am Do., 19. März > 2020, > > > > 23:07: > > > > > > > >> @Marco Alright, it makes total sense to test out the Bot feature > > > alongside > > > >> auto-trigger as a transition. > > > >> > > > >> Path Forward: > > > >> 1. Setup MXNet Bot on apache/incubator-mxnet repo (GitHub WebHook > and > > > >> Infra) > > > >> 2. We don't turn off automatic trigger of PR builds for now. > > > >> 3. Hopefully, bot is used by developers to trigger specific jobs > > > >> 4. Later on (say around April 20), let's discuss the possibility of > > > >> switching off auto-trigger (with appropriate data) if it makes > sense. > > > >> Thanks Marco for volunteering to help enable the web hook on > > > >> apache/incubator-mxnet. Let me know if we can sync up on Slack > channel > > > to > > > >> get the ball rolling. > > > >> > > > >> Thanks once again for the entire community to step in and help try > out > > > >> this > > > >> Bot. > > > >> Chai > > > >> > > > >> On Wed, 18 Mar 2020 at 17:07, Marco de Abreu < > marco.g.ab...@gmail.com > > > > > > >> wrote: > > > >> > > > >> > Hi, that's correct. But as stated previously, it's not an option > to > > > >> remove > > > >> > the hook. For now, I'd like to see how the system behaves while > it's > > > >> > optional. Later on, we can talk about revisiting this decision. > But > > to > > > >> me > > > >> > it's not an option to deploy an entirely new system and approach > > > without > > > >> > having a transition or even a timeframe in which we are able to > fall > > > >> back. > > > >> > > > > >> > I'm happy to support the deployment of the bot and add an > additional > > > >> > webhook to enable it's functionality to support selective > triggering > > > by > > > >> PR > > > >> > authors and committers, but I will not support the disabling of > > > >> automatic > > > >> > triggering of branches or PRs. > > > >> > > > > >> > -Marco > > > >> > > > > >> > Chaitanya Bapat <chai.ba...@gmail.com> schrieb am Mi., 18. März > > 2020, > > > >> > 21:00: > > > >> > > > > >> > > Hey Marco, > > > >> > > > > > >> > > I thought currently every commit on PR and master triggers CI > > > >> > > because > > > >> > > a. github webhook points to Jenkins Server > > > >> > > b. GH Webhook events trigger builds on Jenkins for all commits > to > > > any > > > >> > > branch in apache/incubator-mxnet > > > >> > > may it be master/PR/non-PR > > > >> > > Reason: > > > >> > > Because all the 3 types of branches are discovered by Jenkins > > > (non-PR > > > >> > > (including master) and PR) > > > >> > > > > > >> > > Proposal: Remove GitHub WebHook to Jenkins and replace with GH > > > >> Webhook to > > > >> > > Lambda > > > >> > > But after I remove the github webhook that points to Jenkins : > > *N**o > > > >> > commit > > > >> > > will trigger Jenkins build by default* (as Jenkins wont receive > GH > > > >> > events) > > > >> > > Only those that Bot deems fit will be triggered (using Jenkins > API > > > >> > invoked > > > >> > > by Lambda). > > > >> > > Hence its needed to handle that case of master merge. > > > >> > > Am I understanding this correctly? > > > >> > > > > > >> > > On Wed, 18 Mar 2020 at 04:23, Marco de Abreu < > > > marco.g.ab...@gmail.com > > > >> > > > > >> > > wrote: > > > >> > > > > > >> > > > Thanks Chai, sounds good to me. Could you elaborate a bit on > the > > > >> point > > > >> > > > about triggering a CI run after the PR has been merged? We > > already > > > >> to > > > >> > > that > > > >> > > > automatically for the master, so what's the benefit to do it > > > twice? > > > >> > > > > > > >> > > > -Marco > > > >> > > > > > > >> > > > Chaitanya Bapat <chai.ba...@gmail.com> schrieb am Mi., 18. > März > > > >> 2020, > > > >> > > > 09:30: > > > >> > > > > > > >> > > > > Update: > > > >> > > > > > > > >> > > > > > we can ensure that all CI runs ran on the commit that > will > > be > > > >> > merged > > > >> > > > > @Sam Skalicky <samskali...@gmail.com> Branch Protection is > > > added > > > >> to > > > >> > > > public > > > >> > > > > MXNet repo. It ensures that for every PR to be merged, the > CI > > > >> passes. > > > >> > > All > > > >> > > > > the jobs selected "required" jobs will have to be green for > > the > > > >> PR to > > > >> > > be > > > >> > > > > merged. Ofcourse, users with "Adminstrator" access can merge > > > >> without > > > >> > it > > > >> > > > but > > > >> > > > > that's just a backdoor. It is the case now and will continue > > to > > > be > > > >> > the > > > >> > > > case > > > >> > > > > with the inclusion of Bot. > > > >> > > > > > > > >> > > > > > easily verify that the CI has executed all runs on the > > commit > > > >> that > > > >> > > will > > > >> > > > > be merged > > > >> > > > > GitHub UI shows all the jobs and the status corresponding to > > it > > > on > > > >> > > every > > > >> > > > > commit. That should suffice. For the merged commits, Repo -> > > > >> Commits > > > >> > -> > > > >> > > > > Commit ID (Status) can be tracked currently (only way that I > > > know > > > >> > of). > > > >> > > > > Moreover, it is beyond the scope of this project (and > possibly > > > >> out of > > > >> > > our > > > >> > > > > control since this is purely GitHub UI specific use-case). > > > >> > > > > > > > >> > > > > Thanks @przemyslaw for supporting the opt-in. > > > >> > > > > > > > >> > > > > Thanks everyone in the community for sharing concerns, > voicing > > > >> your > > > >> > > > opinion > > > >> > > > > and participating in the discussion. > > > >> > > > > Thanks to those who attended the demo last Friday. > > > >> > > > > > > > >> > > > > Action items from that discussion > > > >> > > > > 1. Handle master merge builds [Done] > > > >> > > > > Bot runs entire CI suite after the PR is merged and comments > > on > > > >> the > > > >> > PR > > > >> > > > > about the same. > > > >> > > > > Design decision : > > > >> > > > > MXNet Bot comment about master merge build on the *merge > > commit > > > vs > > > >> > PR*. > > > >> > > > > After the PR is merged, Bot runs entire CI and comments the > > > >> result of > > > >> > > CI > > > >> > > > > trigger on the PR (because it is easy to track on a PR > rather > > > than > > > >> > > > > commenting inside the merge commit) > > > >> > > > > > > > >> > > > > 2. Idempotent condition > > > >> > > > > In case of already running build, if an attempt is made to > > > >> retrigger > > > >> > > the > > > >> > > > > job then what should be the response > > > >> > > > > a. Not to re-trigger, let the ongoing build continue till > > > >> completion > > > >> > > > > b. End the ongoing build and re-trigger > > > >> > > > > c. Let the ongoing build continue, re-trigger new build > > > >> > > > > > > > >> > > > > From resource saving point of view, *c* looks costly and a > can > > > be > > > >> > > > > avoided/optimized by B. > > > >> > > > > In case when a re-trigger was started "erroneously" then > > killing > > > >> > > ongoing > > > >> > > > > build and re-trigger is a waste. > > > >> > > > > In case when ongoing build failed in one sub-part, then > > > >> re-triggering > > > >> > > is > > > >> > > > > justified. > > > >> > > > > Erroneous re-triggers would be less often while conscious > > > >> re-triggers > > > >> > > to > > > >> > > > > suppress failure is more common use-case. It looks like a > safe > > > >> > > assumption > > > >> > > > > to make given the trade-off. > > > >> > > > > [Open to debate] > > > >> > > > > > > > >> > > > > 3. Add security consideration [Use of secret manager, but > > > without > > > >> > > > > auto-rotation due to Jenkins manual config requirement] > [Done] > > > >> > > > > 4. New PR Instruction message by the Bot [Done] > > > >> > > > > Thanks to the suggestion of Leonard, supported by others. > I've > > > now > > > >> > > added > > > >> > > > > the feature where the Bot comments a help message. [For > > > reference > > > >> - > > > >> > > > > https://github.com/ChaiBapchya/incubator-mxnet/pull/52] > > > >> > > > > > > > >> > > > > Barring the opt-in vs opt-out debate & idempotency, > consensus > > > was > > > >> > > quickly > > > >> > > > > reached for the rest. > > > >> > > > > > > > >> > > > > In the coming days, I hope to roll-out this feature into > Prod > > > >> (public > > > >> > > > > MXNet) for all devs to use. > > > >> > > > > > > > >> > > > > Thanks, > > > >> > > > > Chai > > > >> > > > > > > > >> > > > > On Mon, 16 Mar 2020 at 11:57, Marco de Abreu < > > > >> > marco.g.ab...@gmail.com> > > > >> > > > > wrote: > > > >> > > > > > > > >> > > > > > Well that's generally a problem with a deferred CI > approach > > > (CI > > > >> is > > > >> > > run > > > >> > > > at > > > >> > > > > > commit and not at merge time). This can either be solved > > > through > > > >> > the > > > >> > > > > other > > > >> > > > > > proposal that's currently on dev@, by having a bot which > > does > > > >> > merges > > > >> > > > by > > > >> > > > > > having a global lock and a merge queue or by accepting the > > > >> issue. > > > >> > > > Reality > > > >> > > > > > right now is that we're running that model where two PRs > > which > > > >> are > > > >> > > > merged > > > >> > > > > > in parallel might break one another. One thing to consider > > > >> though > > > >> > is > > > >> > > > that > > > >> > > > > > this breakage would have to be introduced in two separate > > > parts > > > >> > since > > > >> > > > > > otherwise there'd be merge conflicts. I think we had that > > > >> situation > > > >> > > > twice > > > >> > > > > > so far and the result was a quick revert, so I'd say that > > > it's a > > > >> > > > problem > > > >> > > > > > that can happily be accepted. All other solutions > basically > > > >> require > > > >> > > > some > > > >> > > > > > form of single-threaded and globally locked solution which > > > >> limits > > > >> > us > > > >> > > in > > > >> > > > > > scalability. I'd recommend to just accept that risk and > > revert > > > >> a PR > > > >> > > in > > > >> > > > > case > > > >> > > > > > it actually had a conflict. > > > >> > > > > > > > > >> > > > > > -Marco > > > >> > > > > > > > > >> > > > > > On Mon, Mar 16, 2020 at 6:29 PM Skalicky, Sam > > > >> > > > <sska...@amazon.com.invalid > > > >> > > > > > > > > >> > > > > > wrote: > > > >> > > > > > > > > >> > > > > > > We probably need some way to track which CI runs ran for > > > which > > > >> > > commit > > > >> > > > > > too, > > > >> > > > > > > that way we can ensure that all CI runs ran on the > commit > > > that > > > >> > will > > > >> > > > be > > > >> > > > > > > merged. Maybe the bot can comment with the commit hash > > when > > > >> > users > > > >> > > > > > command > > > >> > > > > > > it to do something. Although since users can trigger > > > >> individual > > > >> > CI > > > >> > > > runs > > > >> > > > > > its > > > >> > > > > > > possible to have some commits run some CI runs but not > > > >> others. We > > > >> > > > need > > > >> > > > > > some > > > >> > > > > > > way to easily verify that the CI has executed all runs > on > > > the > > > >> > > commit > > > >> > > > > that > > > >> > > > > > > will be merged. > > > >> > > > > > > > > > >> > > > > > > Sam > > > >> > > > > > > > > > >> > > > > > > > On Mar 13, 2020, at 8:28 PM, Przemysław Trędak < > > > >> > > ptre...@apache.org > > > >> > > > > > > > >> > > > > > > wrote: > > > >> > > > > > > > > > > >> > > > > > > > CAUTION: This email originated from outside of the > > > >> > organization. > > > >> > > Do > > > >> > > > > not > > > >> > > > > > > click links or open attachments unless you can confirm > the > > > >> sender > > > >> > > and > > > >> > > > > > know > > > >> > > > > > > the content is safe. > > > >> > > > > > > > > > > >> > > > > > > > > > > >> > > > > > > > > > > >> > > > > > > > I personally like the idea of opt-in more than > opt-out: > > > >> > > > > > > > - ultimately PR author wants the PR to be merged so > they > > > (or > > > >> > > > > committer > > > >> > > > > > > reviewing the PR) will trigger the CI > > > >> > > > > > > > - if it is easy to trigger the PR via the bot command > > then > > > >> the > > > >> > > > amount > > > >> > > > > > of > > > >> > > > > > > work per PR should be less than with opt-out (since most > > of > > > >> the > > > >> > > > commits > > > >> > > > > > > should then be marked as [skip ci] or something similar > > > >> > > > > > > > > > > >> > > > > > > > +1 to the bot making a comment on each new PR with its > > > >> commands > > > >> > > > (and > > > >> > > > > > > also explaining, or at least giving links to the general > > PR > > > >> > process > > > >> > > > so > > > >> > > > > > new > > > >> > > > > > > PR authors are not lost). Maybe we could make the bot > > > >> recognize > > > >> > if > > > >> > > > the > > > >> > > > > PR > > > >> > > > > > > author is new or existing contributor and offer advice > > based > > > >> on > > > >> > > that? > > > >> > > > > > > > > > > >> > > > > > > > Thanks > > > >> > > > > > > > Przemek > > > >> > > > > > > > > > > >> > > > > > > > On 2020/03/13 22:06:58, Marco de Abreu < > > > >> > marco.g.ab...@gmail.com> > > > >> > > > > > wrote: > > > >> > > > > > > >> Hi, > > > >> > > > > > > >> > > > >> > > > > > > >> since it's no longer necessary to push a new commit > to > > > >> trigger > > > >> > > CI, > > > >> > > > > it > > > >> > > > > > > will > > > >> > > > > > > >> already reduce the costs. But to me, requiring an > > action > > > to > > > >> > > enable > > > >> > > > > CI > > > >> > > > > > > after > > > >> > > > > > > >> a PR has been created initially, is a no go. User can > > opt > > > >> out > > > >> > of > > > >> > > > CI, > > > >> > > > > > but > > > >> > > > > > > >> the default has to be CI being triggered > automatically > > > for > > > >> > every > > > >> > > > > > commit > > > >> > > > > > > >> unless specifically disabled by a participant. I'm > also > > > >> fine > > > >> > > with > > > >> > > > > > > >> triggering certain additional jobs (think about > > running a > > > >> > > nightly > > > >> > > > > job > > > >> > > > > > > upon > > > >> > > > > > > >> request for a PR) to require a manual step, but the > PR > > > >> > > validation > > > >> > > > > > > pipelines > > > >> > > > > > > >> have to run automatically. Every check that is marked > > as > > > >> > > > "Required" > > > >> > > > > in > > > >> > > > > > > >> GitHub has to be automatically kicked off. > > > >> > > > > > > >> > > > >> > > > > > > >> -Marco > > > >> > > > > > > >> > > > >> > > > > > > >> On Fri, Mar 13, 2020 at 9:50 PM Chaitanya Bapat < > > > >> > > > > chai.ba...@gmail.com > > > >> > > > > > > > > > >> > > > > > > >> wrote: > > > >> > > > > > > >> > > > >> > > > > > > >>> Firstly, > > > >> > > > > > > >>> Sorry I missed out on attaching the mail thread that > > was > > > >> sent > > > >> > > on > > > >> > > > > 12th > > > >> > > > > > > >>> February for notifying the community of the upcoming > > > >> changes > > > >> > to > > > >> > > > the > > > >> > > > > > > MXNet > > > >> > > > > > > >>> CI > > > >> > > > > > > >>> For reference : > > > >> > > > > > > >>> > > > >> > > > > > > >>> > > > >> > > > > > > > > > >> > > > > > > > > >> > > > > > > > >> > > > > > > >> > > > > > >> > > > > >> > > > > > > https://lists.apache.org/thread.html/r09a6ab2803a996fc80e00fe39ed312fa4865e8805e08df847f1addad%40%3Cdev.mxnet.apache.org%3E > > > >> > > > > > > >>> > > > >> > > > > > > >>> Now to the questions, > > > >> > > > > > > >>>> Is it possible for re-triggering a single job to be > > > >> abused? > > > >> > > > > > > >>> @Tao In the case when a user re-triggers a single > job > > > >> > multiple > > > >> > > > > times, > > > >> > > > > > > that > > > >> > > > > > > >>> will be visible in the PR conversation thread. A > > > >> committer, > > > >> > > even > > > >> > > > > > after > > > >> > > > > > > he > > > >> > > > > > > >>> has approved the PR before, generally takes a look > at > > > the > > > >> > final > > > >> > > > > state > > > >> > > > > > > of > > > >> > > > > > > >>> the PR before merging. Would it be fair to assume > the > > > >> > committer > > > >> > > > > could > > > >> > > > > > > take > > > >> > > > > > > >>> the multiple re-trigger of a single job into account > > > >> before > > > >> > > > > merging? > > > >> > > > > > > The > > > >> > > > > > > >>> committer then has the option to invoke `@mxnet-bot > > run > > > ci > > > >> > > [all] > > > >> > > > ` > > > >> > > > > to > > > >> > > > > > > >>> trigger the entire build pipeline one last to > counter > > > the > > > >> > > abuse. > > > >> > > > > This > > > >> > > > > > > is > > > >> > > > > > > >>> aligned with what @Leonard said. > > > >> > > > > > > >>> > > > >> > > > > > > >>> @Sandeep Thanks a lot for collecting and sharing > > > valuable > > > >> > data. > > > >> > > > I'd > > > >> > > > > > > concur > > > >> > > > > > > >>> with the opinion that given the existing things > > > >> committers & > > > >> > PR > > > >> > > > > > Authors > > > >> > > > > > > >>> take care of, invoking CI shouldn't be that big of > an > > > >> > > additional > > > >> > > > > > > burden. > > > >> > > > > > > >>> > > > >> > > > > > > >>> @Marco With the opt-out, the onus remains on the PR > > > >> Author. > > > >> > It > > > >> > > > > > doesn't > > > >> > > > > > > help > > > >> > > > > > > >>> reduce the resource usage. Hence, it was suggested > to > > > >> switch > > > >> > to > > > >> > > > > > > >>> opt-in. @Leo's suggestion for proactive commenting > on > > > the > > > >> > part > > > >> > > of > > > >> > > > > bot > > > >> > > > > > > makes > > > >> > > > > > > >>> sense and is doable. > > > >> > > > > > > >>> > > > >> > > > > > > >>> Default : opt-out and User initiated opt-in (with > > > >> addressing > > > >> > > > Leo's > > > >> > > > > > fix > > > >> > > > > > > for > > > >> > > > > > > >>> the usability issue you correctly pointed out ) > > > >> > > > > > > >>> @Marco How does this sound to you? > > > >> > > > > > > >>> > > > >> > > > > > > >>> Again, thank you all for chiming in and voicing your > > > >> opinion. > > > >> > > > > > > Appreciate > > > >> > > > > > > >>> it. > > > >> > > > > > > >>> We can take ahead these discussions in today's demo > > > >> meeting. > > > >> > > > > [Design > > > >> > > > > > > Doc > > > >> > > > > > > >>> < > > > >> > > https://cwiki.apache.org/confluence/display/MXNET/MXNet+CI+Bot > > > >> > > > >] > > > >> > > > > > > [Demo > > > >> > > > > > > >>> Video <https://www.youtube.com/watch?v=gfOGwZId8aU > >] > > > >> > > > > > > >>> > > > >> > > > > > > >>> Thanks, > > > >> > > > > > > >>> Chai > > > >> > > > > > > >>> > > > >> > > > > > > >>> On Fri, 13 Mar 2020 at 12:34, Marco de Abreu < > > > >> > > > > > marco.g.ab...@gmail.com> > > > >> > > > > > > >>> wrote: > > > >> > > > > > > >>> > > > >> > > > > > > >>>> I'd recommend that the bot makes an initial comment > > > when > > > >> a > > > >> > PR > > > >> > > > gets > > > >> > > > > > > opened > > > >> > > > > > > >>>> and informs the users of its commands. It then > tells > > > the > > > >> > user > > > >> > > > the > > > >> > > > > > > commend > > > >> > > > > > > >>>> to opt out of CI. > > > >> > > > > > > >>>> > > > >> > > > > > > >>>> -Marco > > > >> > > > > > > >>>> > > > >> > > > > > > >>>> Lausen, Leonard <lau...@amazon.com.invalid> > schrieb > > am > > > >> Fr., > > > >> > > 13. > > > >> > > > > > März > > > >> > > > > > > >>> 2020, > > > >> > > > > > > >>>> 20:27: > > > >> > > > > > > >>>> > > > >> > > > > > > >>>>> On opt-out: People may be unaware of opt-out would > > not > > > >> use > > > >> > > it. > > > >> > > > > > There > > > >> > > > > > > is > > > >> > > > > > > >>>> no > > > >> > > > > > > >>>>> incentive to use opt-out, as the PR author doesn't > > pay > > > >> any > > > >> > > > money > > > >> > > > > > for > > > >> > > > > > > CI > > > >> > > > > > > >>>>> run. > > > >> > > > > > > >>>>> > > > >> > > > > > > >>>>> I agree with Marco though that opt-in alone may > > cause > > > >> > > usability > > > >> > > > > > > issues, > > > >> > > > > > > >>>> as > > > >> > > > > > > >>>>> contributors may not be aware of how to trigger > the > > > CI. > > > >> > > > > > > >>>>> One solution is that the bot proactively comments > on > > > >> the PR > > > >> > > and > > > >> > > > > > > reminds > > > >> > > > > > > >>>> the > > > >> > > > > > > >>>>> author to trigger running CI once the author deems > > the > > > >> PR > > > >> > > > ready. > > > >> > > > > > > >>>>> > > > >> > > > > > > >>>>> But even if we choose opt-out, the bot will still > > add > > > a > > > >> lot > > > >> > > of > > > >> > > > > > value, > > > >> > > > > > > >>> as > > > >> > > > > > > >>>> PR > > > >> > > > > > > >>>>> authors can retrigger single jobs that have failed > > due > > > >> to > > > >> > > > > > flakiness. > > > >> > > > > > > >>>>> > > > >> > > > > > > >>>>>> Is it possible for re-triggering a single job to > be > > > >> > abused? > > > >> > > > For > > > >> > > > > > > >>>> example, > > > >> > > > > > > >>>>>> the author spends two days re-triggering a flaky > > job > > > to > > > >> > make > > > >> > > > it > > > >> > > > > > > pass. > > > >> > > > > > > >>>>> > > > >> > > > > > > >>>>> Yes, this is possible. I suggest the committer who > > > >> likes to > > > >> > > > > merge a > > > >> > > > > > > PR > > > >> > > > > > > >>>>> needs to > > > >> > > > > > > >>>>> make a good judgement here if a PR is abusing the > > > >> feature, > > > >> > > and > > > >> > > > if > > > >> > > > > > so, > > > >> > > > > > > >>>>> retrigger > > > >> > > > > > > >>>>> all CI runs. > > > >> > > > > > > >>>>> > > > >> > > > > > > >>>>> Best regards > > > >> > > > > > > >>>>> Leonard > > > >> > > > > > > >>>>> > > > >> > > > > > > >>>>> On Fri, 2020-03-13 at 08:07 +0100, Marco de Abreu > > > wrote: > > > >> > > > > > > >>>>>> Thanks for the data Sandeep. In these cases it > > sounds > > > >> like > > > >> > > it > > > >> > > > > > would > > > >> > > > > > > >>>> have > > > >> > > > > > > >>>>>> rather been better when people explicitly turned > > off > > > >> CI in > > > >> > > > that > > > >> > > > > > > case. > > > >> > > > > > > >>>>>> What's the argument against an opt-out instead of > > an > > > >> > opt-in? > > > >> > > > > > > >>>>>> > > > >> > > > > > > >>>>>> My intention is that I consider it quite > cumbersome > > > to > > > >> > make > > > >> > > > it a > > > >> > > > > > > >>>>> *required* > > > >> > > > > > > >>>>>> step to always trigger CI manually, even if just > > > >> > submitting > > > >> > > a > > > >> > > > > > small > > > >> > > > > > > >>> PR. > > > >> > > > > > > >>>>> I'd > > > >> > > > > > > >>>>>> rather see people explicitly turning off CI if > they > > > >> > wouldn't > > > >> > > > > like > > > >> > > > > > to > > > >> > > > > > > >>>> use > > > >> > > > > > > >>>>> it > > > >> > > > > > > >>>>>> - and there's also the "draft" stage for a PR > which > > > >> some > > > >> > > > > > > contributors > > > >> > > > > > > >>>> are > > > >> > > > > > > >>>>>> using. > > > >> > > > > > > >>>>>> > > > >> > > > > > > >>>>>> With regards to WIP and do not review: I think > > these > > > >> are > > > >> > use > > > >> > > > > cases > > > >> > > > > > > >>>> where > > > >> > > > > > > >>>>>> you want CI feedback, as otherwise you wouldn't > > have > > > >> > opened > > > >> > > > the > > > >> > > > > > PR. > > > >> > > > > > > >>> If > > > >> > > > > > > >>>>> you > > > >> > > > > > > >>>>>> don't want human feedback and neither machine > > > feedback, > > > >> > why > > > >> > > > open > > > >> > > > > > the > > > >> > > > > > > >>> PR > > > >> > > > > > > >>>>> at > > > >> > > > > > > >>>>>> all? > > > >> > > > > > > >>>>>> > > > >> > > > > > > >>>>>> -Marco > > > >> > > > > > > >>>>>> > > > >> > > > > > > >>>>>> > > > >> > > > > > > >>>>>> sandeep krishnamurthy < > sandeep.krishn...@gmail.com > > > > > > >> > schrieb > > > >> > > > am > > > >> > > > > > Fr., > > > >> > > > > > > >>>> 13. > > > >> > > > > > > >>>>>> März 2020, 05:24: > > > >> > > > > > > >>>>>> > > > >> > > > > > > >>>>>>> I tried to gather some data for us to discuss > this > > > >> topic > > > >> > in > > > >> > > > > this > > > >> > > > > > > >>>>> thread. I > > > >> > > > > > > >>>>>>> tried to count number of un-necessary builds by > > > >> looking > > > >> > at > > > >> > > > most > > > >> > > > > > > >>>> recent > > > >> > > > > > > >>>>> (as > > > >> > > > > > > >>>>>>> of 12, March 9 PM PST) 50 PRs merged to master > and > > > 50 > > > >> > PRs. > > > >> > > > > > > >>>>>>> Identifying un-necessary builds is bit > > subjective. I > > > >> > tried > > > >> > > to > > > >> > > > > be > > > >> > > > > > > >>> more > > > >> > > > > > > >>>>>>> conservative where I didn't count a build as > > > >> un-necessary > > > >> > > if > > > >> > > > I > > > >> > > > > > was > > > >> > > > > > > >>> in > > > >> > > > > > > >>>>>>> doubt. Hence, I was not able to automate, but I > > made > > > >> an > > > >> > > > effort > > > >> > > > > to > > > >> > > > > > > >>> go > > > >> > > > > > > >>>>>>> through PRs manually and use below criteria to > > > >> identify > > > >> > > > > > > >>> un-necessary > > > >> > > > > > > >>>>>>> commits triggering the builds. > > > >> > > > > > > >>>>>>> > > > >> > > > > > > >>>>>>> 1. Explicitly marked as WIP / do not review > PR > > > >> > > > > > > >>>>>>> 2. Incremental WIP commit and finally > > commenting a > > > >> > commit > > > >> > > > > > > >>> “trigger > > > >> > > > > > > >>>>> CI” > > > >> > > > > > > >>>>>>> 3. Multiple commits to address all comments > from > > > >> single > > > >> > > > > review. > > > >> > > > > > > >>>>> This is > > > >> > > > > > > >>>>>>> assuming we see a comment, address them, > commit, > > > >> next > > > >> > the > > > >> > > > > > > >>>> following > > > >> > > > > > > >>>>>>> comment > > > >> > > > > > > >>>>>>> 4. Sequence of documentation only changes > > > >> > > > > > > >>>>>>> > > > >> > > > > > > >>>>>>> I found there were around 42 avoidable builds > from > > > >> most > > > >> > > > recent > > > >> > > > > 50 > > > >> > > > > > > >>>>> merged > > > >> > > > > > > >>>>>>> PRs and around 86 builds from recent 50 open > PRs. > > > >> > > > > > > >>>>>>> > > > >> > > > > > > >>>>>>> I synced up with other contributors (Joe Evans, > > > Chai) > > > >> > from > > > >> > > > > Amazon > > > >> > > > > > > >>> who > > > >> > > > > > > >>>>> is > > > >> > > > > > > >>>>>>> contributing to MXNet CI system. I was told that > > on > > > an > > > >> > > > average > > > >> > > > > it > > > >> > > > > > > >>>> costs > > > >> > > > > > > >>>>>>> around $84 per build and on an average 6 commits > > per > > > >> > merged > > > >> > > > PR > > > >> > > > > > (for > > > >> > > > > > > >>>>> year > > > >> > > > > > > >>>>>>> 2019). Going by that, it is approximately 1/6 > > builds > > > >> are > > > >> > > > > > avoidable. > > > >> > > > > > > >>>>> [100 / > > > >> > > > > > > >>>>>>> 300 + 300 ] > > > >> > > > > > > >>>>>>> > > > >> > > > > > > >>>>>>> > > > >> > > > > > > >>>>>>> Usability should be top most priority. But, > since > > > >> either > > > >> > a > > > >> > > > > > reviewer > > > >> > > > > > > >>>> or > > > >> > > > > > > >>>>> pr > > > >> > > > > > > >>>>>>> author can trigger the bot, is it really a > hurdle > > > for > > > >> pr > > > >> > > > author > > > >> > > > > > or > > > >> > > > > > > >>>>> reviewer > > > >> > > > > > > >>>>>>> to call a bot to trigger CI? Given that PR > author > > > and > > > >> > > > reviewer > > > >> > > > > is > > > >> > > > > > > >>>>> already > > > >> > > > > > > >>>>>>> actively commenting various details such as - PR > > > >> > > description, > > > >> > > > > > > >>> review > > > >> > > > > > > >>>>>>> comments and responses, adding labels etc. > > > >> > > > > > > >>>>>>> > > > >> > > > > > > >>>>>>> > > > >> > > > > > > >>>>>>> Me too curious to know the behavior for Tao's > > above > > > >> use > > > >> > > case. > > > >> > > > > > > >>>>>>> > > > >> > > > > > > >>>>>>> > > > >> > > > > > > >>>>>>> Best, > > > >> > > > > > > >>>>>>> > > > >> > > > > > > >>>>>>> Sandeep > > > >> > > > > > > >>>>>>> > > > >> > > > > > > >>>>>>> On Thu, Mar 12, 2020 at 7:18 PM Tao Lv < > > > >> > mutou...@gmail.com > > > >> > > > > > > >> > > > > > wrote: > > > >> > > > > > > >>>>>>> > > > >> > > > > > > >>>>>>>> Is it possible for re-triggering a single job > to > > be > > > >> > > abused? > > > >> > > > > For > > > >> > > > > > > >>>>> example, > > > >> > > > > > > >>>>>>>> the author spends two days re-triggering a > flaky > > > job > > > >> to > > > >> > > make > > > >> > > > > it > > > >> > > > > > > >>>>> pass. But > > > >> > > > > > > >>>>>>>> other jobs which have passed the validation may > > be > > > >> > broken > > > >> > > by > > > >> > > > > > > >>> other > > > >> > > > > > > >>>>>>> commits > > > >> > > > > > > >>>>>>>> during the two day without being noticed. And > > > finally > > > >> > the > > > >> > > PR > > > >> > > > > is > > > >> > > > > > > >>>>> merged > > > >> > > > > > > >>>>>>> with > > > >> > > > > > > >>>>>>>> underlying problems. > > > >> > > > > > > >>>>>>>> > > > >> > > > > > > >>>>>>>> On Fri, Mar 13, 2020 at 6:19 AM Marco de Abreu > < > > > >> > > > > > > >>>>> marco.g.ab...@gmail.com> > > > >> > > > > > > >>>>>>>> wrote: > > > >> > > > > > > >>>>>>>> > > > >> > > > > > > >>>>>>>>> In the end it only comes down to money, > > > considering > > > >> > that > > > >> > > > the > > > >> > > > > > > >>>>> system is > > > >> > > > > > > >>>>>>>> auto > > > >> > > > > > > >>>>>>>>> scaling, making the execution time constant. > > > >> > > > > > > >>>>>>>>> > > > >> > > > > > > >>>>>>>>> If we're trading money for usability, I > > certainly > > > >> would > > > >> > > > > prefer > > > >> > > > > > > >>>>>>> usability. > > > >> > > > > > > >>>>>>>>> I'd rather recommend to spend time on > > > parallelizing > > > >> > test > > > >> > > > > > > >>>> execution > > > >> > > > > > > >>>>> or > > > >> > > > > > > >>>>>>>>> getting rid of integration tests in the PR > stage > > > >> > instead > > > >> > > > > > > >>> reducing > > > >> > > > > > > >>>>> the > > > >> > > > > > > >>>>>>>> costs > > > >> > > > > > > >>>>>>>>> by making people not use it. But taking a step > > > back > > > >> to > > > >> > > > > > > >>> requiring > > > >> > > > > > > >>>>> people > > > >> > > > > > > >>>>>>>> to > > > >> > > > > > > >>>>>>>>> manually trigger CI again doesn't feel right. > > > >> > > > > > > >>>>>>>>> > > > >> > > > > > > >>>>>>>>> I'm happy to see that bot deployed, but I do > not > > > >> agree > > > >> > > with > > > >> > > > > > > >>>>> removing > > > >> > > > > > > >>>>>>> the > > > >> > > > > > > >>>>>>>>> auto trigger functionality for new commits. > > > >> > > > > > > >>>>>>>>> > > > >> > > > > > > >>>>>>>>> -Marco > > > >> > > > > > > >>>>>>>>> > > > >> > > > > > > >>>>>>>>> Chaitanya Bapat <chai.ba...@gmail.com> > schrieb > > am > > > >> Do., > > > >> > > 12. > > > >> > > > > > > >>> März > > > >> > > > > > > >>>>> 2020, > > > >> > > > > > > >>>>>>>>> 22:47: > > > >> > > > > > > >>>>>>>>> > > > >> > > > > > > >>>>>>>>>> @Marco Thanks for pointing that out. > > > >> > > > > > > >>>>>>>>>> Tomorrow i.e. Friday, March 13, 2020 at 3:00 > > PM - > > > >> 3:30 > > > >> > > PM > > > >> > > > in > > > >> > > > > > > >>>>>>>> (UTC-08:00) > > > >> > > > > > > >>>>>>>>>> Pacific Time (US & Canada). > > > >> > > > > > > >>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>> When do we expect this bot to be deployed? > > > >> > > > > > > >>>>>>>>>> @Lin If all goes well in the next week I can > > > >> deploy it > > > >> > > to > > > >> > > > > > > >>>> public > > > >> > > > > > > >>>>>>> Apache > > > >> > > > > > > >>>>>>>>>> (provided I get permissions from Apache > Infra) > > > >> > > > > > > >>>>>>>>>> > > > >> > > > > > > >>>>>>>>>> @Marco Thanks for your feedback. > > > >> > > > > > > >>>>>>>>>>> CI system has to support the community > without > > > >> > > requiring > > > >> > > > > > > >>>>> people to > > > >> > > > > > > >>>>>>>>>> constantly shepherd every single run > > > >> > > > > > > >>>>>>>>>> We have data for the number of times CI was > > > >> triggered > > > >> > > > > > > >>>>> unnecessarily > > > >> > > > > > > >>>>>>>> which > > > >> > > > > > > >>>>>>>>>> includes > > > >> > > > > > > >>>>>>>>>> - Entire build triggered instead of specific > > > build > > > >> > > > > > > >>>>>>>>>> - CI triggered when PR is still work in > > progress > > > or > > > >> > not > > > >> > > > yet > > > >> > > > > > > >>>> ready > > > >> > > > > > > >>>>>>> (say > > > >> > > > > > > >>>>>>>> - > > > >> > > > > > > >>>>>>>>>> intermediate commits) > > > >> > > > > > > >>>>>>>>>> At the end its a trade-off > > > >> > > > > > > >>>>>>>>>> Money, Resources, Time to build for each and > > > every > > > >> > > commit > > > >> > > > vs > > > >> > > > > > > >>>>> Pain of > > > >> > > > > > > >>>>>>>>>> triggering builds > > > >> > > > > > > >>>>>>>>>> > > > >> > > > > > > >>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>> Scan trigger plugin would poll SCM. Can we > use > > > >> plugin > > > >> > > at > > > >> > > > > > > >>>>> scale? > > > >> > > > > > > >>>>>>>>>> > > > >> > > > > > > >>>>>>>>>> 1. I haven't tested it on scale. But I think > > with > > > >> the > > > >> > > > > current > > > >> > > > > > > >>>>> scale > > > >> > > > > > > >>>>>>> of > > > >> > > > > > > >>>>>>>>>> MXNet repo (191 open PRs i.e. checking for > > > changes > > > >> to > > > >> > > 191 > > > >> > > > > > > >>>>> branches - > > > >> > > > > > > >>>>>>> It > > > >> > > > > > > >>>>>>>>>> should be manageable) > > > >> > > > > > > >>>>>>>>>> 2. What's the purpose of the plugin? tldr; > > Branch > > > >> > > > discovery > > > >> > > > > > > >>> or > > > >> > > > > > > >>>>> branch > > > >> > > > > > > >>>>>>>>>> indexing. > > > >> > > > > > > >>>>>>>>>> Scan trigger plugin comes into the picture > only > > > >> once > > > >> > per > > > >> > > > PR > > > >> > > > > > > >>> per > > > >> > > > > > > >>>>> job > > > >> > > > > > > >>>>>>>>> (i.e. 8 > > > >> > > > > > > >>>>>>>>>> times per PR for 8 jobs). It is basically > done > > > >> when a > > > >> > > new > > > >> > > > PR > > > >> > > > > > > >>> is > > > >> > > > > > > >>>>> made > > > >> > > > > > > >>>>>>>> and > > > >> > > > > > > >>>>>>>>>> the job (say unix-cpu hasn't discovered the > new > > > PR > > > >> > > branch > > > >> > > > > > > >>> yet). > > > >> > > > > > > >>>>>>> That's > > > >> > > > > > > >>>>>>>>> it. > > > >> > > > > > > >>>>>>>>>> So it shouldn't be a problem for public MXNet > > > repo. > > > >> > > > > > > >>>>>>>>>> > > > >> > > > > > > >>>>>>>>>> Thanks, > > > >> > > > > > > >>>>>>>>>> Chai > > > >> > > > > > > >>>>>>>>>> > > > >> > > > > > > >>>>>>>>>> > > > >> > > > > > > >>>>>>>>>> On Thu, 12 Mar 2020 at 14:22, Marco de Abreu > < > > > >> > > > > > > >>>>>>> marco.g.ab...@gmail.com> > > > >> > > > > > > >>>>>>>>>> wrote: > > > >> > > > > > > >>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>> Btw you forgot to set a date and time for > the > > > >> metting > > > >> > > > > > > >>>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>> On Thu, Mar 12, 2020 at 10:18 PM Marco de > > Abreu > > > < > > > >> > > > > > > >>>>>>>>> marco.g.ab...@gmail.com > > > >> > > > > > > >>>>>>>>>>> wrote: > > > >> > > > > > > >>>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>>> Thanks Chai, I generally like the idea of > the > > > >> bot. > > > >> > But > > > >> > > > > > > >>> I'm > > > >> > > > > > > >>>>> not a > > > >> > > > > > > >>>>>>>>>>> supporter > > > >> > > > > > > >>>>>>>>>>>> of the idea to disable any automatic > > triggering > > > >> > > > > > > >>> (disabling > > > >> > > > > > > >>>>> the > > > >> > > > > > > >>>>>>>>> webhook > > > >> > > > > > > >>>>>>>>>> is > > > >> > > > > > > >>>>>>>>>>>> also not an option, considering that this > > will > > > >> > disable > > > >> > > > > > > >>>> master > > > >> > > > > > > >>>>>>>>>> triggers). > > > >> > > > > > > >>>>>>>>>>>> The CI system has to support the community > > > >> without > > > >> > > > > > > >>>> requiring > > > >> > > > > > > >>>>>>> people > > > >> > > > > > > >>>>>>>>> to > > > >> > > > > > > >>>>>>>>>>>> constantly shepherd every single run. > > Disabling > > > >> > > > automatic > > > >> > > > > > > >>>>>>>> triggering > > > >> > > > > > > >>>>>>>>>>> seems > > > >> > > > > > > >>>>>>>>>>>> like a step back to me. > > > >> > > > > > > >>>>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>>> Instead, I'd recommend that CI gets > triggered > > > >> upon > > > >> > > every > > > >> > > > > > > >>>>> commit > > > >> > > > > > > >>>>>>> as > > > >> > > > > > > >>>>>>>>>> usual, > > > >> > > > > > > >>>>>>>>>>>> but people have the possibility to call a > > > >> "command" > > > >> > > > (i.e. > > > >> > > > > > > >>>>> make a > > > >> > > > > > > >>>>>>>>>> message > > > >> > > > > > > >>>>>>>>>>>> which results in the bot setting a label) > to > > > >> disable > > > >> > > CI > > > >> > > > > > > >>>> until > > > >> > > > > > > >>>>>>> they > > > >> > > > > > > >>>>>>>>>> revoke > > > >> > > > > > > >>>>>>>>>>>> it. But the standard should still be that a > > new > > > >> > commit > > > >> > > > > > > >>>>> triggers a > > > >> > > > > > > >>>>>>>> new > > > >> > > > > > > >>>>>>>>>> CI > > > >> > > > > > > >>>>>>>>>>>> run. > > > >> > > > > > > >>>>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>>> > > > >> > > > > > > >>>> > > > >> > https://plugins.jenkins.io/multibranch-scan-webhook-trigger/ > > > >> > > > > > > >>>>>>>> seems > > > >> > > > > > > >>>>>>>>>> like > > > >> > > > > > > >>>>>>>>>>>> this would poll SCM. This will incur high > > quota > > > >> > > > > > > >>>>> restrictions. Are > > > >> > > > > > > >>>>>>>> you > > > >> > > > > > > >>>>>>>>>>> sure > > > >> > > > > > > >>>>>>>>>>>> that you can use that plugin at scale? > > > >> > > > > > > >>>>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>>> -Marco > > > >> > > > > > > >>>>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>>> On Thu, Mar 12, 2020 at 10:04 PM Lin Yuan < > > > >> > > > > > > >>>>> apefor...@gmail.com> > > > >> > > > > > > >>>>>>>>> wrote: > > > >> > > > > > > >>>>>>>>>>>>> Chai, > > > >> > > > > > > >>>>>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>>>> Awesome work. When do we expect this bot > to > > be > > > >> > > > > > > >>> deployed? > > > >> > > > > > > >>>>>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>>>> Best, > > > >> > > > > > > >>>>>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>>>> Lin > > > >> > > > > > > >>>>>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>>>> On Thu, Mar 12, 2020 at 2:00 PM Chaitanya > > > Bapat > > > >> < > > > >> > > > > > > >>>>>>>>> chai.ba...@gmail.com > > > >> > > > > > > >>>>>>>>>>>>> wrote: > > > >> > > > > > > >>>>>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>>>>> Hello MXNet community, > > > >> > > > > > > >>>>>>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>>>>> I have built an MXNet Bot < > > > >> > > > > > > >>>> https://github.com/mxnet-bot> > > > >> > > > > > > >>>>> that > > > >> > > > > > > >>>>>>>>>> allows > > > >> > > > > > > >>>>>>>>>>> PR > > > >> > > > > > > >>>>>>>>>>>>>> Authors, Committers and Jenkins Admins to > > > >> trigger > > > >> > CI > > > >> > > > > > > >>>>> manually. > > > >> > > > > > > >>>>>>>>>>>>>> It handles 2 problems > > > >> > > > > > > >>>>>>>>>>>>>> 1. Manual CI trigger instead of existing > > > >> automated > > > >> > > CI > > > >> > > > > > > >>>>> trigger > > > >> > > > > > > >>>>>>>>>>>>>> 2. Gives permissions to PR Authors (in > > > >> addition to > > > >> > > > > > > >>>> MXNet > > > >> > > > > > > >>>>>>>>> Committers > > > >> > > > > > > >>>>>>>>>>> and > > > >> > > > > > > >>>>>>>>>>>>>> Jenkins Admins) > > > >> > > > > > > >>>>>>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>>>>> Design Doc : > > > >> > > > > > > >>>>>>>>>>>>>> > > > >> > > > > > > >>>>>>> > > > >> > > > > https://cwiki.apache.org/confluence/display/MXNET/MXNet+CI+Bot > > > >> > > > > > > >>>>>>>>>>>>>> I urge you all to attend the > demonstration > > > >> meeting > > > >> > > > > > > >>> and > > > >> > > > > > > >>>>> lend > > > >> > > > > > > >>>>>>> your > > > >> > > > > > > >>>>>>>>>> views > > > >> > > > > > > >>>>>>>>>>>>> on > > > >> > > > > > > >>>>>>>>>>>>>> the same. > > > >> > > > > > > >>>>>>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>>>>> Thank you, > > > >> > > > > > > >>>>>>>>>>>>>> Chai > > > >> > > > > > > >>>>>>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>>>>> *Meeting Details*: > > > >> > > > > > > >>>>>>>>>>>>>> ==============Conference Bridge > > > >> > > > > > > >>>> Information============== > > > >> > > > > > > >>>>>>>>>>>>>> You have been invited to an online > meeting, > > > >> > powered > > > >> > > > > > > >>> by > > > >> > > > > > > >>>>> Amazon > > > >> > > > > > > >>>>>>>>> Chime. > > > >> > > > > > > >>>>>>>>>>>>>> *Chime meeting ID*: *9272158344* > > > >> > > > > > > >>>>>>>>>>>>>> Join via Chime clients (manually): Select > > > >> > 'Meetings > > > >> > > > > > > >> > > > > > > >>>>> Join a > > > >> > > > > > > >>>>>>>>>> Meeting', > > > >> > > > > > > >>>>>>>>>>>>> and > > > >> > > > > > > >>>>>>>>>>>>>> enter 9272158344 > > > >> > > > > > > >>>>>>>>>>>>>> Join via Chime clients (auto-call): If > you > > > >> invite > > > >> > > > > > > >>>>> auto-call as > > > >> > > > > > > >>>>>>>>>>> attendee, > > > >> > > > > > > >>>>>>>>>>>>>> Chime will call you when the meeting > > starts, > > > >> > select > > > >> > > > > > > >>>>> 'Answer' > > > >> > > > > > > >>>>>>>>>>>>>> *Join via browser screen share*: > > > >> > > > > > > >>>>> https://chime.aws/9272158344 > > > >> > > > > > > >>>>>>>>>>>>>> *Join via phone* (US): > > > >> > +1-929-432-4463,,,9272158344# > > > >> > > > > > > >>>>>>>>>>>>>> *Join via phone (US toll-free)*: > > > >> > > > > > > >>>>> +1-855-552-4463,,,9272158344# > > > >> > > > > > > >>>>>>>>>>>>>> International dial-in: > > > >> > > > > > > >>>> https://chime.aws/dialinnumbers/ > > > >> > > > > > > >>>>>>>>>>>>>> In-room video system: Ext: 62000, Meeting > > > PIN: > > > >> > > > > > > >>>>> 9272158344# > > > >> > > > > > > >>>>>>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>>>>> -- > > > >> > > > > > > >>>>>>>>>>>>>> *Chaitanya Prakash Bapat* > > > >> > > > > > > >>>>>>>>>>>>>> *+1 (973) 953-6299* > > > >> > > > > > > >>>>>>>>>>>>>> > > > >> > > > > > > >>>>>>>>>>>>>> [image: > > > >> https://www.linkedin.com//in/chaibapat25] > > > >> > > > > > > >>>>>>>>>>>>>> <https://github.com/ChaiBapchya>[image: > > > >> > > > > > > >>>>>>>>>>>>> https://www.facebook.com/chaibapat > > > >> > > > > > > >>>>>>>>>>>>>> ] > > > >> > > > > > > >>>>>>>>>>>>>> <https://www.facebook.com/chaibapchya > > > >[image: > > > >> > > > > > > >>>>>>>>>>>>>> https://twitter.com/ChaiBapchya] < > > > >> > > > > > > >>>>>>>> https://twitter.com/ChaiBapchya > > > >> > > > > > > >>>>>>>>>>>>>> [image: > > > >> > > > > > > >>>>>>>>>>>>>> https://www.linkedin.com//in/chaibapat25 > ] > > > >> > > > > > > >>>>>>>>>>>>>> < > https://www.linkedin.com//in/chaibapchya/ > > > > > > >> > > > > > > >>>>>>>>>>>>>> > > > >> > > > > > > >>>>>>>>>> > > > >> > > > > > > >>>>>>>>>> -- > > > >> > > > > > > >>>>>>>>>> *Chaitanya Prakash Bapat* > > > >> > > > > > > >>>>>>>>>> *+1 (973) 953-6299* > > > >> > > > > > > >>>>>>>>>> > > > >> > > > > > > >>>>>>>>>> [image: > > https://www.linkedin.com//in/chaibapat25 > > > ] > > > >> > > > > > > >>>>>>>>>> <https://github.com/ChaiBapchya>[image: > > > >> > > > > > > >>>>>>>>> https://www.facebook.com/chaibapat > > > >> > > > > > > >>>>>>>>>> ] > > > >> > > > > > > >>>>>>>>>> <https://www.facebook.com/chaibapchya > >[image: > > > >> > > > > > > >>>>>>>>>> https://twitter.com/ChaiBapchya] < > > > >> > > > > > > >>>>> https://twitter.com/ChaiBapchya > > > >> > > > > > > >>>>>>>>>> [image: > > > >> > > > > > > >>>>>>>>>> https://www.linkedin.com//in/chaibapat25] > > > >> > > > > > > >>>>>>>>>> <https://www.linkedin.com//in/chaibapchya/> > > > >> > > > > > > >>>>>>>>>> > > > >> > > > > > > >>>>>>> > > > >> > > > > > > >>>>>>> -- > > > >> > > > > > > >>>>>>> Sandeep Krishnamurthy > > > >> > > > > > > >>>>>>> > > > >> > > > > > > >>>>> > > > >> > > > > > > >>>> > > > >> > > > > > > >>> > > > >> > > > > > > >>> > > > >> > > > > > > >>> -- > > > >> > > > > > > >>> *Chaitanya Prakash Bapat* > > > >> > > > > > > >>> *+1 (973) 953-6299* > > > >> > > > > > > >>> > > > >> > > > > > > >>> [image: https://www.linkedin.com//in/chaibapat25] > > > >> > > > > > > >>> <https://github.com/ChaiBapchya>[image: > > > >> > > > > > > https://www.facebook.com/chaibapat > > > >> > > > > > > >>> ] > > > >> > > > > > > >>> <https://www.facebook.com/chaibapchya>[image: > > > >> > > > > > > >>> https://twitter.com/ChaiBapchya] < > > > >> > > > https://twitter.com/ChaiBapchya > > > >> > > > > > > >[image: > > > >> > > > > > > >>> https://www.linkedin.com//in/chaibapat25] > > > >> > > > > > > >>> <https://www.linkedin.com//in/chaibapchya/> > > > >> > > > > > > >>> > > > >> > > > > > > >> > > > >> > > > > > > > > > >> > > > > > > > > > >> > > > > > > > > >> > > > > > > > >> > > > > > > > >> > > > > -- > > > >> > > > > *Chaitanya Prakash Bapat* > > > >> > > > > *+1 (973) 953-6299* > > > >> > > > > > > > >> > > > > [image: https://www.linkedin.com//in/chaibapat25] > > > >> > > > > <https://github.com/ChaiBapchya>[image: > > > >> > > > https://www.facebook.com/chaibapat > > > >> > > > > ] > > > >> > > > > <https://www.facebook.com/chaibapchya>[image: > > > >> > > > > https://twitter.com/ChaiBapchya] < > > > https://twitter.com/ChaiBapchya > > > >> > > > >[image: > > > >> > > > > https://www.linkedin.com//in/chaibapat25] > > > >> > > > > <https://www.linkedin.com//in/chaibapchya/> > > > >> > > > > > > > >> > > > > > > >> > > > > > >> > > > > > >> > > -- > > > >> > > *Chaitanya Prakash Bapat* > > > >> > > *+1 (973) 953-6299* > > > >> > > > > > >> > > [image: https://www.linkedin.com//in/chaibapat25] > > > >> > > <https://github.com/ChaiBapchya>[image: > > > >> > https://www.facebook.com/chaibapat > > > >> > > ] > > > >> > > <https://www.facebook.com/chaibapchya>[image: > > > >> > > https://twitter.com/ChaiBapchya] < > https://twitter.com/ChaiBapchya > > > >> > >[image: > > > >> > > https://www.linkedin.com//in/chaibapat25] > > > >> > > <https://www.linkedin.com//in/chaibapchya/> > > > >> > > > > > >> > > > > >> > > > >> > > > >> -- > > > >> *Chaitanya Prakash Bapat* > > > >> *+1 (973) 953-6299* > > > >> > > > >> [image: https://www.linkedin.com//in/chaibapat25] > > > >> <https://github.com/ChaiBapchya>[image: > > > >> https://www.facebook.com/chaibapat] > > > >> <https://www.facebook.com/chaibapchya>[image: > > > >> https://twitter.com/ChaiBapchya] <https://twitter.com/ChaiBapchya > > > >[image: > > > >> https://www.linkedin.com//in/chaibapat25] > > > >> <https://www.linkedin.com//in/chaibapchya/> > > > >> > > > > > > > > > > > > > -- > > *Chaitanya Prakash Bapat* > > *+1 (973) 953-6299* > > > > [image: https://www.linkedin.com//in/chaibapat25] > > <https://github.com/ChaiBapchya>[image: > https://www.facebook.com/chaibapat > > ] > > <https://www.facebook.com/chaibapchya>[image: > > https://twitter.com/ChaiBapchya] <https://twitter.com/ChaiBapchya > >[image: > > https://www.linkedin.com//in/chaibapat25] > > <https://www.linkedin.com//in/chaibapchya/> > > > -- Sandeep Krishnamurthy