SlideShare una empresa de Scribd logo
1 de 27
Descargar para leer sin conexión
Your First Patch to OpenStack
By Akanksha Agrawal and Sana Khan
About Us
● Outreachy (https://outreachy.gnome.org) interns @OpenStack
● https://akankshaha.wordpress.com
● https://sanakhan2011.wordpress.com
Agenda
● Why contribute to OpenStack?
● Ways in which you can contribute
● Steps to contribute
● Questions?
Why should You contribute to Openstack?
● Beginner friendly and active contributor community
● Work on the project being used by millions
● Get to learn from experienced developers around the world
● Rich set of guidelines and documentation
● Huge bunch of interesting things to learn
Who can contribute to OpenStack?
● Anyone
Ways in which you can contribute?
You can work on a wide range of things:
● Documentation
● A New Feature
● Help Fix Bugs
● Report Bugs
● Bug Triaging
● Translation
https://wiki.openstack.org/wiki/How_To_Contribute
Steps to follow
Step 1: Get Your Accounts Created
1. Register your Launchpad account at https://login.launchpad.net
2. Sign Up for Foundation Membership at the OpenStack Foundation
● Complete The Individual Member Application
● Read and Sign the terms of becoming an OpenStack Foundation Individual Member.
https://www.openstack.org/join
3. Gerrit Review System
● Log into with your Launchpad account.
● Use the same username for Gerrit as the Launchpad username.
● Sign the appropriate Individual Contributor License Agreement
● Upload your Public SSH Key to review.openstack.org
Step 2: Setting up DevStack
1. Install Virtual Machine
2. Clone devstack repository
a. $ git clone https://git.openstack.org/openstack-dev/devstack.git
3. Go to the devstack directory
a. $ cd devstack
4. Copy local configuration file from devstack/samples to devstack
a. cp samples/local.conf local.conf
5. Run the stack.sh script
a. $ ./stack.sh
Step 3: Selecting a bug to work upon
Selecting your Project
Go the Bugs Page
Advanced Search Options
Customise Visible Bug Information
Sort by Age, Last Updated Date, Assignee
Selecting a low-hanging fruit
Assigning the Bug to Yourself
Step 4: Fixing the bug
● Try to reproduce the bug using Devstack.
● In case of doubts, add a comment to the bug report.
● If you need more assistance, you can seek help on IRC or Mailing List
● IRC Channel List : https://wiki.openstack.org/wiki/IRC
● Mailing Lists : https://wiki.openstack.org/wiki/Mailing_Lists
Step 4.1: Fixing the bug - Workflow
1. Configure git and git-review
a. $ git config --global user.name "Firstname Lastname"
b. $ git config --global user.email "your_email@youremail.com"
c. $ git config --global gitreview.username yourgerritusername
d. $ git review -s
2. Clone the project
a. $ git clone https://git.openstack.org/openstack/<projectname>.git
3. Make sure you have the latest upstream changes
a. $ git remote update
b. $ git checkout master
c. $ git pull --ff-only origin master
Step 4.1: Fixing the bug - Workflow
4. Create a topic branch
a. $ git checkout -b TOPIC-BRANCH
b. Name the branch as : bug/BUG-NUMBER
5. Make code/doc changes
6. Test your changes
Step 5: Committing the Change
1. $ git commit -a
Step 6: Sending the patch upstream for review
1. $ git review
You will get the link where your patch is uploaded for review on review.openstack.org
2. Address the review comments and resend the patch if required.
Thank You!
Find us @:
● Akanksha Agrawal
○ IRC Handle: Akanksha08@freenode
○ Twitter Handle: @AkankshaHA
○ https://www.linkedin.com/in/Akanksha08
● Sana Khan
○ IRC Handle: buttercup@freenode
○ Twitter Handle: @sanakhan_libre

Más contenido relacionado

La actualidad más candente

Tempest scenariotests 20140512
Tempest scenariotests 20140512Tempest scenariotests 20140512
Tempest scenariotests 20140512
Masayuki Igawa
 
Getting Started with OpenStack Development
Getting Started with OpenStack Development Getting Started with OpenStack Development
Getting Started with OpenStack Development
Rackspace
 
SFO15-TR6: Server Ecosystem Day (Part 6A)
SFO15-TR6: Server Ecosystem Day (Part 6A) SFO15-TR6: Server Ecosystem Day (Part 6A)
SFO15-TR6: Server Ecosystem Day (Part 6A)
Linaro
 

La actualidad más candente (20)

Openstack bug list
Openstack bug listOpenstack bug list
Openstack bug list
 
Git 101: Git and GitHub for Beginners
Git 101: Git and GitHub for Beginners Git 101: Git and GitHub for Beginners
Git 101: Git and GitHub for Beginners
 
OpenStack Upstream Training Cisco Live!
OpenStack Upstream Training Cisco Live!OpenStack Upstream Training Cisco Live!
OpenStack Upstream Training Cisco Live!
 
Tempest scenariotests 20140512
Tempest scenariotests 20140512Tempest scenariotests 20140512
Tempest scenariotests 20140512
 
How to Build & Deploy a HelloWorld API function using Java on OpenShift in...
How to Build & Deploy a HelloWorld API function using Java on OpenShift in...How to Build & Deploy a HelloWorld API function using Java on OpenShift in...
How to Build & Deploy a HelloWorld API function using Java on OpenShift in...
 
Getting Started with OpenStack Development
Getting Started with OpenStack Development Getting Started with OpenStack Development
Getting Started with OpenStack Development
 
Osrs
OsrsOsrs
Osrs
 
Puppetconf 2015 - Puppet Reporting with Elasticsearch Logstash and Kibana
Puppetconf 2015 - Puppet Reporting with Elasticsearch Logstash and KibanaPuppetconf 2015 - Puppet Reporting with Elasticsearch Logstash and Kibana
Puppetconf 2015 - Puppet Reporting with Elasticsearch Logstash and Kibana
 
Fluo CICD OpenStack Summit
Fluo CICD OpenStack SummitFluo CICD OpenStack Summit
Fluo CICD OpenStack Summit
 
Ensuring OpenStack Version up Compatibility for CloudOpen Japan 2013-05-31
Ensuring OpenStack Version up Compatibility for CloudOpen Japan 2013-05-31Ensuring OpenStack Version up Compatibility for CloudOpen Japan 2013-05-31
Ensuring OpenStack Version up Compatibility for CloudOpen Japan 2013-05-31
 
Making your first OpenStack contribution (EuroPython)
Making your first OpenStack contribution (EuroPython)Making your first OpenStack contribution (EuroPython)
Making your first OpenStack contribution (EuroPython)
 
Pipeline+over view
Pipeline+over viewPipeline+over view
Pipeline+over view
 
TYPO3 Surf Introduction
TYPO3 Surf IntroductionTYPO3 Surf Introduction
TYPO3 Surf Introduction
 
Log monitoring with Logstash and Icinga
Log monitoring with Logstash and IcingaLog monitoring with Logstash and Icinga
Log monitoring with Logstash and Icinga
 
SFO15-TR6: Server Ecosystem Day (Part 6A)
SFO15-TR6: Server Ecosystem Day (Part 6A) SFO15-TR6: Server Ecosystem Day (Part 6A)
SFO15-TR6: Server Ecosystem Day (Part 6A)
 
Version control system & how to use git
Version control system & how to use git Version control system & how to use git
Version control system & how to use git
 
The Seven Habits of Highly Effective Puppet Users - PuppetConf 2014
The Seven Habits of Highly Effective Puppet Users - PuppetConf 2014The Seven Habits of Highly Effective Puppet Users - PuppetConf 2014
The Seven Habits of Highly Effective Puppet Users - PuppetConf 2014
 
Introduction to Git for Artists
Introduction to Git for ArtistsIntroduction to Git for Artists
Introduction to Git for Artists
 
sfdx continuous Integration with Jenkins on aws (Part I)
sfdx continuous Integration with Jenkins on aws (Part I)sfdx continuous Integration with Jenkins on aws (Part I)
sfdx continuous Integration with Jenkins on aws (Part I)
 
HKG15-204: OpenStack: 3rd party testing and performance benchmarking
HKG15-204: OpenStack: 3rd party testing and performance benchmarkingHKG15-204: OpenStack: 3rd party testing and performance benchmarking
HKG15-204: OpenStack: 3rd party testing and performance benchmarking
 

Destacado

Introduction to tempest
Introduction to tempest Introduction to tempest
Introduction to tempest
openstackindia
 
Debugging Ruby (Aman Gupta)
Debugging Ruby (Aman Gupta)Debugging Ruby (Aman Gupta)
Debugging Ruby (Aman Gupta)
MongoSF
 
Rubinius @ RubyAndRails2010
Rubinius @ RubyAndRails2010Rubinius @ RubyAndRails2010
Rubinius @ RubyAndRails2010
Dirkjan Bussink
 

Destacado (20)

Copr HD OpenStack Day India
Copr HD OpenStack Day IndiaCopr HD OpenStack Day India
Copr HD OpenStack Day India
 
Deploying openstack using ansible
Deploying openstack using ansibleDeploying openstack using ansible
Deploying openstack using ansible
 
The OpenStack Contribution Workflow
The OpenStack Contribution WorkflowThe OpenStack Contribution Workflow
The OpenStack Contribution Workflow
 
OpenStack@Mini-Deb Conf'16 Mumbai
OpenStack@Mini-Deb Conf'16 MumbaiOpenStack@Mini-Deb Conf'16 Mumbai
OpenStack@Mini-Deb Conf'16 Mumbai
 
Guts & OpenStack migration
Guts & OpenStack migrationGuts & OpenStack migration
Guts & OpenStack migration
 
OpenStack Storage Buddy Ceph
OpenStack Storage Buddy CephOpenStack Storage Buddy Ceph
OpenStack Storage Buddy Ceph
 
OPNFV & OpenStack
OPNFV & OpenStackOPNFV & OpenStack
OPNFV & OpenStack
 
OpenStack Tempest and REST API testing
OpenStack Tempest and REST API testingOpenStack Tempest and REST API testing
OpenStack Tempest and REST API testing
 
OpenStack Neutron Behind The Senes
OpenStack Neutron Behind The SenesOpenStack Neutron Behind The Senes
OpenStack Neutron Behind The Senes
 
State of Containers in OpenStack
State of Containers in OpenStackState of Containers in OpenStack
State of Containers in OpenStack
 
Introduction to Software Defined Networking and OpenStack Neutron
Introduction to Software Defined Networking and OpenStack NeutronIntroduction to Software Defined Networking and OpenStack Neutron
Introduction to Software Defined Networking and OpenStack Neutron
 
OpenStack Watcher
OpenStack WatcherOpenStack Watcher
OpenStack Watcher
 
Introduction to tempest
Introduction to tempest Introduction to tempest
Introduction to tempest
 
Who carries your container? Zun or Magnum?
Who carries your container? Zun or Magnum?Who carries your container? Zun or Magnum?
Who carries your container? Zun or Magnum?
 
Zun presentation (OpenStack Barcelona summit)
Zun presentation (OpenStack Barcelona summit)Zun presentation (OpenStack Barcelona summit)
Zun presentation (OpenStack Barcelona summit)
 
OpenStack Architected Like AWS (and GCP)
OpenStack Architected Like AWS (and GCP)OpenStack Architected Like AWS (and GCP)
OpenStack Architected Like AWS (and GCP)
 
OpenStack NFV Edge computing for IOT microservices
OpenStack NFV Edge computing for IOT microservicesOpenStack NFV Edge computing for IOT microservices
OpenStack NFV Edge computing for IOT microservices
 
Debugging Ruby Systems
Debugging Ruby SystemsDebugging Ruby Systems
Debugging Ruby Systems
 
Debugging Ruby (Aman Gupta)
Debugging Ruby (Aman Gupta)Debugging Ruby (Aman Gupta)
Debugging Ruby (Aman Gupta)
 
Rubinius @ RubyAndRails2010
Rubinius @ RubyAndRails2010Rubinius @ RubyAndRails2010
Rubinius @ RubyAndRails2010
 

Similar a Your first patch to OpenStack

Assign, commit, and review - A developer’s guide to OpenStack contribution-20...
Assign, commit, and review - A developer’s guide to OpenStack contribution-20...Assign, commit, and review - A developer’s guide to OpenStack contribution-20...
Assign, commit, and review - A developer’s guide to OpenStack contribution-20...
OpenCity Community
 
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
mfrancis
 
Dd13.2013.milano.open ntf
Dd13.2013.milano.open ntfDd13.2013.milano.open ntf
Dd13.2013.milano.open ntf
Ulrich Krause
 
Apache contribution-bar camp-colombo
Apache contribution-bar camp-colomboApache contribution-bar camp-colombo
Apache contribution-bar camp-colombo
Sagara Gunathunga
 
The cloud is open open stack-ben-20120706-shanghai
The cloud is open open stack-ben-20120706-shanghaiThe cloud is open open stack-ben-20120706-shanghai
The cloud is open open stack-ben-20120706-shanghai
OpenCity Community
 

Similar a Your first patch to OpenStack (20)

How to become open stack upstream contributor openstack days krakow 2018
How to become open stack upstream contributor   openstack days krakow 2018How to become open stack upstream contributor   openstack days krakow 2018
How to become open stack upstream contributor openstack days krakow 2018
 
How to become open stack upstream contributor
How to become open stack upstream contributorHow to become open stack upstream contributor
How to become open stack upstream contributor
 
Assign, Commit, and Review
Assign, Commit, and ReviewAssign, Commit, and Review
Assign, Commit, and Review
 
7 Apache Process Cloudstack Developer Day
7 Apache Process Cloudstack Developer Day7 Apache Process Cloudstack Developer Day
7 Apache Process Cloudstack Developer Day
 
How to contribute to OpenStack
How to contribute to OpenStackHow to contribute to OpenStack
How to contribute to OpenStack
 
Open World Forum - The Agile and Open Source Way
Open World Forum - The Agile and Open Source WayOpen World Forum - The Agile and Open Source Way
Open World Forum - The Agile and Open Source Way
 
Assign, commit, and review - A developer’s guide to OpenStack contribution-20...
Assign, commit, and review - A developer’s guide to OpenStack contribution-20...Assign, commit, and review - A developer’s guide to OpenStack contribution-20...
Assign, commit, and review - A developer’s guide to OpenStack contribution-20...
 
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
 
OpenStack Documentation Projects and Processes
OpenStack Documentation Projects and ProcessesOpenStack Documentation Projects and Processes
OpenStack Documentation Projects and Processes
 
Basics of Open Source Contribution - WWCodeMobile
Basics of Open Source Contribution - WWCodeMobileBasics of Open Source Contribution - WWCodeMobile
Basics of Open Source Contribution - WWCodeMobile
 
Dd13.2013.milano.open ntf
Dd13.2013.milano.open ntfDd13.2013.milano.open ntf
Dd13.2013.milano.open ntf
 
Introduction to Contribution
Introduction to ContributionIntroduction to Contribution
Introduction to Contribution
 
Apache contribution-bar camp-colombo
Apache contribution-bar camp-colomboApache contribution-bar camp-colombo
Apache contribution-bar camp-colombo
 
The cloud is open open stack-ben-20120706-shanghai
The cloud is open open stack-ben-20120706-shanghaiThe cloud is open open stack-ben-20120706-shanghai
The cloud is open open stack-ben-20120706-shanghai
 
Manila Project Onboarding - Denver Open Infrastructure Summit - May 2019
Manila Project Onboarding - Denver Open Infrastructure Summit - May 2019Manila Project Onboarding - Denver Open Infrastructure Summit - May 2019
Manila Project Onboarding - Denver Open Infrastructure Summit - May 2019
 
OpenStack Documentation in the Open
OpenStack Documentation in the OpenOpenStack Documentation in the Open
OpenStack Documentation in the Open
 
Effectively using Open Source with conda
Effectively using Open Source with condaEffectively using Open Source with conda
Effectively using Open Source with conda
 
Contributing to Apache Airflow | Journey to becoming Airflow's leading contri...
Contributing to Apache Airflow | Journey to becoming Airflow's leading contri...Contributing to Apache Airflow | Journey to becoming Airflow's leading contri...
Contributing to Apache Airflow | Journey to becoming Airflow's leading contri...
 
The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13
The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13
The Latest and Greatest from OpenNTF and the IBM Social Business Toolkit, #dd13
 
The Agile and Open Source Way (AgileTour Brussels)
The Agile and Open Source Way (AgileTour Brussels)The Agile and Open Source Way (AgileTour Brussels)
The Agile and Open Source Way (AgileTour Brussels)
 

Más de openstackindia

Role of sdn controllers in open stack
Role of sdn controllers in open stackRole of sdn controllers in open stack
Role of sdn controllers in open stack
openstackindia
 
Outreachy with-openstack-zaqar
Outreachy with-openstack-zaqarOutreachy with-openstack-zaqar
Outreachy with-openstack-zaqar
openstackindia
 
Enhancing OpenStack FWaaS for real world application
Enhancing OpenStack FWaaS for real world applicationEnhancing OpenStack FWaaS for real world application
Enhancing OpenStack FWaaS for real world application
openstackindia
 
Openstack devops challenges
Openstack devops challenges Openstack devops challenges
Openstack devops challenges
openstackindia
 
Demistifying open stack storage
Demistifying open stack storageDemistifying open stack storage
Demistifying open stack storage
openstackindia
 
Why open stack database as a service offerings are doomed
Why open stack database as a service offerings are doomedWhy open stack database as a service offerings are doomed
Why open stack database as a service offerings are doomed
openstackindia
 
OpenStack Neutron Reverse Engineered
OpenStack Neutron Reverse EngineeredOpenStack Neutron Reverse Engineered
OpenStack Neutron Reverse Engineered
openstackindia
 
State of Linux Containers in OpenStack
State of Linux Containers in OpenStackState of Linux Containers in OpenStack
State of Linux Containers in OpenStack
openstackindia
 
Database experiences designing cassandra schema for keystone
Database experiences designing cassandra schema for keystone Database experiences designing cassandra schema for keystone
Database experiences designing cassandra schema for keystone
openstackindia
 
6 open stack_swift_panoramic_view
6 open stack_swift_panoramic_view6 open stack_swift_panoramic_view
6 open stack_swift_panoramic_view
openstackindia
 
8 devstack beyond_hello-world
8 devstack beyond_hello-world8 devstack beyond_hello-world
8 devstack beyond_hello-world
openstackindia
 
7 distributed storage_open_stack
7 distributed storage_open_stack7 distributed storage_open_stack
7 distributed storage_open_stack
openstackindia
 
3 ubuntu open_stack_ceph
3 ubuntu open_stack_ceph3 ubuntu open_stack_ceph
3 ubuntu open_stack_ceph
openstackindia
 
2 planning your_open_stack_cloud
2 planning your_open_stack_cloud2 planning your_open_stack_cloud
2 planning your_open_stack_cloud
openstackindia
 

Más de openstackindia (19)

Introduction to Cinder
Introduction to CinderIntroduction to Cinder
Introduction to Cinder
 
Ceph openstack-jun-2015-meetup
Ceph openstack-jun-2015-meetupCeph openstack-jun-2015-meetup
Ceph openstack-jun-2015-meetup
 
Role of sdn controllers in open stack
Role of sdn controllers in open stackRole of sdn controllers in open stack
Role of sdn controllers in open stack
 
Outreachy with-openstack-zaqar
Outreachy with-openstack-zaqarOutreachy with-openstack-zaqar
Outreachy with-openstack-zaqar
 
Enhancing OpenStack FWaaS for real world application
Enhancing OpenStack FWaaS for real world applicationEnhancing OpenStack FWaaS for real world application
Enhancing OpenStack FWaaS for real world application
 
Openstack devops challenges
Openstack devops challenges Openstack devops challenges
Openstack devops challenges
 
Demistifying open stack storage
Demistifying open stack storageDemistifying open stack storage
Demistifying open stack storage
 
OpenStack Heat
OpenStack HeatOpenStack Heat
OpenStack Heat
 
Why open stack database as a service offerings are doomed
Why open stack database as a service offerings are doomedWhy open stack database as a service offerings are doomed
Why open stack database as a service offerings are doomed
 
OpenStack Neutron Reverse Engineered
OpenStack Neutron Reverse EngineeredOpenStack Neutron Reverse Engineered
OpenStack Neutron Reverse Engineered
 
State of Linux Containers in OpenStack
State of Linux Containers in OpenStackState of Linux Containers in OpenStack
State of Linux Containers in OpenStack
 
Database experiences designing cassandra schema for keystone
Database experiences designing cassandra schema for keystone Database experiences designing cassandra schema for keystone
Database experiences designing cassandra schema for keystone
 
6 open stack_swift_panoramic_view
6 open stack_swift_panoramic_view6 open stack_swift_panoramic_view
6 open stack_swift_panoramic_view
 
8 devstack beyond_hello-world
8 devstack beyond_hello-world8 devstack beyond_hello-world
8 devstack beyond_hello-world
 
7 distributed storage_open_stack
7 distributed storage_open_stack7 distributed storage_open_stack
7 distributed storage_open_stack
 
5 cisco open_stack
5 cisco open_stack5 cisco open_stack
5 cisco open_stack
 
4 hp converged_cloud
4 hp converged_cloud4 hp converged_cloud
4 hp converged_cloud
 
3 ubuntu open_stack_ceph
3 ubuntu open_stack_ceph3 ubuntu open_stack_ceph
3 ubuntu open_stack_ceph
 
2 planning your_open_stack_cloud
2 planning your_open_stack_cloud2 planning your_open_stack_cloud
2 planning your_open_stack_cloud
 

Último

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Último (20)

Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

Your first patch to OpenStack

  • 1. Your First Patch to OpenStack By Akanksha Agrawal and Sana Khan
  • 2. About Us ● Outreachy (https://outreachy.gnome.org) interns @OpenStack ● https://akankshaha.wordpress.com ● https://sanakhan2011.wordpress.com
  • 3. Agenda ● Why contribute to OpenStack? ● Ways in which you can contribute ● Steps to contribute ● Questions?
  • 4. Why should You contribute to Openstack? ● Beginner friendly and active contributor community ● Work on the project being used by millions ● Get to learn from experienced developers around the world ● Rich set of guidelines and documentation ● Huge bunch of interesting things to learn
  • 5. Who can contribute to OpenStack? ● Anyone
  • 6. Ways in which you can contribute? You can work on a wide range of things: ● Documentation ● A New Feature ● Help Fix Bugs ● Report Bugs ● Bug Triaging ● Translation https://wiki.openstack.org/wiki/How_To_Contribute
  • 8. Step 1: Get Your Accounts Created 1. Register your Launchpad account at https://login.launchpad.net
  • 9. 2. Sign Up for Foundation Membership at the OpenStack Foundation ● Complete The Individual Member Application ● Read and Sign the terms of becoming an OpenStack Foundation Individual Member. https://www.openstack.org/join
  • 10.
  • 11. 3. Gerrit Review System ● Log into with your Launchpad account. ● Use the same username for Gerrit as the Launchpad username. ● Sign the appropriate Individual Contributor License Agreement ● Upload your Public SSH Key to review.openstack.org
  • 12.
  • 13. Step 2: Setting up DevStack 1. Install Virtual Machine 2. Clone devstack repository a. $ git clone https://git.openstack.org/openstack-dev/devstack.git 3. Go to the devstack directory a. $ cd devstack 4. Copy local configuration file from devstack/samples to devstack a. cp samples/local.conf local.conf 5. Run the stack.sh script a. $ ./stack.sh
  • 14. Step 3: Selecting a bug to work upon
  • 16. Go the Bugs Page
  • 18. Customise Visible Bug Information
  • 19. Sort by Age, Last Updated Date, Assignee
  • 21. Assigning the Bug to Yourself
  • 22. Step 4: Fixing the bug ● Try to reproduce the bug using Devstack. ● In case of doubts, add a comment to the bug report. ● If you need more assistance, you can seek help on IRC or Mailing List ● IRC Channel List : https://wiki.openstack.org/wiki/IRC ● Mailing Lists : https://wiki.openstack.org/wiki/Mailing_Lists
  • 23. Step 4.1: Fixing the bug - Workflow 1. Configure git and git-review a. $ git config --global user.name "Firstname Lastname" b. $ git config --global user.email "your_email@youremail.com" c. $ git config --global gitreview.username yourgerritusername d. $ git review -s 2. Clone the project a. $ git clone https://git.openstack.org/openstack/<projectname>.git 3. Make sure you have the latest upstream changes a. $ git remote update b. $ git checkout master c. $ git pull --ff-only origin master
  • 24. Step 4.1: Fixing the bug - Workflow 4. Create a topic branch a. $ git checkout -b TOPIC-BRANCH b. Name the branch as : bug/BUG-NUMBER 5. Make code/doc changes 6. Test your changes
  • 25. Step 5: Committing the Change 1. $ git commit -a
  • 26. Step 6: Sending the patch upstream for review 1. $ git review You will get the link where your patch is uploaded for review on review.openstack.org 2. Address the review comments and resend the patch if required.
  • 27. Thank You! Find us @: ● Akanksha Agrawal ○ IRC Handle: Akanksha08@freenode ○ Twitter Handle: @AkankshaHA ○ https://www.linkedin.com/in/Akanksha08 ● Sana Khan ○ IRC Handle: buttercup@freenode ○ Twitter Handle: @sanakhan_libre