-
Notifications
You must be signed in to change notification settings - Fork 205
blog: implement contributor guide for local PipeCD setup #6375
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
blog: implement contributor guide for local PipeCD setup #6375
Conversation
Signed-off-by: Shivansh Sahu <sahushivansh142@gmail.com>
eeshaanSA
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for this, @shivansh-gohem. You seem to have mistaken the local development setup with the quick start guide.
The quickstart setup is aimed towards end-users who want to setup PipeCD and try the features out. The actual development setup would be ideally done through the source code, forked from GitHub. Please check how to setup a local development environment documentation on GitHub.
8eab5b6 to
6b3b822
Compare
|
Hi @eeshaanSA, Thank you again for the critical feedback. I sincerely apologize for the initial error confusing the End-User Quickstart with the Contributor Local Development Setup. I have located the correct documentation and have completely rewritten the blog post. The PR now contains a guide focused on the correct developer workflow: building and running the Control Plane and Piped Agent directly from the Go source code (using make run/pipecd and make run/piped), which is the true path for contribution. |
|
|
||
| ## 1. Prepare and Start the Local Cluster | ||
|
|
||
| First, update dependencies and set up a local registry and cluster for the control plane to use. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We need more info on "How to" do this.
| tags: ["Local Development", "Go", "Kubernetes", "Dev Setup"] | ||
| --- | ||
|
|
||
| ## Why a Local Development Environment is Essential |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Need a better title
|
|
||
| Make sure you have: | ||
|
|
||
| - Go (v1.21 or higher) | ||
| - Docker | ||
| - kubectl | ||
| - PipeCD repository cloned locally: | ||
|
|
||
| git clone https://github.com/pipe-cd/pipecd.git | ||
| cd pipecd |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is essential to create a fork of the target repository in order to make successful open source contributions. This is highly inaccurate
|
@shivansh-gohem, have you tried setting up PipeCD using this guide? |
Signed-off-by: Shivansh Sahu <sahushivansh142@gmail.com>
6b3b822 to
61618b5
Compare
|
Hi @eeshaanSA , I verified the full build process locally (make run/pipecd). The build revealed that Node.js and Yarn were missing from the prerequisites list (causing the web build to fail). I have updated the guide to include them, along with the correct make update/web-deps command. I also fixed the Fork instruction and the Title as requested. The PR is now ready for review |
|
Hi @eeshaanSA, Just a gentle bump on this PR. I believe I have addressed all the feedback from your last review (updated the title, corrected the fork instructions, and verified the local setup steps including the Yarn dependencies). Please let me know if there are any further changes needed. Thank you! |
| 2. Click **+ ADD**, give it a name (for example, `dev`), and save. | ||
| 3. **Crucial step:** Copy the generated **Piped ID** and **Base64 encoded key** immediately. | ||
|
|
||
| ### Create the Piped configuration |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for this Shivam. Although this looks decent and can be merged with a few changes, I tried this out and faced some problems setting up the local dev env. I will discuss it with the maintainers.
Additionally, we need a v1 pipedConfig example here too now, which might be a little complicated.
I suggest getting your hands on good-first-issues for now until a further update. Thanks!
|
Hi @eeshaanSA, Thank you for testing this out and for the honest feedback. I understand that the local development setup has some underlying stability issues right now and that the shift to the v1 pipedConfig adds complexity. I appreciate you saving me from spinning my wheels on this while those architectural changes are discussed. I will put this PR on hold. Since I have been focusing on [EPIC] Improve and Expand Contributing Section in Documentation #6124, I would love to stay within that scope if possible. I know I previously mentioned tackling the 'Contribute to piped Plugins' section next. Is that area also blocked by the v1 config issues (since it requires a local agent), or would that be a safe documentation task to pick up now? |
|
/cc @eeshaanSA |
Hi @eeshaanSA and @khanhtc1202,
This PR delivers the local setup guide you assigned.
Goal: Create a simple, step-by-step tutorial for new contributors on setting up the Control Plane and Piped agent locally via the Quickstart method.
Source: The guide is based on the official quickstart and my personal successful end-to-end setup (validated in PR #6332).
Ready for review! Thank you.