Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Recommended guidelines for Development workflow
  • Create feature branches for new features using git flow
  • Push code to remote branches early and often (ideally at least once a day)
  • Have a clear and concise commit message
  • Write unit tests to cover the functionality both positive and negative cases
  • Build the code locally using maven without -DskipTests and check for any errors
  • Check the builds on bamboo for your feature branch
    • Make sure you fix errors early 
  • Ensure there are no checkstyle errors
    • mvn package -DskipTests will run checkstyle
  • Create pull request to merge the code to develop branch
  • Pull request description should contain the reason why the PR is created in a short summary
  • Keep the pull requests small and focused 
  • You can keep the same feature branch and keep sending pull requests as and when the feature is complete
    • Example: If you are working on implementing a metrics framework, the following steps would be logical points to send code reviews:
      • Java API  (without implementation)
      • REST API (without implementation)
      • Metrics processor implementation 
      • Java API implementation review
      • REST API implementation review
      • Kafka integration review
  • Fix all code review comments
  • Merge code after there is an approval in a pull request

 

Sample development workflow
$ git flow feature start <feature-name>
 
$ # Make your changes
 
$ git add <files>
 
$ git commit -m "Clear and concise commit messages"
 
$ git checkout develop
 
$ git pull 
 
$ git checkout feature/<branch>
 
$ git rebase develop 
 
$ git flow feature publish <feature-name>
 
$ git flow feature close <feature-name> 

 

Checklist before sending pull requests
  • Unit test builds for feature branches are successful in bamboo
  • No checkstyle errors in feature branch
  • Adequate unit tests are written for the feature

 

Development guidelines for continuous delivery

<add page>

  • No labels