====== Building, Hacking and Testing your patches ====== If you haven't done it already, please set up your account for Git/Gerrit and other tools. You can find help at [[developer:getting_started|Getting Started steps]]. Next, you will need some packages: //git// and //git-review// Then git clone the project (with your ssh key). For example, to propose a patch to **BGS** (git repo name **genesis**): git clone ssh://@gerrit.opnfv.org:29418/genesis Prepare for git review git review -s If you run into troubles, like //"We don't know where your gerrit is. Please manually create a remote named "gerrit" and try again."// you may need to manually add a remote git remote add gerrit ssh://@gerrit.opnfv.org:29418/.git ...do the work on files... git add . git commit --signoff --all Add a description to your commit based on below etiquette. * Provide a brief description of the change in the first line. * Insert a single blank line after the first line. * Provide a detailed description of the change in the following lines. Use breaking paragraphs where needed. * The first line should be limited to 50 characters and should not end with a period. * Subsequent lines should be wrapped at 72 characters. * Use present tense. * Add Jira issue no. (format JIRA: XYZ-12345) Send your commit for review. git review If you need to update a previous commit, you can use: git commit --amend git review ==== Jenkins ==== Jenkins is an extensible open source continuous integration server. See more details at [[wiki:jenkins|OPNFV Jenkins wiki]] or [[http://jenkins-ci.org/|here]]. ==== Tips & Tricks ==== * You can view all activity like this: https://gerrit.opnfv.org/gerrit/#/q/project:YOUR_REPO * You can View gitweb like this: https://gerrit.opnfv.org/gerrit/gitweb?p=YOUR_REPO.git;a=summary * You can View cgit here (no login required): https://git.opnfv.org/cgit/ * Information regarding [[octopus:artifact_repository|OPNFV Artifact Repository]] TL;DR - Don't use git for large binary files! * Using [[salt4nfv|SaltStack]] to install and Customize a complete OpenStack environment on RHEL/CentOS or Debian/Ubuntu * Scripts to configure [[wiki:devstack|DevStack multi node OpenStack]] environment for developers * A sample procedure for start hacking in Parser Project: [[https://wiki.opnfv.org/parser/howto|Parser HowTo Start]] ==== Coding Guidelines ==== Developer contribution/coding guidelines can be found here: [[developer:contribution_guidelines|OPNFV Coding Guidelines]] Secure coding guidesline can be found here: [[security:securecode|OPNFV Secure Coding Guidelines]]