Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo

1

Lets Fix a Bug ...

2

Suppose You saw a bug like this one in the Code or Docs




Line 55 and 57 are duplicate lines. Now you wish to fix it by
removing the duplicate line so what you need to do ?

3

STEP 1


(A). Sign the CLA, Every developer needs to sign the Individual Contributor License
agreement.

(B) Create a Launchpad Account( https://launchpad.net/) if you don't have one. Its a
must.

(C). Add yourself to the contributors wiki, On the Contributors page, include your
Launchpad ID, your CLA Echosign Transaction Number and your Corporate
Affiliation(if there is any). The information provided will be used by authorized
members to approve your request (see next step). Use your Launchpad ID as your
username for the wiki.

(D). Request membership in the openstack-cla group on Launchpad. Visit
https://launchpad.net/~openstack-cla/+join to join this group. Membership in this
group is required in order to submit code changes.

4

STEP 2: Setting Up the Environment


    We found the bug in the Tempest, So we need to get the source code of tempest
    project from the github repo but before we fix the bug we need to set up the
    environment.

●   Install git on your local machine. Ex: On ubuntu just type sudo apt-get install git-core

●   Configure Your user name and password:
    git config --global user.name "Firstname Lastname"
    git config --global user.email "your_email@youremail.com"

●   Install git-review tool
      On ubuntu: sudo apt-get install git-review
      On other unix like systems: pip install git-review

5

STEP 3: Getting the Code



●   To get a copy of any of the OpenStack projects, you can look at the Github
    OpenStack organization and browse, or you can directly clone the repository.
    Like here to fix our bug we need a clone of Tempest so we will clone the
    Tempest repository on our local machine like this:

    git clone git://github.com/openstack/tempest.git

6

STEP 4: Fix the Bug

●   Enter in to tempest directory and let git-review tool to configure your project. Make sure
    your gerrit/launchpad user name is the same as the current running user.
        $ cd tempest
        $ git review -s

●   Get the latest upstream changes:
       $ git remote update
       $ git checkout master
       $ git pull origin master

●   Create a TOPIC branch i.e. Create a branch with a name which tells something about
    your changes. Like here we will use duplicate_line_in_base.py

      $ git checkout -b duplicate_line_in_base.py

●   Open the base.py file in your favourite text editor, Remove the duplicate line and save
    it.

●   Now commit your change with a commit message. You can read more about commit
    messages on http://wiki.openstack.org/GitCommitMessages.

     $git commit -am “Removed the duplicate line from base.py. It will fix this bug #1234”

●   Finally send the code for review.
     $ git review

7

What happens after you submit a change

Any Openstack developer may propose or comment on a change (including
voting +1/0/-1 on it). Openstack projects have a policy requiring two positive
reviews from core reviewers.

When a review has two +2 reviews and one of the core team believes it is
ready to be merged, he or she should leave a +1 vote in the "Approved"
category. You may do so by clicking the "Review" button again, with or
without changing your code review vote and optionally leaving a comment.
When a +1 Approved review is received, Jenkins will run tests on the
change, and if they pass, it will be merged.

8

Few links to understand the process more thoroughly

Gerrit Workflow
http://wiki.openstack.org/GerritWorkflow

Gerrit, Jenkins, and GitHub
http://wiki.openstack.org/GerritJenkinsGithub

How To Contribute
http://wiki.openstack.org/HowToContribute

More Related Content

OpenStack Contribution Process

  • 1. Lets Fix a Bug ...
  • 2. Suppose You saw a bug like this one in the Code or Docs Line 55 and 57 are duplicate lines. Now you wish to fix it by removing the duplicate line so what you need to do ?
  • 3. STEP 1 (A). Sign the CLA, Every developer needs to sign the Individual Contributor License agreement. (B) Create a Launchpad Account( https://launchpad.net/) if you don't have one. Its a must. (C). Add yourself to the contributors wiki, On the Contributors page, include your Launchpad ID, your CLA Echosign Transaction Number and your Corporate Affiliation(if there is any). The information provided will be used by authorized members to approve your request (see next step). Use your Launchpad ID as your username for the wiki. (D). Request membership in the openstack-cla group on Launchpad. Visit https://launchpad.net/~openstack-cla/+join to join this group. Membership in this group is required in order to submit code changes.
  • 4. STEP 2: Setting Up the Environment We found the bug in the Tempest, So we need to get the source code of tempest project from the github repo but before we fix the bug we need to set up the environment. ● Install git on your local machine. Ex: On ubuntu just type sudo apt-get install git-core ● Configure Your user name and password: git config --global user.name "Firstname Lastname" git config --global user.email "your_email@youremail.com" ● Install git-review tool On ubuntu: sudo apt-get install git-review On other unix like systems: pip install git-review
  • 5. STEP 3: Getting the Code ● To get a copy of any of the OpenStack projects, you can look at the Github OpenStack organization and browse, or you can directly clone the repository. Like here to fix our bug we need a clone of Tempest so we will clone the Tempest repository on our local machine like this: git clone git://github.com/openstack/tempest.git
  • 6. STEP 4: Fix the Bug ● Enter in to tempest directory and let git-review tool to configure your project. Make sure your gerrit/launchpad user name is the same as the current running user. $ cd tempest $ git review -s ● Get the latest upstream changes: $ git remote update $ git checkout master $ git pull origin master ● Create a TOPIC branch i.e. Create a branch with a name which tells something about your changes. Like here we will use duplicate_line_in_base.py $ git checkout -b duplicate_line_in_base.py ● Open the base.py file in your favourite text editor, Remove the duplicate line and save it. ● Now commit your change with a commit message. You can read more about commit messages on http://wiki.openstack.org/GitCommitMessages. $git commit -am “Removed the duplicate line from base.py. It will fix this bug #1234” ● Finally send the code for review. $ git review
  • 7. What happens after you submit a change Any Openstack developer may propose or comment on a change (including voting +1/0/-1 on it). Openstack projects have a policy requiring two positive reviews from core reviewers. When a review has two +2 reviews and one of the core team believes it is ready to be merged, he or she should leave a +1 vote in the "Approved" category. You may do so by clicking the "Review" button again, with or without changing your code review vote and optionally leaving a comment. When a +1 Approved review is received, Jenkins will run tests on the change, and if they pass, it will be merged.
  • 8. Few links to understand the process more thoroughly Gerrit Workflow http://wiki.openstack.org/GerritWorkflow Gerrit, Jenkins, and GitHub http://wiki.openstack.org/GerritJenkinsGithub How To Contribute http://wiki.openstack.org/HowToContribute