My First Kubernetes Contribution: A Journey of Mentorship, Reviews, CNCF CLA & My PR Getting Merged
Contributing to open source was always a dream…
but contributing to a Kubernetes SIGs repository felt like a dream that was too big.
Kubernetes is massive.
Its contributors are experts.
Its ecosystem is huge.
So when I created my first PR to kubernetes-sigs/kind, I didn’t just write a few lines of documentation —
I crossed a personal milestone that changed my confidence forever.
Let me take you through the journey —
of learning, mentorship, mistakes, corrections, CNCF processes, approvals, and growth.
🌱 The Start — A Small Idea, A Big Step
While reading KIND’s Quick Start docs, I noticed something simple:
👉 There was no example for loading multiple Docker images in a single command.
Beginners do this all the time.
Yet the docs only showed single-image examples.
So I decided to contribute this:
kind load docker-image my-app:latest my-db:latest my-cache:latest
A small, beginner-friendly improvement —
but a perfect entry point into the Kubernetes ecosystem.
🧪 Step 1: Passing the CNCF CLA — My First Real Gate
Before ANY Kubernetes PR can be tested or reviewed, contributors must pass:
✔ The CNCF Contributor License Agreement (CLA)
This is a legally required agreement proving:
the code is original
you allow CNCF to use it
there are no license conflicts
When I opened my PR, I saw the bot:
💬 “CLA not signed”
This was my first major step.
I opened the link, authenticated with GitHub, verified details, and signed it.
And then the bot updated:
💚 CLA Signed — You’re good to go!
The moment that label turned green, I felt like:
Yes, I’ve officially stepped into the CNCF ecosystem.
🤖 Step 2: Bots, Labels & The “ok-to-test” Workflow
Kubernetes has an amazing automated system.
Immediately after my PR:
@k8s-ci-robot welcomed me
added labels
checked CLA
explained commands
asked a maintainer to approve /ok-to-test
Before “ok-to-test,” tests aren’t triggered.
Once a maintainer reviewed the PR and said:
/ok-to-test
The CI pipelines finally started running.
Watching those green checks pass felt surprisingly exciting 😄
🌟 Step 3: The Reviewers Who Helped Me Grow
This PR introduced me to three amazing maintainers:
⭐ @stmcginnis
⭐ @bentheelder
⭐ @aojea
And each one helped me in different ways.
🧑🏫 The Mentor of My PR — @stmcginnis
If this blog had a hero, it would be @stmcginnis.
He didn’t just review my PR —
he mentored me throughout the entire process.
What he taught me:
✔ What was wrong
He spotted issues I completely missed:
wrong indentation
missing backticks
extra blank lines
duplicate sections appearing at the bottom
formatting not matching KIND’s documentation style
✔ What was right
He appreciated the value of the example and encouraged me to continue.
✔ How to fix things
He never said “This is wrong.”
He always explained:
📌 Why it's wrong
📌 How to correct it
📌 What good documentation looks like
📌 How to apply changes cleanly
✔ The biggest lesson: how to amend a commit properly
When I struggled with squashing commits, he gave me a magic command:
git add .
git commit --amend
git push -f
This single message saved me HOURS of confusion.
His tone was always:
patient
kind
respectful
supportive
He turned a scary Kubernetes contribution into a smooth learning experience.
I am truly grateful for his mentorship. 🙏
🧩 The Other Maintainers Who Supported Me
⭐ @bentheelder
Co-maintainer of KIND — he ensured the changes fit the project’s design and documentation structure.
⭐ @aojea
He helped me clean the commit history and reminded me to avoid unrelated changes.
His advice about keeping the PR focused improved my understanding of professional open-source collaboration.
Each of them guided me toward making my contribution clean, accurate, and merge-ready.
This was REAL open-source collaboration — and I felt privileged to experience it.
🔄 Step 4: Iterations, Fixes & Growth
My PR didn’t get accepted immediately.
Not after one review.
Not after two.
Not after five.
Every time I fixed one thing, the reviewers found another improvement.
And every time I fixed something new, I learned something new.
I made mistakes like:
messing up formatting during squash
duplicating sections accidentally
incorrect markdown spacing
missing newline after headers
breaking layout with unintended edits
But the maintainers stayed patient.
They guided me with:
✔ clear comments
✔ constructive feedback
✔ friendly tone
✔ encouragement to continue
This is the beauty of open source:
Mistakes are not failures — they are lessons.
🎉 Step 5: The Final Approval — /lgtm & /approve
After all the fixes, all the formatting corrections, all the rebasing and amending…
I finally saw the most satisfying comment:
/lgtm
Followed by:
/approve
And then the bot said:
💚 This PR is APPROVED
💚 Merged successfully
That green “Merged” badge still feels special.
I had officially contributed to a Kubernetes SIGs repository.
🌈 What This Journey Taught Me
🌟 Mentorship matters
Good reviewers like @stmcginnis don’t just correct you — they grow you.
🌟 Open source is teamwork
It’s about patience, communication, and collaboration.
🌟 Small contributions matter
Even a one-line doc example can help thousands of developers.
🌟 Communication is a skill
Responding professionally, asking doubts, and following up politely matters.
🌟 CNCF ecosystem welcomes beginners
The process is structured, educational, and encouraging.
💛 My Heartfelt Thanks
To @stmcginnis
Your mentorship, explanations, and kindness shaped my entire journey.
Thank you for helping me learn the right way.
To @bentheelder
Thank you for reviewing and ensuring the doc improvements matched KIND’s standards.
To @aojea
Thank you for guiding me on squashing and keeping the PR clean.
To the Kubernetes SIGs community
Thank you for creating an environment where beginners can grow.
🔮 What's Next for Me
This contribution gave me:
✨ Confidence
✨ Technical clarity
✨ Experience with CNCF workflows
✨ Understanding of PR reviews
✨ Skills for real-world collaboration
Now I’m working toward:
more contributions to CNCF projects
understanding Go + Kubernetes internals
preparing for GSoC 2026
helping beginners get into open source
This is just the beginning of my open-source journey.
🌸 Final Words to Beginners
If you want to contribute but feel scared or unprepared:
Just start.
Start with one small issue.
One doc improvement.
One PR.
One review.
Open source isn’t about perfection —
it’s about participation and learning.
If I can contribute to Kubernetes,
you absolutely can too.
💌 Connect With Me
If you need help finding your first issue or starting your OSS journey:
📌 GitHub: https://github.com/AnjaliMishra1st
📌 LinkedIn: https://www.linkedin.com/in/anjali-mishra-212536298/
📌 Email: mishrasitu88@gmail.com
I’m always happy to help ❤️
Top comments (0)