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