Good idea. Let's see if this "personal CI" solution turns out to be useful.

-Lari

On Fri, Mar 19, 2021 at 7:21 PM Jonathan Ellis <jbel...@gmail.com> wrote:

> Is it worth adding this to the Contributing doc page?
> https://pulsar.apache.org/en/contributing/
>
> On Fri, Mar 19, 2021 at 7:37 AM Lari Hotari <lar...@sagire.fi> wrote:
>
> > Dear Pulsar community members,
> >
> > I'm very happy to see a lot of activity in Pulsar development. This is a
> > positive thing.
> > The negative impact of this is that it adds more load to the GitHub
> > Actions based Pulsar CI.
> > We have been seeing long build queues and slow feedback from Pulsar CI
> > recently.
> >
> > Since we cannot add more resources to Pulsar CI, we need to find other
> > ways to reduce the load on Pulsar CI.
> > Every developer can help reduce the load on Pulsar CI.
> > Please don't open a PR to apache/pulsar when the work is in very initial
> > stages.
> > Every push to the pull request branch will trigger a lot of concurrent
> > builds (about 25).
> > By reducing the amount of PR pushes you can reduce the load on Pulsar CI.
> >
> > You don't have to stop developing and using CI for getting feedback.
> There
> > is a better way to get CI feedback for early stages of development. The
> > secret is that everyone has their personal CI on GitHub!
> > Please take use of it when you have large changes which stay in WIP for
> > long periods of time, and you push a lot of changes before the actual
> > reviews start.
> >
> > Here are instructions to use your personal CI on GitHub.
> >
> > 1. Push your intended pull request changes to a new branch in your fork
> > (the usual way you do it).
> > 2. Open a pull request to your own fork.
> >
> > A.) These are the instructions for CLI:
> >
> > Install GitHub CLI from https://cli.github.com/ and configure it.
> > With GH CLI, there's an easy way to open the PR to your own fork with a
> > single command:
> >
> > gh pr create --repo=your_github_id/pulsar --base master --head
> > your-pr-branch -f
> >
> > B.) You can also create a PR to your own fork in the GitHub UI when
> > opening a new PR. To do so, first click on "compare across forks" and
> then
> > choose your own fork as both the fork repository and head repository:
> > [image: image.png]
> >
> >
> > Notice:
> > It's worth keeping your master branch in sync with apache/pulsar's master
> > so that the PR diff will be reasonable in your own fork.
> >
> > Here's one way to sync your fork's master branch with apache/pulsar's
> > master branch:
> > Let's say if you have git remotes  called "upstream" for apache/pulsar
> and
> > "forked" for your fork, with these commands,
> > you synchronize your fork's remote master branch with apache/pulsar's
> > master branch:
> >
> > # replace "upstream" with the name of the git remote for apache/pulsar
> > # replace "forked" with the name of the git remote for your fork of
> pulsar
> > git fetch upstream
> > git push -f forked upstream/master:master
> >
> >
> > When you finally want to create a PR to apache/pulsar, it can be started
> > from the command line (this will open a browser for filling in the PR
> > details):
> >
> > gh pr create --repo=apache/pulsar --base master --head your-pr-branch
> --web
> >
> >
> > I hope this helps in getting started with your personal Pulsar CI so that
> > you can help reduce the load on actual Pulsar CI.
> >
> > Please continue sending a lot of PRs! :)
> >
> > BR, Lari
> >
>
>
> --
> Jonathan Ellis
> co-founder, http://www.datastax.com
> @spyced
>

Reply via email to